Bet365從Java切換到Erlang解決可靠性與擴充套件性

banq發表於2015-03-11
線上賭博公司bet365從Java更換到Erlang,降低了其核心投注平臺的軟體複雜性,擴充套件了系統應付四倍的訪問量增長。

How Bet365 solved reliability and scalability issu

Erlang是由愛立信建立用於電話交換的語言,它是一個相對簡單的程式語言,專為大型 高可用性的應用程式設計,WhatsApp用來處理每天數十億的訊息。

Bet365的研發經理Dan Macklin認為:該語言非常適合降低需要低延遲系統的複雜性,現在已經用於生產環境,驅動InPlay投注服務,近實時地推動了體育賽事直播賠率給百萬計的客戶。

隨著規模的發展,軟體越來越複雜,複雜性意味著需要更長的時間才能釋放新版本,而軟體變得更加難以測試,難於創新演進。

Erlang有內建的可擴充套件性功能,它凝聚在一個非常小的語言中,這樣允許我們透過很少的程式碼擴充套件我們的系統。這意味著可以讓我們的軟體編制得更快,測試得更快,提高了我們開發人員的生產力。

Macklin領導一個小團隊是在Bet365三年前建立的,這個團隊的目標是實驗新技術,讓公司在競爭激烈的線上博彩市場獲得優勢。

他說:“我們的主要職責是,試圖研究不同的解決方案,但最終使用一個不同以往的技術來簡化我們正在做的事情”。

這團隊開始研究NoSQL和可替代性的程式語言是否能夠解決日益增長的規模,他們需要開發依賴多核處理器的現代軟體以提高效能,同時意味著開發者被迫花費更多的時間來維持現有的系統以應付更大的訪問負載,已經沒有精力和時間建立新的業務服務。

"我們遇到的最大問題是規模和創新的兩難境地,Bet365希望我們開發團隊建立一個能讓客戶激動的真正前沿產品,但是,因為業務的不斷著呢故障,我們陷入了大部分開發時間花在重構現有系統以應付即將到來的負載。“ Macklin如是說。

”擴充套件問題在多核世界變得越來越複雜,當你花費時間去創新時,你所擔心的是,那種創新可能還是不能應付我們需要的規模水平“。


相關文章