2010-01-11 51 views
5

這個問題涉及到一個較老的問題:MySQL tracking system。簡而言之:我必須實現一個使用Python進行高負載的跟蹤系統。對於數據庫部分,我已經解決了mongoDB(這聽起來像是這個工作的正確工具)。開發語言將是Python。在Python中跟蹤系統和實時統計分析

我正在考慮在nginx後面使用CherryPy應用程序的多個實例。這背後的原因是我不想自己處理所有的wsgi部分,但另一方面,我不需要一個完整的web框架,因爲應用程序將很簡單,並且不需要ORM。

我的問題是:

  • 我應該使用內置的CherryPy服務器或我應該使用Apache與modwsgi(或其他服務器完全)?

  • 這聽起來像一個合理的方法(nginx,mongoDB)?如果不是,你會推薦什麼?

在此先感謝您。

+0

對於一個好問題+1。 MongDB看起來對於高負載來說是一個很好的數據庫,但是您是否也考慮過使用GIS支持的數據庫? – Mawg 2010-06-05 08:23:08

回答

1

聽起來像MongoDB的將是一個非常適合這種 - 批量離線快速更新了先進的運營商,和M/R處理。我認爲Nginx背後的CherryPy也應該運行得很好。如果你使用mod_wsgi路由,請注意this issue

+0

感謝您的提示:)。 – Alex 2010-01-11 20:26:38

+0

我認爲Mongo文檔錯誤地描述了使用mod_wsgi的問題。它說'當啓用啓用C擴展的PyMongo時,由於mod_wsgi使用多個子解釋器處理模塊重新加載的方式,編碼時可能會看到奇怪的失敗。'您看到的任何問題都不是因爲mod_wsgi如何處理模塊重新加載,而是因爲Mongo C擴展未被正確編寫,以便同時在多個子解釋器中工作。這將發生在任何多解釋器系統上,而不僅僅是mod_wsgi。 Mongo可以修復C擴展。 – 2010-01-11 21:58:46

+0

格雷厄姆 - 文檔是開放的,所以您可以隨意分叉並提供您認爲應該在其中的更改。你說得對,我們可以改變C擴展來處理這種情況,儘管我擔心任何「修復」對性能的影響。如果您有興趣進一步討論,請轉至http://jira.mongodb.org - 感謝您的意見! – mdirolf 2010-01-21 18:14:29

3

你檢查過石墨嗎?這聽起來像是你需要的東西(看你的另一個問題),它是爲Orbitz團隊的應用和服務器監控而設計的。這種功能非常強大,易於使用。

+0

它看起來不錯。我會仔細研究一下(我會請其他團隊成員來查看它)。希望這可以完成這項工作。謝謝。 – Alex 2010-01-11 19:35:40