2012-10-01 6 views
5

私は組み込みプロセッサ用のアクタスタイルコードを書きたいと思っていますが、Erlangのすべてをzeromq + zeromqを使用することは、プログラミング言語を使用して開発をもっと楽にできるという意味で非常に強力です(多くの利用可能なライブラリ)が、この力には何か問題があるかどうかはわかりません。私はアーランがアクターモデルを特にOTPコンセプトではるかに優れていると理解していますが、それでzeromqで類似のアクターモデルを表現するのは簡単でしょうか?これを正しく見ていますか?組み込みアプリケーション用の "Erlang"と "zeromq + any language"

1.組み込みアプリケーション(分散処理、Erlangのパワーポイントは不要)でErlangを使用しないと本当に失われますが、zeromqのような一般的なメッセージングフレームワークの上に物事を構築するだけですか?

2.非分散エンベデッドアプリケーションのコーディネートメッセージングフレームワーク以上の機能を提供するErlangはありますか?

3. Erlangの特定の機能は、zeromqで実装するには時間がかかりすぎる可能性がありますか?

答えて

3

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

Erlangは、Erlangがフォールトトレランス、ホットコードローディング、ErlangとOTPを利用した迅速な開発、Cライブラリとの簡単なやりとり、ライブREPLとコピーによる簡単なデバッグに利点があると主張しています(Embedded Erlang? Absolutely)。 - 用語のペースト。

ホットリロード、オンデバイスのREPL、確立されたライブラリなどのいくつかのものは、根本から再現するために間違いなく実際のハッキングをとるでしょう。

3

私の主張は、Zmqで同じ種類のエラー処理を得るためには非常に難しい作業が必要だということです。 Erlangには、状況が悪化し始めるときに、組み込みのエラー処理機能があります。 Erlangには、その部分を最適化するためにかなりの時間が費やされ、堅牢になっています。

単純なベンチマークを行うと、Zmqはおそらくいくつかの言語でいくつかの組み合わせでより速くなります。オーバーヘッドが少ないので、Erlangが提供できるよりも速くメッセージを処理する可能性があります。

しかし、あなたが選んだ言語でErlangの大部分を再実装する可能性があります。そして、おそらくErlang/OTPで15年間働いている6-10人の開発者ほど良い仕事をしないでしょう。

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

0

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

関連する問題