twitterブームの陰で注目を集める“Erlang” - @IT
スウィーニー氏は、今後はメモリ上で相互にプロセス同士がメッセージ通信を行う“Composable memory transactions”のようなプログラミングモデルに移行するべきだと述べている。これは、より抽象度の高い概念では“アクターモデル”と呼ばれているプログラミングモデルで、プログラムの基本となるユニットが、すべてアクターとして振る舞う。アクターは、ほかのアクターにメッセージを送ったり、アクターを生成したり、次のメッセージを受信したときの動作を変更するといったことだけができる。これはちょうど人間同士の仕事の進め方のようなものだ。人間同士の脳の一部は共有されていないため、コミュニケーションが面倒だったり、エラーが起こったりするが、並列処理では人数に比例したパフォーマンスを得られる。誰かほかの人の脳の状態に関係なく仕事が進められるからだ。
twitterで使われていることで、最近話題の言語「Erlang」についての分かりやすい解説。しかし、本文にもありますが、事実上これだけのパフォーマンスを要求されるネットサービスは限られているので、しばらくはごく一部のサービスで使われていくのでしょうね。
コメントする