erlang/otp是分佈式系統的一種解決方案,由erlang啓動的節點組成集羣,而後節點內部保持通信肯定節點的存活信息。在集羣中,每一個節點都跟其餘全部節點保持通信,在數量較小的時候,erlang網絡通信的流量還能夠忍受;但節點數量級一爆增,這個內部網絡通信的流量就非常問題。html
對於這個問題,erlang團隊也提出了一些解決方案。例如隱藏節點,管理腳本通常都是使用這個特性;內部通信的端口進行流量控制,riak_core裏面就有使用到這個。但erlang的網絡一旦是聯通的,那就是整個集羣都是可見的,這也帶來了一些安全問題。例如不能使用root運行erlang程序,不然則會有被亂使用root權限的問題。git
SD-erlang則帶來了新的解決方案,它的思路就是,分佈式系統不必定要全局聯通,只要局部聯通就能夠了。項目獲得了歐盟的支持,基於erlang 17.4獲得了發展,但一直都沒有合併到otp的主幹上,並且一度中止開發,我還覺得這個已經失去了活力。它的官網是:github
http://www.release-project.eu/ https://github.com/release-project/otp
但這幾天,有人在erlang郵件裏面問道這個項目是否繼續開發:安全
http://erlang.org/pipermail/erlang-questions/2016-September/090065.html
獲得迴應,這個項目籌集到一些資金來繼續開發,進行良好測試、分離已有的代碼來整理代碼,以適應工業的要求但不肯定是否合併到otp的主幹上。網絡
另一個好消息就是erlang社區開始討論otp包中的軟件是否有其餘的優秀的替代品:分佈式
https://gist.github.com/tsloughter/4d18c474f009dd3a3eeb094f8933e90b
如今有好的提議有:測試
使用cowboy替換httpd 集成gproc erlang默認的rpc不能很好規模擴展
你們能夠去看看,這些對erlang開發都是頗有幫助的。code