用Django+MySQL+Celery+RabbitMQ實現一個分布式測試系統

來源:互聯網
上載者:User

標籤:http   io   os   使用   ar   資料   div   2014   art   

最近做了一個分布式的測試系統,目前實現了主要的架構和MVP(minimum viable product)版本的準系統。在架構設計、資料庫設計、具體實現等方面,(算是目前我做的架構最複雜的測試系統)還是花了2-3周的時間,終於MVP 版本算是出來了(今後根據需求和精力再考慮豐富更多的功能)。

使用Python開發,介面部分目前還沒做;架構上使用到的東西,主要使用了:Django+DjangoRestFramework+MySQL+Celery+RabbitMQ。
如:

architecture diagram of test execution API

(此圖在:http://www.processon.com/view/link/53a6e2440cf266a8fabce8b0)
應該來說,該系統的可擴充性還是比較好的,任務都是非同步處理,而且可以實現分布式的worker來同時處理RabbitMQ中的訊息。今後,如果調用量到了很大的數量級,還可以好好最佳化和水平擴充更多的worker。

在搭建該系統的過程中,由於以前都沒在項目中實際用到這些技術,所以還是走了各種彎路,踩過一些坑。不細說了,參考資料中的網頁連結或許值得一讀。

參考資料:

http://mathematism.com/2010/02/16/message-queues-django-and-celery-quick-start/

http://maemual.net/?p=543

http://ashin.sinaapp.com/article/137/

用Django+MySQL+Celery+RabbitMQ實現一個分布式測試系統

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.