valeriansaliou/sonic

Make all commands ASYNC (dispatch to worker thread pool)

Open

#43 建立於 2019年3月15日

在 GitHub 查看
 (7 留言) (0 反應) (0 負責人)Rust (21,176 star) (613 fork)batch import
enhancementhelp wanted

描述

Currently, commands are processed synchronously in the channel thread. This limits parallelization on setups that open very few Sonic Channel instances, but where Sonic runs on a lot of CPUs. Currently 1 channel = 1 thread; but we'd like to make the channel protocol fully asynchronous and thus Sonic will be able to dispatch commands for work to a thread pool.

We just need to figure out how we can rework the protocol so that a RES for a REQ can be caught later on (eg. with a marker ID as we already do for search queries with PENDING?).

貢獻者指南