我一直在研究一个问题,其中具有相关 dao 的主工作流表(被多个线程击中很多)正在努力以公平的方式跟上请求 - 几乎就像资源匮乏一样。
这些线程都负责从各种外部系统中提取数据(其中大约 5 个)。
这里的问题是,当一个线程一次获得如此多的信息时 - 它会向表发送请求,从而使其他线程竞争访问/资源。因此,它们通常会超时并需要重新启动。
是否有任何机制或策略来管理这种事情。我正在考虑(这是我最初的第一个想法)创建某种形式的阻塞列表,所有线程也可以添加它(可能在先到先得的基础上),然后以这种方式过滤 SimpleJdbcOperations。
我愿意接受任何解决此类问题的理论,这些理论被认为是此类问题的标准。
谢谢