在twemproxy的發(fā)送和接收流程剖析中,我們已經完全弄清楚twemproxy如何將客戶端以及服務端發(fā)來的包切分成msg,獲得一個獨立的msg后twemproxy應該如何處理?這是本文這次需要重點介紹的內容。

twemproxy的主干流程

萬碼學堂,電腦培訓,計算機培訓,Java培訓,JavaEE開發(fā)培訓,青島軟件培訓,軟件工程師培訓

 

圖1 twemproxy的主干流程

如圖1所示,twemproxy主要通過3個隊列進行模塊間的數據交互:客戶端連接conn的發(fā)送隊列conn->omsg_q,服務端連接s_conn的輸入隊列s_conn->imsg_q,服務端連接s_conn的發(fā)送隊列s_conn->omsg_q以及conn->omsg_q里的msg的對應回復peer。

  • 客戶層接收模塊將所有需要回復的msg處理后分別寫入到客戶端conn連接的發(fā)送隊列conn->omsg_q以及服務端連接s_conn的輸入隊列s_conn->imsg_q。

  • 服務層發(fā)送模塊從服務端連接s_c

    網友評論