How we've remade sys threads in Manticore Search
最近我们重新设计了系统线程。由于我们是从 Sphinx 分支出来的,早期的 searchd 所有系统任务都是以经常唤醒的方式实现的。每个服务都在一个专用线程中运行,每隔 50 毫秒就会唤醒一次,检查是否有任务需要执行。这意味着即使是一个空闲的守护进程也会每秒唤醒 200 次“只是为了检查”任务。如果有 6 个这样的任务,每秒就会唤醒 1200 次,这在 Amazon AWS 上的客户特别明显,因为 AWS 会计算 CPU 使用率。这些内部任务包括:
普通索引轮换 向代理发送心 …


