自己有一个 web 站点,有从 api 获取数据。API 结构大概有这两种类型,一种是需要传递参数构造 URL, 一种是不需要参数。
http://api.example.com/api/resourceA/${pageIndex}
http://api.example.com/api/resourceLatest/
大约有 6 个需要获取数据的 API 接口。
每个 API 接口我都定义了一个 Runnable 与和一个 Threadpool 之对应.
Map<Class<? extends Runnable>, ExecutorService> threadsMap = new HashMap<>();
然后提交 Runnable 到 threadpool:
1 )带参数的 Runnable 需要从数据库任务表(有任务状态标注)获取参数来构造。
2 )不带参数的,直接提交排队即可。
之前我会在 Runnable 里面去判断 threadpool queue 的数量,然后再提交,但是自己觉得这种方式很糟糕,所以想请教下大家这种情况下,大家有什么好的设计可以让程序更优雅点?
http://api.example.com/api/resourceA/${pageIndex}
http://api.example.com/api/resourceLatest/
大约有 6 个需要获取数据的 API 接口。
每个 API 接口我都定义了一个 Runnable 与和一个 Threadpool 之对应.
Map<Class<? extends Runnable>, ExecutorService> threadsMap = new HashMap<>();
然后提交 Runnable 到 threadpool:
1 )带参数的 Runnable 需要从数据库任务表(有任务状态标注)获取参数来构造。
2 )不带参数的,直接提交排队即可。
之前我会在 Runnable 里面去判断 threadpool queue 的数量,然后再提交,但是自己觉得这种方式很糟糕,所以想请教下大家这种情况下,大家有什么好的设计可以让程序更优雅点?