# 线程池相关 (A)

+ `Grafana` 监控 TiKV-Details --> Thread CPU --> gRPC poll CPU

![center](./student-guide/diagram/09-TiKV-Thread-CPU-01-01.png)
-------------------------------------------------------------
- 线程池相关
  - Thread CPU - gRPC poll CPU：负责处理所有网络请求，它会把不同任务类型的请求转发给不同的线程池，不均衡说明可能有热点问题。

  - Thread CPU - Unified read pool CPU：由 Coprocessor 线程池与 Storage Read Pool 合并而来，所有的读取请求包括 kv get、kv batch get、raw kv get、coprocessor 等都会在这个线程池中执行。

  - Thread CPU - Scheduler worker CPU：负责检测写事务冲突，把事务的两阶段提交、悲观锁上锁、事务回滚等请求转化为 key-value 对数组，然后交给 Raftstore 线程进行 Raft 日志复制。

  - Thread CPU - Raft store CPU：负责处理所有的 Raft 消息以及添加新日志的提议 (Propose)、将日志写入到磁盘，当日志在多数副本中达成一致后，它就会把该日志发送给 Apply 线程。

  - Thread CPU - Async apply CPU：当收到从 Raftstore 线程池发来的已提交日志后，负责将其解析为 key-value 请求，然后写入 RocksDB 并且调用回调函数通知 gRPC 线程池中的写请求完成，返回结果给客户端。
