3

このような質問は以前にもありましたが、現在はすべての回答が古くなっています。

Scala ベースの Web アプリケーションに取り組むことを楽しみにしています。この質問は 2 つに分割できることは理解していますが、使用しているホスティング プラットフォームとフレームワークに依存しており、同じコンテキストに依存しているため、1 つとして投稿しています。

私は Play で複数の (素晴らしい) ディベートを読みました! と Lift を比較できますが、Play! 2.1とリフト。自分のシナリオ (ソーシャル ネットワーク Web サイト) にどちらが適しているかを判断するにはどうすればよいですか?

同様に、このディスカッションでは、Lift を使用する場合にどのプラットフォームを使用するかについて、いくつかの非常に良い議論がありますが、2010 年のものであり、時代遅れのようです。推奨されるプロバイダー (stax.net) は廃止されました (または、cloudbees.com に統合されたようです)。私は個人的にGAEに傾倒しています.GAEはすぐに使い始めることができますが、問題がまだ解決されているかどうかはわかりません.

  1. アクターのサポート (Akka がこの問題の解決に役立つかどうかはわかりません)
  2. 実行中のアプリに通知することなく、さまざまな JVM によって提供される特定のセッションのリクエスト
  3. David Pollak (Lift の筆頭著者) の引用:

Google の主張にもかかわらず、GAE は遅く、スケーラブルではありません (私が話した中で、GAE アプリのスケーリングを試みたすべての人は失敗し、別の場所に行ってしまいました)。GAE は、非常に最適化されていないストレージ メカニズムにユーザーを閉じ込めます。GAE は無料ですが、Stax も無料で、SliceHost などの安価なオプションが多数あります。次は、Amazon EC2 と RackSpace です。そのため、GAE を使用する正当な理由は見つかりませんでした。また、GAE を使用する正当な理由がない場合、GAE JVM の非互換性 (新しいスレッドがないなど) に関連するコードに多くのリソースを費やすのは無駄に思えます。

GAE を使用する場合のもう 1 つの問題は、Play がないことです。2.1 サポート。私はまだそのためのモジュールを見ていません。もう 1 つの問題は、将来的に他のデータベースに移行するのが難しいことです(ただし、MongoDB への移行は比較的簡単なはずだと聞いています)。最悪のケースは、GAE から移行して AppScale を使用することです。

4

2 に答える 2

2

質問は非常にオープンなので、Scala Web アプリ開発に関する私の経験と意見を共有します。それがあなたの決定に役立つかもしれません。

私は Scalatra を使用して最初の scala Web アプリケーションを構築し、サーバーとして Jetty を使用して Scalate を作成しました。アプリは Amazon EC2 インスタンスでホストされており、問題はありませんでした... 2011 年末から実行されていますが、解決に 10 分かかった小さなブリップが 1 つだけあります。Web アプリケーションで Scala を使用することを学ぶには良い経験だと思いました。

http://www.scalatra.org/

Typesafe ( http://typesafe.com ) は Play フレームワークを選択したようです。そのため、次の scala ベースの Web アプリでは Play を使用する可能性があります。私が読んでいる Play Framework に関する本は「Play for Scala」です。今月(2013 年 10 月)発行されたばかりです。

http://www.manning.com/hilton/

私の印象では、以前は Lift が頼りになるフレームワークでしたが、これは Play Framework に移行しました。

于 2013-10-08T10:58:48.360 に答える