サーバー上で実行される非常に単純なサービスがある場合、複数のサーバーで実行するように、このサービスをスケーラブルにするにはどうすればよいでしょうか? それは使用していregister(mod,func,[args])
ますか?
プロセスの生成、ノードの作成、および新しいサーバーの作成の間で少し混乱しています。
クライアントのアクティビティを新しいサーバーにオフロードして、負荷を分散するにはどうすればよいですか?
サーバー上で実行される非常に単純なサービスがある場合、複数のサーバーで実行するように、このサービスをスケーラブルにするにはどうすればよいでしょうか? それは使用していregister(mod,func,[args])
ますか?
プロセスの生成、ノードの作成、および新しいサーバーの作成の間で少し混乱しています。
クライアントのアクティビティを新しいサーバーにオフロードして、負荷を分散するにはどうすればよいですか?
生成プロセスにより、マルチコアを効率的に利用するより大きな粒度を実現できます。また、非同期動作を実装する機会も与えられます。
ノードを作成すると、システムを多数のホストに分散できます。ノードはお互いを認識し、透過的に通信できます。
サーバーが十分にステートレスである場合は、カップル サーバー ノードを作成し、それらの間でトラフィックを負荷分散することができます。
サーバーに重い計算がある場合は、カップルサーバーノードを使用してマップ/リデュースできます。
register を使用したこのコード スニペットの意味がわかりません。通常、サーバーエンドポイントは登録しませんが、サーバーノード、場所、負荷に関する知識を持つある種のルーターを登録します..
「ノード」と「プロセス」は Erlang の世界に由来しますが、「サーバー」はシステム内のレイヤーです。どのノードもサーバーになるように設計したり、クライアント要求を生成したりできます。プロセスは、ローカルまたはリモートのノードで生成されます。プロセスは、サーバーまたはクライアントのロジックを実行/実装する場合があります。
この完全なErlang のオンライン無料ブックに従うと、すべてを発見できます。マルチプロセッシング、ディストリビューション、およびクライアント/サーバーシステムに直接ジャンプできます