แแแแแกแ
แแแแแแแแ, แแแคแฎแฃแแแก แจแฃแ แ แแชแฎแแแแจแ แแแแแแแ แกแขแแขแแแแแก แแแแแ แแ แแ แกแแ แแแก แแแแแจแแแแแก แ แแแแก แกแแกแขแแแแแแก แแแแแแแแ: "VTrade Experiment" - แกแแแแญแ แ แกแแกแขแแแแแแกแแแแก แฉแแ แฉแแก แแแฌแแ แแก แแชแแแแแแ. แกแแ แแ แจแแแกแฌแแแแแก แแแ แแแก, แแฃแฅแชแแแแแกแ แแ แแแฆแแแแแก แแจแแแแแแแแแก แแแแ แแแกแ แแ แแ แแฅแขแแแแก. แกแขแแขแแแก แแแกแแกแ แฃแแก แแแแแขแแแแแแ แฎแแ แแแกแชแแ แแ แแแแแแก, แ แแแแแแแช แงแแแแแแ แแแขแแ แแแแแขแแ แแกแแแ.
แแก แแ แแก แกแแ แแแก แแแแ แกแขแแขแแ Erlang/Elixir-แจแ แแแแแฌแแแแแฃแแ แ แแแฅแขแแฃแแ แแแแแแแชแแแแแก แจแแกแแฎแแ. IN
แแฆแแก แฉแแแ แแแแแงแแแแแ แแแแแแแก แแแแแก แแ แแแแแแแ แแ แแแฅแขแแแแก แแแแแแแแ แแแแก แกแแแแแฎแแแก.
แกแแ แแแกแแแแก แแ แแแแแแแแ
แ แแแแฃแ แชแฎแแแ แแแแจแ, แกแแ แแแกแแก แจแแแฃแจแแแแแแกแแก, แฎแจแแ แแ แแแฌแแแ แแ แ แแแแขแ แแแแ แจแ แ แแแแแแแแ แฃแ แแแแ แแฅแแแแแแแก แแแแฃแจแแก แแแแ แแแแแแแ. แแแแแแแแแ, แแแแฎแแแ แแแแแแ แกแแ แแแกแ, แ แแแแแแช แฌแงแแแขแก แแ แแแฅแขแแก แแแแฎแแแ แแแแแแ แแ แแคแแแแแแก แแแ แแแแก แแ แแแแแแแก, แฃแแแ แฃแแแกแฃแฎแแก req-resp-แแก แแแแฎแแแแแแก แแ แแแแฎแกแแแแก แแ แแคแแแแก แแแแแฎแแแแแแ pub-sub-แแก แกแแจแฃแแแแแแ. แแก แกแแฅแแ แกแแแแแแ แแแ แขแแแแ: แจแแขแงแแแแแแแแแแก แแแฆแแ แแ แแก แแ แแ แแแแขแ แแแแ แ, แ แแแแแแช แแฎแแ แชแแแแแแก แกแแ แแแกแแก แแแแแแแก แแ แแฅแแแงแแแแก แแแแแฎแแแแแแก.
แกแแขแฃแแชแแ แฃแคแ แ แ แแฃแแแแแ, แ แแแแกแแช แฉแแแ แแแญแแ แแแแ แจแแชแแแแแก แขแแแแ แแแขแฃแแ แแแแแฌแแแแแฃแแ แกแแ แแแกแแก แแแแฎแแ แชแแแแแแ. แฌแแ แแแแแแแแแแ, แ แแ แแแแฎแแแ แแแแแก แแแแฎแแแแแแ แจแแแชแแแแ:
- แแฎแแ แกแแ แแแกแแ แฃแแแ แแแแแฃแจแแแแก แแแแฎแแแแแแ 5 แแแแกแขแแ แฃแ แแแแแซแแ,
- แจแแซแแแก แคแแแฃแ แ แแแแฃแจแแแแแแก แแแแชแแแแแแก แจแแกแ แฃแแแแ,
- แแ แแกแแแ แจแแฃแซแแแ แแแแแแแฃแ แแ แแแ แแแก แแแแแฌแแ แแแแก แกแแแแ แแ แแคแแแแก แแแแแฎแแแแแกแแแแก.
แแแแแแขแแ แ: แฉแแแ แแ แแแแแแฎแแแแแ แแแแแชแแแแ แแแแแแแแแแ แฃแแ แจแแแแฎแแแกแ แแ แ แแแแแแแชแแแก แกแแแแแฎแก. แแแแฃแจแแแ, แ แแ แแก แกแแแแแฎแแแ แแแ แ แแแแแแ แแแฃแแแ แแ แกแแกแขแแแแก แฃแแแ แแฅแแก แกแแแแแแ แแ แแแกแจแขแแแฃแ แ แจแแแแฎแแแก แคแแแ แแ แแแแแฃแจแแแแแแแแก แแฅแแ แแแกแแแ แฃแ แแแแ แแฅแแแแแแแก แแแฅแแแแแแแแ.
แแแแฎแแแ แแแแแก แกแแ แแแกแแก แแคแแชแแแแฃแ แ แแฆแฌแแ แ แฃแคแ แ แแแ แแฃแแแ. แแ แแแ แแแแกแขแแก แแแแแกแแแ แแกแแ, แชแแแแแแแแแ แแแแแแแแฃแ แแ แจแแขแงแแแแแแแแแแก แแแแแงแแแแแแก แแแแ. แแแ แแแแ แแแแฎแแแแแก แแแกแแแแแงแแคแแแแแแแ, แฉแแแ แแแญแแ แแแแ แแแแแแแแกแแแแก แแแแคแแแฃแ แแชแแ req-resp แแแชแแแแก แฌแแ แขแแแจแ.
แคแแแฃแ แ แแแแชแแแแแแก แแแแฃแจแแแแแแก แแแแฎแแแแ แฎแจแแ แแ แฉแแแแแ. แแแแฎแแแ แแแแแแจแ แแก แจแแแซแแแแ แแงแแก แแแแฎแแแ แแแแแก แแแแฃแแแแขแแแแก แจแแแแฌแแแแ, แแแแแแฌแแ แแแ แแฃแแขแแแแแแแก แแแแฃแจแแแแแ แแ แแแแแชแแแแแแก แกแแแฅแ แแแแแแชแแ แกแแชแแแแฃแ แแแแแแกแแแ. แฅแกแแแแแ. แแก แแแแชแแแแแ แฃแแแ แแงแแก แ แแแแ แฆแแช แแแแแฌแแแแแฃแแ แแแแกแขแแ แจแ แแ แจแแกแ แฃแแแแแก แแ แแแ แแกแแก แแแแแขแแ แแแแ. แแฅแแแแ แแแแแแแแแแ แ, แฉแแแ แแแแฅแแก แแแแแฌแงแแแขแแก แแ แ แแแ แแแแขแ: แแ แแแแแแแงแแแแ แแแแแแแแแก แแแแแฌแแแแแแก แจแแแแแแ แฌแแแ แกแขแแขแแแแแ, แแ, แแฃ แแก แแ แจแแแกแแแแแแแ, แแแแฌแแ แแ แแแแแแแแแก แแแ แกแแแแแฃแ แ แแแแ แแแ, แ แแแแแแช แแแ แแแแก แแ แแชแแกแแ แแแแก แแฃแแก แแกแ, แ แแแแ แช แฉแแแ แแแญแแ แแแแ.
แแฃแแฅแขแ 3 แแแแแฎแแแก pub-sub แจแแแแแแแก แแแคแแ แแแแแแก. แแ แแแแกแแฎแแ แชแแแแแแแแ, แแแแ-แกแฃแ แแแชแแแแก แแฃแแฅแขแแก แจแแฅแแแแก แจแแแแแ, แแแแแขแแแแ แฃแแแ แแแแฃแจแแแ แแ แแฃแแฅแขแแก แแแแขแ แแแแ แ แฉแแแแก แกแแ แแแกแจแ. แแแ แแแแ, แแแแฅแแก แฉแแแ แแแแแแแขแแแ แแแแแฌแแ แแแแก แแแแฃแจแแแแแแกแ แแ แแแแแฌแแ แแก แแแฃแฅแแแแแก แแแแแแแก แจแแขแงแแแแแแแแแแก แคแแแแแแ แแแแฎแแแ แแแแแแแก แแแแฎแแ แชแแแแแแแจแ.
แจแแแแแแ, แแ แแแแแแแก แแแจแแแ แแฉแแแแ, แ แแ แแแแฎแแแแแแแก แแแกแแแแแงแแคแแแแแแแ, แฉแแแ แแแญแแ แแแแ แกแแ แแแกแแก 5 แแแกแขแแแชแแแก แแแจแแแแ แกแฎแแแแแกแฎแแ แแแแแซแแ แแ แจแแแฅแแแแ แแแแแขแแแแแ แแ แแแฃแแ - pub-sub controller, แ แแแแแแช แแแกแฃแฎแแกแแแแแแแแ แแแแแฌแแ แแแ.
5 แแแแแฃแจแแแแแแแก แแแกแแจแแแแแ, แแฅแแแ แแ แแญแแ แแแแแ แกแแ แแแกแแก แแแแแก แจแแชแแแ. แแ แแแแแ แแ แแแแแขแแแแแ แแแฅแแแแแแ แแแชแแแแก แแฃแแฅแขแจแ แแแแแแแแกแแแแก แฌแแกแแแแก แแแฌแแกแแแแ, แ แแแแช แชแแขแ แแแแแแแแแแแ แแแกแแฃแแ แแแ.
แแกแแแ แแ แแก แแแแแขแแแแแ แกแแ แแฃแแ: pub-sub controller แแ custom task scheduler แฃแแแ แแฃแจแแแแแแก แแ แ แแแแแแแแแ แแ. แแกแแ แแ แแกแแ, แจแแขแงแแแแแแแแแแก แกแแ แแแกแแ, แ แแแแ แช แคแฃแแแแแแแขแฃแ แแ, แฃแแแ แฃแแ แฃแแแแแงแแก แแแแแ แแก แจแแ แฉแแแแก แแแฅแแแแแแ.
แแแแแ แแก แจแแ แฉแแแ
แแแแแฌแแแแแฃแ แกแแกแขแแแแแจแ แแแแแ แแก แแ แฉแแแ แแ แแก แแ แแ แแ แแชแแกแแก แแแแแจแแแแก แแ แแชแแแฃแ แ, แ แแแแแแช แแแกแฃแฎแแกแแแแแแแแ แแแ แแแแฃแแ แแแขแแแ แแแแก แแแแแฌแแแแแฃแแ แแแแฃแจแแแแแแก แแแแแแแแแแ.
แกแแกแขแแแแแจแ, แ แแแแแแแช แแ แแ แแแ แแแแ แแแแแแ แชแแแขแ แแแแแแชแแแกแแแ, แแแแแแงแแแแแ แฃแแแแแ แกแแแฃแ แ แแ แแแแกแแแกแฃแกแแ แแแคแฃแซแแแแฃแแ แแแแแ แแแแแแ, แ แแแแ แแชแแ แแแฅแกแแกแ แแ แ แแคแขแ.
แแแแแแแแ แจแแขแงแแแแแแแแแ แแ แแก แแ แแแแ แ แแ แชแแแขแ แแแฃแ แ แแแแแแแขแ, แแแ แแชแแก แงแแแแ แกแแ แแแกแแก แแแแขแ แแแแ แแก - แแแแแแแแขแแก แแแแแ แแแแก แจแแกแแฎแแ. แแแกแแฏแก แจแแฃแซแแแ แแแแแจแแแก แแแแแ แ แฎแแแก แแแชแแแแก แแแ แแจแ.
แแแชแแแแก แแฃแแฅแขแแแ แแแฌแงแแแแกแ แแ แแแแแแจแแ แแแแก แจแแแแแ แงแแแแ แกแแ แแแกแ แแฆแแแก แกแแกแขแแแฃแ แจแแขแงแแแแแแแแก #'$leader'{exchange = ?EXCHANGE, pid = LeaderPid, servers = Servers}
. แแฃ LeaderPid
แแแแฎแแแแ pid
แแแแแแแแ แ แแ แแชแแกแแ, แแแ แแแแจแแแแ แแแแแ แแ แแ แกแแแจแ Servers
แแแแชแแแก แงแแแแ แแแแแซแก แแ แแแ แแแ แแแแขแ แแแก.
แแ แแแแแแขแจแ, แ แแแแกแแช แแแแแฉแแแแแ แแฎแแแ แแ แกแแแฃแจแแ แแแแกแขแแ แฃแแ แแแแแซแ แแแแแจแฃแแแ, แงแแแแ แกแแ แแแกแแก แแแแขแ แแแแ แ แแฆแแแก #'$slave_up'{exchange = ?EXCHANGE, pid = SlavePid, options = SlaveOpts}
ะธ #'$slave_down'{exchange = ?EXCHANGE, pid = SlavePid, options = SlaveOpts}
แจแแกแแแแแแกแแ.
แแแแแแ แแ, แงแแแแ แแแแแแแแแขแ แแชแแแแแแ แแแก แงแแแแ แชแแแแแแแแก แแ แแแแกแขแแ แก แแแ แแแขแแ แแแฃแแ แแฅแแก แแ แแ แแแแแ แ แแแแแกแแแแ แแ แแก.
แแแแแแขแแ แแแ
แ แแฃแแ แแแแแฌแแแแแฃแแ แแแแฃแจแแแแแแก แแ แแชแแกแแแแก แแแแกแแฎแแ แชแแแแแแแแ, แแกแแแ แ แแแแ แช แแ แกแแแฃแแ แแ แฅแแขแแฅแขแฃแ แแก แแแขแแแแแแชแแแก แแ แแแแแแแแจแ, แแแกแแฎแแ แฎแแแแแแ แจแฃแแแแแแแแแก แแแแแงแแแแแ.
แแแแกแแแแแก, แ แแ แแ แจแแชแแแแแ แกแแ แแแกแแก แแแแ แแ แแ แแแแแญแ แแ, แแแแแแแแแ, แจแแขแงแแแแแแแแแแก แแแแแขแแแแแ แแแแฃแจแแแแแแก, แแแ แจแ แฃแขแแแแชแแแก แแ แจแแกแแแแก แแ แแแแแแแแ, แจแแแแซแแแแ แกแแ แแแกแแก แฌแแ แฉแแ แแแ แแ แแฅแกแ แแแแแฃแจแแแแแแแ, แ แแแแแแช แจแแแกแ แฃแแแแก แงแแแแ แแแแแขแแแแ แกแแแฃแจแแแก.
pub-sub แแแขแแแแแแชแแแก แแแแกแแแฃแ แ แแแแแแแแแ แแแแแฌแแแแแฃแแ แแแแแแแชแแ แแแแแแก แแแ แแแแ, แ แแแแแแช แฌแแ แแแฅแแแแก แแแแแฎแแแแแก แแแแแแแแแก, แ แแแแ แแชแแ แคแแกแแแแก แชแแแแแแแแแ แแแแแ แแ, แแ แฌแแแแแแก แคแแแ - N แกแแ แแแ แแแ, แ แแแแแแแช แฃแแ แฃแแแแแงแแคแแ แแแแกแแแขแแแแก API-แก แแแ แแแแแแขแแแแกแแแแก.
แแฃ แแแ แแแแแ แแแแแฌแงแแแขแ, แแแจแแ แแแแฎแแแ แแแแแแ แแแแกแแฎแฃแ แแแ แแกแ แแแแแแงแฃแ แแแ:
- แแแแแแขแ แแแงแแ แแแก แแแแจแแ แก แแแแขแคแแ แแแกแแแ. แกแแ แแแ แแก แแฎแแ แแก, แ แแแแแแช แฌแงแแแขแก แขแ แแคแแแก, แแฌแงแแแ แแ แแชแแกแ แแ แแแแจแแ แแก แแแแกแแฎแฃแ แแแแกแแแแก.
- แกแแ แแแกแแก แแ แแชแแกแแก แแแแขแแฅแกแขแจแ แฎแแแแ แแแขแแ แแแแชแแ แแ แแแแแฎแแแแแแแก แแแแแฌแแ แ. แแ แแชแแกแ แแแฃแฌแแแแแก แแแแแแแก แแแแแฌแแ แแก แแแแแแก.
- แ แแแแ แช แแ แแแแแแแ แแแแแ แแ แแแฃแแแ แแแ แแแจแ, แแก แแแแฌแแแแแ แแ แแชแแกแแแก, แ แแแแแแแช แแแกแแฎแฃแ แแแแแ แแแแจแแ แแแก.
แฌแแ แแแแแแแแแแ, แ แแ แฉแแแ แแแงแแแก 50000 5 แแแแแแแขแ "แแฎแแแ แแแแแแแก" แแแแแแ. แแแแแแแขแแแ แแแแแแ แแ แแแฌแแแแแแ 50000 แกแแ แแแ แแ. แจแแแแแแ, แงแแแแแ แแแแแฎแแแแ, แ แแแแแแช แแแแแก แแแชแแแแก แแฃแแฅแขแจแ, แแแแแแแ แแแแ 10000-แฏแแ : XNUMX-แฏแแ แแแแแแฃแ แกแแ แแแ แแ, แแแกแแ แแแแแแแขแแแแก แ แแแแแแแแแก แแแฎแแแแแ. แแ แแ แแก แซแแแแแ แแคแแฅแขแฃแ แ แกแฅแแแ, แแ แ?
แกแแขแฃแแชแแแก แแแกแแฃแแฏแแแแกแแแแแ, แจแแแแแแฆแแ แแ แแฅแกแ, แ แแแแแกแแช แแฅแแก แแแแแ แกแแฎแแแ, แ แแแแ แช แแแชแแแแก แฌแแ แขแแแ. แกแแฎแแแแแแก แแแแแแแฃแ แ แแแแกแขแ แแขแแ แก แฃแแแ แจแแแซแแแก แฃแแฎแแแแกแ แแ แแชแแกแแก แกแแฎแแแแ แแแแ แฃแแแแ, แแก แแแแจแแแแแแแแแแ.
แแแแแ แแแแฃแจแแแ แแก แแ แแฅแกแ แฌแแแแแแก แคแแแแก แกแแ แแแ แแแแ แแ แงแแแแ แฉแแแแ แแ แแชแแกแ, แ แแแแแแช แแแกแแฎแฃแ แแแ websocket api-แก, แแแแแแฌแแ แก แแแก แแ แแ แ แแแ แแแจแ แแ แกแแแฃแแ pub-sub-แแก แแ แแแแแแแฃแ แ แแแชแแแแก แแฃแแฅแขแก. Proxy แแฌแแ แก แแแ แแแก แแฎแแแแ แฃแแแแแแฃแ แ แแแแแฌแแ แแก แจแแแแฎแแแแแจแ แแ แแแแแ แแแก แจแแแแแแแแ แจแแขแงแแแแแแแแก แแแก แงแแแแ แแแแแแแขแก.
แจแแแแแแ, 5-แแก แแแชแแแแ, แแแ แแแกแ แแ แฌแแแแแแก แกแแ แแแ แแแก แจแแ แแก แแแแแแแแแแแ 50000 แจแแขแงแแแแแแแ.
แแแ แจแ แฃแขแแ แแแ แแ แแแแแแแแกแแแ
Req-Resp
แจแแขแงแแแแแแแแแแก แแแแแแแแแแ แแแแฎแแ แชแแแแแแแจแ, แแ แกแแแแแก แแแแฎแแแแแก แแแแแฌแแแแแแก 7 แกแขแ แแขแแแแ:
default
. แแแแฎแแแแ แแแแแแแแแ แงแแแแ แแแแขแ แแแแ แก.round-robin
. แแแแฎแแแแแแ แฉแแแแแแแแแแ แแ แชแแแแฃแ แแ แแแฌแแแแแแ แแแแขแ แแแแ แแแก แจแแ แแก.consensus
. แแแแขแ แแแแ แแแ, แ แแแแแแแช แแแกแแฎแฃแ แแแแแ แกแแแกแแฎแฃแ แก, แแงแแคแ แแแแแ แแแแ แแ แแแแแแแ. แแแแฎแแแแแแ แแแแแแแแแ แแฎแแแแ แแแแแ แแแ.consensus & round-robin
. แฏแแฃแคแก แฐแงแแแก แแแแแ แ, แแแแ แแ แแแแฎแแแแแแ แแแฌแแแแแแ แงแแแแ แฌแแแ แแ.sticky
. แฐแแจแแก แคแฃแแฅแชแแ แแแแแแแแแแแ แแ แแแแญแแแ แแแแแ แแขแฃแ แแแแแฃแจแแแแแแแก. แจแแแแแแแ แแแแฎแแแแแแ แแ แฎแแแแแฌแแ แแ แแแแแก แแแแแ แแแแแฃแจแแแแแแแแ.sticky-fun
. แแแชแแแแก แฌแแ แขแแแแก แแแแชแแแแแแแชแแแกแแก, แฐแแจแแก แแแแแแแแแก แคแฃแแฅแชแแsticky
แแแแแแแแกแแแ.fun
. แ แแแแ แช sticky-fun, แแฎแแแแ แแฅแแแ แจแแแแซแแแแ แแแกแ แแแแแขแแแแ แแแแแแแกแแแแ แแแแ, แฃแแ แงแแคแ แแ แฌแแแแกแฌแแ แแแแฃแจแแแแแ.
แแแแแฌแแแแแแก แกแขแ แแขแแแแ แแแแแแแแ แแแชแแแแก แฌแแ แขแแแแก แแแแชแแแแแแแชแแแกแแก.
แแแแแแแแกแแแแก แแแ แแ, แจแแขแงแแแแแแแแแ แกแแจแฃแแแแแแก แแแซแแแแ แแแแแจแแแ แแ แแแฃแแแแ. แแแแแ แจแแแฎแแแแ แขแแแแแแก แขแแแแแก แกแแกแขแแแแจแ:
- แแแแจแแ แแก แขแแแ. แกแแจแฃแแแแแแก แแแซแแแแ แแแแแแ, แแฃ แ แ แแแแจแแ แแ แแแฎแแ แแแแแแแแแ. แแแแแแงแแแแแ, แ แแแแกแแช แแแแขแ แแแแ แแก แแ แแชแแกแ แฃแแแแจแแ แแแแ แแแแแ แแแชแแแแก แฌแแ แขแแแก, แแแแ แแ แกแฎแแแแแกแฎแแ แแแ แจแ แฃแขแแแแชแแแก แแแแแแจแแแแ.
- แกแแ แแแกแแก แขแแแ. แกแแจแฃแแแแแแก แแแซแแแแ แแแแแแแจแแ แแ แแแแแฃแจแแแแแแแแ แฏแแฃแคแแแแ แแ แแ แกแแ แแแกแแกแแแแก แแ แแแแคแแ แแแแแ แแแ แจแ แฃแขแแแแชแแแกแ แแ แแแแแแแแกแแแแก แจแแกแแซแแแแแแแแแ. req-resp แจแแแแแแแกแแแแก แแแ แจแ แฃแขแแแแชแแ แฎแแแแแแแแ. แฉแแแ แแแแแแแแแ แแแแฎแแแแแก แแแชแแแแก แแฃแแฅแขแจแ, แจแแแแแ แแก แแแแแกแชแแแก แกแแ แแแกแก. แแแแ แแ แแฃ แแแญแแ แแแแ แแแแแฃแจแแแแแแแแแก แแแงแแคแ แแแแแแฃแ แฏแแฃแคแแแแ, แแแจแแ แแแงแแคแ แฎแแแแ แขแแแแแแก แแแแแงแแแแแแ. แขแแแแก แแแแแแแแแกแแก แแแแฎแแแแ แแแแแแแแแแแแแ แแแแขแ แแแแ แแแแก แแแแแ แแขแฃแ แฏแแฃแคแก.
- แแแแฎแแแแแก แขแแแ. แกแแจแฃแแแแแแก แแแซแแแแ แแแแแกแฎแแแแแ แแแกแฃแฎแแแ. แแแแแแแแ แฉแแแแ แกแแกแขแแแ แแกแแแฅแ แแแฃแแแ, แกแแ แแแกแแก แแแกแฃแฎแแแแก แแแกแแแฃแจแแแแแแแ แฃแแแ แจแแแแแซแแแก แแแแฎแแแแแก แแแแแแแแแกแแก แแแฃแแแแแ RequestTag. แแแกแแแ แฉแแแ แจแแแซแแแแ แแแแแแแ แแแกแฃแฎแ, แ แ แแฎแแแแ แแแแแแแแแ.
แแแแ-แฅแแ
pub-sub-แแกแแแแก แงแแแแแคแแ แ แชแแขแ แฃแคแ แ แแแ แขแแแแ. แฉแแแ แแแแฅแแก แแแชแแแแก แฌแแ แขแแแ, แกแแแแช แฅแแแงแแแแแ แจแแขแงแแแแแแแแแ. แแแชแแแแก แฌแแ แขแแแ แแแ แชแแแแแก แจแแขแงแแแแแแแแแก แแแแแแแขแแแก แจแแ แแก, แ แแแแแแแแช แแแแแแฌแแ แแก แแแแแแแก แกแแญแแ แ แแแ แจแ แฃแขแแแแชแแแก แแแกแแฆแแแแแ (แจแแแซแแแแ แแแฅแแแ, แ แแ แแก แแแแแแแก แแแแแแแแ).
แแแกแจแขแแแฃแ แแแ แแ แฎแแ แแแแแแแก แขแแแแ แแแขแแแ
แกแแกแขแแแแก แแแกแจแขแแแฃแ แแแ แแแแแแแแ แแแแแแแแแแฃแแแ แกแแกแขแแแแก แคแแแแแแกแ แแ แแแแแแแแแขแแแแก แแแกแจแขแแแฃแ แแแแก แฎแแ แแกแฎแแ:
- แกแแ แแแกแแแแก แแแกแจแขแแแแ แแแ แฎแแแแ แแแแกแขแแ แจแ แแแแแขแแแแแ แแแแแซแแแแก แแแแแขแแแแ แแ แกแแ แแแกแแกแแแแก แแแแแฃแจแแแแแแแแแ. แกแแชแแแแ แแฃแจแแแแแก แแ แแก แจแแแแซแแแแ แแแ แฉแแแ แแแขแแแแแฃแ แ แแแแแแแแกแแแแก แแแแแขแแแ.
- แแแแแ แจแแขแงแแแแแแแแแแก แกแแ แแแกแ แชแแแแ แแแแกแขแแ แจแ แแแแแแแ แแแกแจแขแแแแ แแแฃแแแ แแ แแแแกแแแฃแแ แแแแ แแแขแแแ แแฃแแ แแแชแแแแก แฌแแ แขแแแแแแก แชแแแแแฃแ แแแแกแขแแ แฃแ แแแแแซแแแจแ แแแแแแแแแแแแแ, แแ แแ แแฅแกแ แแ แแชแแกแแแแก แแแแแขแแแแ แแแแกแขแแ แแก แแแแกแแแฃแแ แแแแ แแแขแแแ แแฃแ แฃแแแแแแ.
- แแแแแแแ แกแแกแขแแแแก, แ แแแแ แช แแแฎแแกแแแแแแแแก แแแกแจแขแแแฃแ แแแ แแแแแแแแแแฃแแแ แแ แฅแแขแแฅแขแฃแ แแก แแแฅแแแแแแแแ แแ แชแแแแแฃแแ แแแแกแขแแ แแแแก แกแแแ แแ แแแแแแฃแ แแ แแแฃแแจแ แแแแ แแแแแแแแก แฃแแแ แแ.
แแ แแแฅแขแแก แฌแแ แแแขแแแ แฎแจแแ แแ แแแแแแแแแแฃแแแ แกแแแแแ แแแแก แกแแแแ แขแแแแกแ แแ แกแแฉแฅแแ แแแ. แแแแแแแชแแแกแแแ แแ แแแ แแแ แแแแ แจแแขแงแแแแแแแแแ แแแก แแแแแแแแแแ แแแ แกแแแจแ. 50-60 แแแแฅแแแแแ แแแแกแขแแ แแช แ แแ แแแแแแแแก, แจแแแแแซแแแ แแแแแแ แแแ แคแแแแ แแชแแแก. แกแแแฌแฃแฎแแ แแ, แคแแแแ แแชแแแก แแแแ แกแชแแแแแแ แแ แกแขแแขแแแก แคแแ แแแแแก.
แแแฏแแแจแแ
แแแขแแแ แแแแก แแแแแแแแกแแแแก แแแแแแแแกแแก, แฉแแแ แฃแแแ แแแแแแฎแแแแ แกแแ แแแก แแแแขแ แแแแ แแแแก แกแแญแแ แแ. แแฃแแชแ, แจแแขแงแแแแแแแแแ แแกแแแ แฃแแแ แแงแแก แแแชแฃแแ. แแแแแซแแก แแ แแแแฅแแแแก แแแแ แแแก แจแแแแฎแแแแแจแ, แจแแขแงแแแแแแแแแ แแแขแแแแขแฃแ แแ แฃแแแ แแฆแแแแก แแ แฃแแแแแแก แแ แแจแ.
แฉแแแก แแ แแแฅแขแแแจแ แแแงแแแแ แแแแแขแแแแ แแแแแซแแแก, แ แแแแแแแช แแฆแแแแ แแแขแแแ แแแแก แแแชแแแแก แจแแแแฎแแแแแจแ. Erlang-แก แแฅแแก แกแขแแแแแ แขแฃแแ แแแแแฌแแแแแฃแแ แ แแแแแแก แแแแแ แแแ OTP แแแแแแแชแแแแแกแแแแก. แแแแแฌแแแแแฃแแ แ แแแแแ แแฎแแ แชแแแแแแก แแฆแแแแแแก แฌแแ แฃแแแขแแแแแแแก แจแแแแฎแแแแแจแ แฌแแ แฃแแแขแแแแแ แแแแแแแชแแแก แแแจแแแแแ แกแฎแแ แแแ แ แแแจแแแแฃแ แแแแแซแแ. แแ แแชแแกแ แแแแญแแแ แแแแแ; แฌแแ แฃแแแขแแแแแแแก แจแแแแแ, แแแแแแแชแแ แแแขแแแแขแฃแ แแ แแแแแแแก แแแ แชแฎแแก แแแแแซแจแ. แแ แคแฃแแฅแชแแแก แจแแกแแฎแแ แแแขแ แจแแแแซแแแแ แฌแแแแแแฎแแ
แแแฅแแแแแแ
แจแแแแชแแแแ แฃแฎแแจแแ แแแแแช แจแแแแแแ แแ rabbitmq-แแก แจแแกแ แฃแแแแ แแ แฉแแแแ แแแ แกแแแแแฃแ แ แจแแขแงแแแแแแแแแ.
แแ แแแแแแ
6.14.1.2.1.2.2 แแฃแแฅแขแจแ. แแ แแแแแแแฃแ แ แแแแฃแแแแขแ แแแแฉแแแแแแก RPC CAST-แแก แจแแแแแก:
แฉแแแ แฌแแแแกแฌแแ แแ แแแแแแแแแแ แแแแแขแแแแ แแแ แแแแขแ แแแก OS-แแก แแแ แแแก แแ erlang VM-แก. แขแแกแขแแ แแแแก แแแ แแแแแ:
- erl แแ แฉแแแก: +A1 +sbtu.
- แขแแกแขแ แแ แ erlang แแแแแซแจแ แขแแ แแแแ แแแแขแแแแ แซแแแแ i7 แแแแแแฃแ แ แแแ แกแแแ.
- แแแแกแขแแ แฃแแ แขแแกแขแแแ แขแแ แแแแ แกแแ แแแ แแแแ 10G แฅแกแแแแ.
- แแแแ แแฃแจแแแแก แแแแแ แแก แแแแขแแแแแ แแแจแ. แฅแกแแแ NAT แ แแแแแจแ.
แขแแกแขแแก แแแแ:
req_resp_bench(_) ->
W = perftest:comprehensive(10000,
fun() ->
messaging:request(?EXCHANGE, default, ping, self()),
receive
#'$msg'{message = pong} -> ok
after 5000 ->
throw(timeout)
end
end
),
true = lists:any(fun(E) -> E >= 30000 end, W),
ok.
แกแชแแแแ แ 1: แขแแกแขแ แขแแ แแแแ แแแแขแแแแ แซแแแแ i7 แแแแแแฃแ แ แแแ แกแแแ. แขแแกแขแ, แจแแขแงแแแแแแแแแ แแ แกแแ แแแกแ แจแแกแ แฃแแแแฃแแแ แแ แ แแแแแซแแ แแ แ Docker แแแแขแแแแแ แจแ:
Sequential 10000 cycles in ~0 seconds (26987 cycles/s)
Sequential 20000 cycles in ~1 seconds (26915 cycles/s)
Sequential 100000 cycles in ~4 seconds (26957 cycles/s)
Parallel 2 100000 cycles in ~2 seconds (44240 cycles/s)
Parallel 4 100000 cycles in ~2 seconds (53459 cycles/s)
Parallel 10 100000 cycles in ~2 seconds (52283 cycles/s)
Parallel 100 100000 cycles in ~3 seconds (49317 cycles/s)
แกแชแแแแ แ 2: 3 แแแแแซแ แแฃแจแแแแก แกแฎแแแแแกแฎแแ แแแแฅแแแแแแ แแแแแ แแก แฅแแแจ (NAT).
Sequential 10000 cycles in ~1 seconds (8684 cycles/s)
Sequential 20000 cycles in ~2 seconds (8424 cycles/s)
Sequential 100000 cycles in ~12 seconds (8655 cycles/s)
Parallel 2 100000 cycles in ~7 seconds (15160 cycles/s)
Parallel 4 100000 cycles in ~5 seconds (19133 cycles/s)
Parallel 10 100000 cycles in ~4 seconds (24399 cycles/s)
Parallel 100 100000 cycles in ~3 seconds (34517 cycles/s)
แงแแแแ แจแแแแฎแแแแแจแ, CPU-แแก แแแแแงแแแแแ แแ แแฆแแแแขแแแแแ 250%-แก
แจแแแแแแแ
แแแแแแแแแแ, แ แแ แแก แชแแแแ แแ แฐแแแแก แแแแแแแก แแ แฉแแแ แแแแแชแแแแแแ แ แแแแฃแ แกแแ แแแแแแก แแแฃแขแแแก แ แแแแ แช แแแแแฌแแแแแฃแแ แกแแกแขแแแแแแก แแแแแแแแ แแแก, แแกแแแ แแ แแฅแขแแแแกแแแก, แ แแแแแแแช แแแแแแแแ แแแแแแก แกแแกแขแแแแแแกแแแแก แแแแแฌแแแแแฃแแ แแ แฅแแขแแฅแขแฃแ แแก แจแแฅแแแแก แแแกแแฌแงแแกแจแ แแ แแแ แแ แแแขแแ แแกแแ แฃแงแฃแ แแแแ Erlang/Elixir-แก. แแแแ แแ แแญแแ แแแแแ แแแแ, แฆแแ แก แแฃ แแ แ...
แกแฃแ แแแ
แแแแแแแแฎแแแจแ แแแแแฌแแแแแแ แจแแฃแซแแแแ แแฎแแแแ แแแ แแแแกแขแ แแ แแแฃแ แแแแฎแแแ แแแแแแก.
แ แ แแแแแแ แฃแแแ แแแแแจแฃแฅแ แฃแคแ แ แแแขแแแฃแ แแ, แ แแแแ แช VTrade Experiment แกแแ แแแก แแแฌแแแ?
-
แแแแ แแ: แแแแ แแแ, แจแแแแแแแแ แแ แแแแ แแ แ: DAY, GTD, GTC, IOC, FOK, MOO, MOC, LOO, LOC
-
แจแแแแแแแแแก แฌแแแแ. แแแฏแแฃแคแแแแแแ แฌแแแแแก แแแแฎแแ แชแแแแแแแก แแแแ แแ แแ แแ แแฅแขแแแ
-
แแแญแ แแแแก แแแแฃแแแแแแชแแ: แขแแแแแแ, แแแแแแ, แ แแแแแฃแชแแแแ. แ แแแแ แจแแแแแฎแแ แแ แ แแแแ แฌแแแ
-
แฒฃแแแ แแคแแกแจแ. แแแแแแแแ แแ แแแแแแแแ แแแ. แแแแแแจแ แแแแแแแก แแแแแขแแ แแแแ แแ แแแชแแแแแขแแก แแแแแซแแแแ
-
API. แแแแแ แแแแ แแแแแ, แ แ แแแขแแ แคแแแกแแแแ แกแแญแแ แ แแ แ แแแแ แแแแแแฎแแ แชแแแแแ แแกแแแ
-
แแแคแแ แแแชแแแก แจแแแแฎแแ: PostgreSQL, Timescale, Tarantool แกแแแแญแ แ แกแแกแขแแแแแจแ
-
แ แแแฅแขแแฃแแแแ แกแแแแญแ แ แกแแกแขแแแแแจแ
-
แกแฎแแ. แแแแแแขแแ แแแจแ แแแแฌแแ
แแแกแชแ แฎแแ 6 แแแแฎแแแ แแแแแแ. 4 แแแแฎแแแ แแแแแแ แแแแ แจแแแแแแ.
แฌแงแแ แ: www.habr.com