我正在構建一個Web應用程序,該應用程序具有我想通過長輪詢機制進行更新的實時饋送(類似於Facebook的新聞源)。我明白,在Python中,我的選擇很多都是使用Stackless(從他們的Comet wsgi示例構建)或Cometd + Twisted。不幸的是,有關這些選項的文檔非常少,我無法在網上找到有關Python上彗星生產規模用戶的良好信息。Python Comet服務器
有沒有人在生產系統中成功實現Python上的彗星?你是怎麼做到的?我在哪裏可以找到實現自己的資源?
我正在構建一個Web應用程序,該應用程序具有我想通過長輪詢機制進行更新的實時饋送(類似於Facebook的新聞源)。我明白,在Python中,我的選擇很多都是使用Stackless(從他們的Comet wsgi示例構建)或Cometd + Twisted。不幸的是,有關這些選項的文檔非常少,我無法在網上找到有關Python上彗星生產規模用戶的良好信息。Python Comet服務器
有沒有人在生產系統中成功實現Python上的彗星?你是怎麼做到的?我在哪裏可以找到實現自己的資源?
沿着我建議你使用StreamHub Comet Server - 它使用了大量的人 - 我個人使用它與我運行的幾個Django站點。您將需要編寫一點Java處理流 - 我使用Jython來完成此操作。前端代碼是一些真正簡單的Javascript一拉:
StreamHub hub = new StreamHub();
hub.connect("http://myserver.com/");
hub.subscribe("newsfeed", function(sTopic, oData) { alert("new news item: " + oData.Title); });
的文檔是相當不錯的 - 我有類似的問題,因爲你試圖開始使用的cometd等人的稀疏文檔。一開始我讀到Getting Started With Comet and StreamHub,下載並看到一些例子工作,並參考API文檔,如果你需要:
我還沒有做到這一點,但this guy已經寫了一篇關於它的好文章,用Django的例子和指針(我沒有選中)指向其他框架。
這裏是一個全將Django,Orbited和Twisted結合起來,創建一個實時(Comet)應用程序:http://github.com/clemesha/hotdot使用Python。
軌道式和Redis解決方案很好,但是當您擁有Google發佈的PubSubHubbub之類的東西時不再相關。這使得成爲給定Feed的發佈者或訂閱者變得非常容易。 http://code.google.com/p/pubsubhubbub/
Here's an example that does long-polling with gevent and Django。
它使用greenlet - Stackless的堆棧切換功能打包爲CPython擴展。
軌道的缺點是文檔太少。 – 2011-10-11 04:39:35
軌道和鏈接似乎已經死了?它現在導致一個關於健康生活方式的故事和其他類似的博客.. – twity1337 2018-02-10 13:40:59