我有一個web服務,它根據地理要素創建圖像並使用django框架將其返回給地圖。這是一個平鋪地圖服務(TMS)eventlet - 基於django的web服務上的綠色線程
Web sercive通過url調用,例如:http://host.com/TMS/map_id/x/y/z.png其中map_id,x,y和z是用於生成圖像的變量。
該url調用一個python函數,它返回地圖客戶端(OpenLayers)中的圖像。當在地圖移動用戶調用一串請求關於此web服務等http://host.com/tiling/1/0/1/1.png,http://host.com/tiling/1/1/0/1.png等
我想用eventlet到線程本web服務的功能,以便通過產生在並行的圖像,而不是一個一次。
有人可以通過提供有關如何偵聽特定URL(TMS URL)以及如何在函數上啓動線程的提示來幫助我做到這一點。非常感謝。 Eventlet郵件列表上同一線程的
您是如何部署Web服務的?通常,瀏覽器一次請求多個切片。如果你有多個工作者,瓷磚應該已經並行創建。 – sk1p
這個web服務仍然在本地的django開發服務器上運行,但我正在爲WebFaction的未來部署工作。我讀過,我必須將我的服務器更改爲eventlet.wsgi,以使其並行工作。有沒有辦法來驗證瓷磚是否實際上並行創建? –
任何嚴重的部署方法都允許並行請求,從gunicorn,mod_wsgi,uwsgi到fastcgi。由於Django 1.4,即使是開發服務器也是線程化的。我不知道WebFaction,但如果您有shell訪問權限,可以通過運行'top'或'htop'來驗證這一點,並在服務器發出測試請求時檢查可用核心的利用率。 – sk1p