5

組み込みプロセッサ用のアクター スタイルのコードを書きたいのですが、すべてを Erlang で記述するか、すべてを zeromq+任意の言語で記述するかを決定しようとしています。zeromq を使用することは、任意のプログラミング言語を使用して開発を非常に簡単にすることができるという意味で非常に強力に見えますが (多くの利用可能なライブラリ)、この力に問題があるかどうかはわかりません。特に OTP の概念では、Erlang がアクター モデルをより適切に表現していることは理解していますが、同様のアクター モデルを zeromq で表現するのは簡単に思えますか? 私はこれを正しく見ていますか?

1. 組み込みアプリケーション (Erlang のパワーポイントである分散処理が不要な場合) に Erlang を使用せず、zeromq のような汎用メッセージング フレームワークの上に構築するだけで、本当に失うものは何ですか?

2.Erlang は、分散されていない組み込みアプリケーション向けの調整されたメッセージング フレームワーク以上のものを提供していますか?

3. zeromq で実装するのに時間がかかりすぎた Erlang の特定の機能は何ですか?

4

3 に答える 3

4

あなたはリンゴとオレンジを比較しています。Erlang を使用する利点の 1 つ言語です。zmq + 他の言語と比較する場合、その比較における他の言語は本当に重要です。zmq + ARM アセンブリ? Erlang は、ASM を手作業でコーディングしないという素晴らしい利点をすべてもたらします。

Erlang が他に何をもたらすかと言えば、Erlang は組み込みですか? Erlang には、フォールト トレランス、ホット コード ロード、Erlang と OTP を活用した迅速な開発、C ライブラリとの簡単なやり取り、ライブ REPL と用語のコピー アンド ペーストによる簡単なデバッグという利点があることを絶対に主張しています。

ホットリロード、オンデバイス REPL、確立されたライブラリなど、それらのいくつかは、ゼロから再現するために実際にハッキングする必要があります。

于 2012-10-01T19:46:56.087 に答える
3

私が言いたいのは、Zmq で同じ種類のエラー処理を行うには、非常に苦労する必要があるということです。Erlang には、事態が悪化し始めたときの非常に優れたエラー処理が組み込まれています。Erlang では、その部分を最適化し、堅牢にするためにかなりの時間が費やされてきました。

一方、Zmq は、単純なベンチマークを作成する場合、一部の言語との組み合わせでおそらくより高速です。オーバーヘッドが少ないため、Erlang が提供できる速度よりも速くメッセージを処理できます。

しかし、選択した言語で Erlang の大部分を再実装することになる可能性があります。また、Erlang/OTP に 15 年間取り組んでいる 6 人から 10 人の開発者ほど良い仕事はできないでしょう。

一方、Erlang は簡単に学べる言語ではありません。機能的なスタイルでプログラミングする方法を学ぶだけではありません。特に、同時実行パターンと障害処理には、慣れるまでに時間がかかる場合があります。

于 2012-10-04T19:59:36.063 に答える
1

ZeroMQ =/= Erlangは多くの違いをカバーしています。ZeroMQ はメッセージングの側面のみを提供し、軽量プロセス、プロセス監視、およびその他の側面は提供しないという主張があります。

于 2013-06-14T12:56:57.517 に答える