我希望在使用Erlang/Elixir的金融市場中創建一個平臺即服務。我將在金融市場提供AWS lambda風格的功能,但我不打算通過web/rest/http訪問,我打算將自己的基於ARM的硬件終端分發給客戶端(基於Nvidia Jetson TX2或類似的硬體) 。他們將從這些終端訪問功能。我想讓終端成爲系統中的完整節點。因此,他們將使用演員模型向我的中央服務器發送消息,並且實際上,如果終端用戶決定將自己的功能在線,則終端之間可能會相互傳遞消息。Erlang系統中節點的最大(實際)數量是多少
這是一個可行的模型?我可以運行這樣的1000個終端嗎? 100 000?我可能會遇到什麼樣的限制?如果我們的軟實時金融市場流動數據流動,Erlang的消息路由是否可擴展到足以想象這樣的網絡仍然具有高性能? (大部分從中央服務器到終端,但是很大比例可能直接從終端到終端)。我們可以建立一個系統,其中可以使用高達10萬個或更多不同的「訂閱」數據通道進程,其中許多進程每秒都會進行輸入和生成輸出。
基本上我想要一個類似上面的Erlang系統的可伸縮性功能的規範指南。理想情況下,我也想要一些這樣的系統安全影響的指南,即。全球路由表或系統的任何其他部分是否可以被惡意終端用戶破解,或者邊緣節點是否可以從Erlang網絡其餘部分的敏感部分「封鎖」?
請注意,我想大量使用端口/ NIF的高計算過程。
好吧我假設你的意思是每個節點都有n-1個連接,意思是整個系統的n *(n-1)?看起來這個事實使得我提出的架構不可行,因爲它本質上是一個網格。實際上沒有任何路由?是的,我會問Erlang的郵件列表。 –
是的,n-1是正確的。我搜索了一些基準,在我最後的編輯中,我將它們添加到了帖子中。 – Pouriya
你爲什麼不使用外部端口?另外,@普里亞 - 請不要通過提供外部參考來回答。 – cdegroot