分布式系统中的调度器与集群应用
在分布式系统开发中,合理利用调度器和集群技术对于提升系统性能和可扩展性至关重要。下面将详细介绍调度器的使用以及集群的相关概念和应用。
调度器的使用
文章解析调度器
文章解析工作会有专门的调度器,该调度器线程数量较少。使用调度器进行隔离,是为了防止提交大型任务时影响其他工作。当提交大任务时,会暂停队列中的其他工作,因此隔离工作可以应对这种特殊情况。此外,还可以使用 BalancingPool 或 BalancingDispatcher 在文章解析参与者池之间分配工作。 BalancingPool 不仅能实现隔离,其工作窃取机制还能提高资源利用率。
默认调度器
对于默认调度器,有两种处理方法:
- 分离所有工作流,仅让 Akka 使用默认调度器。
- 确保默认调度器只处理异步工作,并将高风险工作移出。
无论采用哪种方法,都不应在默认调度器中进行阻塞操作,并且要谨慎处理其中的工作,以防止资源耗尽。创建和使用默认调度器/线程池无需额外操作。若需要配置默认调度器,可在 application.conf 文件中定义,示例如下:
akka {
actor {
default-dispatcher {
# Min number of threads to cap factor-based parallelism number to
parallelism-m
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



