2012-01-08 12 views
6

ErlangやJavaの質問でさえ、かなり違う言語であり、異なるパラダイムさえあるので、私はかなり奇妙なことを知っています。しかし、今私は非常に表面的にそれらの両方を知っているので、あなたが知っているより多くの貴重な、速く、あなたに尋ねるスケーラブル?何が私の心に来る:WebリクエストのJava(Grails)またはErlang(Elixir):スピード、スケーラビリティ?

  1. Javaは主流の言語です。 GroovyとGrailsについてはわかりませんが、プロジェクトがあなた自身の趣味以上になるなら、このコードをサポートするJavaプログラマーを見つける方がはるかに簡単です。 Elixirは良いErlangプログラマーの趣味なので、Elixirでコードをサポートするのは本当に難しいでしょう。また、Grailsはすでにフレームワークが書かれているので、自分自身でElixirフレームワークで書かれた方がよいでしょう。
  2. Erlang app(よく書かれています)はスケーラビリティの同義語です。しかし、開始するWebアプリケーションについては、軽量なクエリを実行して死んでしまう - 単純なRound-Robinユーザーのクエリ(異なるマシン上のJavaプロセス)よりも、スケーリングを行う必要はありません。
  3. 多くの単純なクエリ(長いポーリングなどはありません)について言えば、非常に多くのプロセスが毎秒起床して死んでいます。アーランは本当に軽量なプロセスモデルを持っています。Javaについてはどうですか? 1秒ごとに処理されますか?

ありがとうございます。

PS Chartthisパフォーマンステストでは、Java VM性能に関する疑問が投げかけられます。

+0

これは[Programmers SE](http://programmers.stackexchange.com)に適している可能性があります。私はモデレータにpingをして見せました。あなたの質問は近い将来に移行される可能性があります。私はそれがスタックオーバーフローのためにはあまりにも広いですが、今のところそれを開いたままにしています。私は、これはおそらく本当に良い興味深い答えを得ることができると思うが、移行する前に私の同僚と二重チェックしたい。 –

+0

一般に「どの言語/フレームワークを使用しますか?」プログラマーが選択肢を作るための明確な基準を含んでいないので、質問はトピックの対象外です。 *これはいくつかの基準があるため*可能かもしれませんが、あなたがしようとしている比較が有効であるかどうかはわかりません。私はどちらか一方の方法を言うには十分に知りません。 – ChrisF

+0

@Minner:ベンチマークには妥当性がないとは思いません。 –

答えて

-2

間違いなく、Java。参照したパフォーマンスtestは、Java/NettyのパフォーマンスがマルチコアのErlangのパフォーマンスと等しいことを示しています。各アクセスでは新しいプロセスまたはスレッドが開始されないため、数多くのJavaアクターと非同期I/Oライブラリを使用できます。

+3

さて、パフォーマンステストではOTP Webサーバーが使用されており、Erlangにはカウボーイのようにそのコミュニティが推奨する多くのサーバーが用意されています。そのベンチマークを信頼するということは、Ruby Webサーバーのパフォーマンスをwebrickによって与えられたものと信じるようなものです。 いずれにしても、他の人の言うとおり、私はこの決定がそれらのベンチマークによってのみ推進されるべきだとは思わない。 –

関連する問題