我期待着爲我的Web應用程序使用Websocket開發一個實時API。爲此,我使用RabbitMQ作爲代理,我的後端基於python(gevent + websocket),Pika/Puka作爲rabbitmq客戶端。RabbitMQ與Websocket和Gevent
我在這裏面臨的問題是,我們如何使用websocket連接rabbitMQ。在初始websocket連接建立之後,socket對象等待來自客戶端的新消息,並且在rabbitMQ的情況下,我們需要爲它設置一個消費者,因此它會在收到消息時處理消息。我們可以採用這種方式,
- 客戶端通過全雙工websocket與服務器建立連接。
- 所有的客戶端在首次websocket握手後都應該充當RabbitMQ的使用者,所以當客戶端收到消息時它們都會得到更新。
- 當新消息到達websocket時,該客戶端會將其發送到RabbitMQ,因此此時此客戶端充當發佈者。
問題是Websocket等待一條新消息,並且RabbitMQ消費者在其信道上等待新消息,我未能鏈接這兩種情況。
我不知道這是否是一個錯誤的方法......
我無法找到一個方法來實現這個scenario.If我會走錯路或有任何替代方法?,請幫我解決這個問題。
謝謝
Haridas N.
您是否爲每個用戶創建新的rabbitmq連接? – Mike