Rest APIサーバー(Symfony PHPのWebサービス内)をScalaに移動することを考えています。理由は、速度、オーバーヘッドなし、CPUの削減、コードの削減、スケーラビリティなどです。 。Scala=は数日前までは知りませんでしたが、最近学習していることをScala本とすべてのブログの投稿と質問(それほど見苦しくありません!)
次のオプションがあります。
使用する必要があるもの:HTTPリクエスト、JSON出力、MySQL(データ)、OAuth、Memcache(キャッシュ)、ログ、ファイルアップロード、統計(Redisなど)。
あなたは何をお勧めします?
nfiltered をお勧めします。これは、「Scala方法」」を実行する非常に美しい慣用的なWebフレームワークです。
Xitrum (私はその著者です)を見てください。リストされているすべてのものが提供されます。 ドキュメント は非常に広範囲です。 READMEから:
Xitrumは非同期でクラスター化されたScala NettyおよびHazelcast上のWebフレームワークおよびWebサーバー:
さらに2つのオプションを追加します。JAX-RSサポートが組み込まれたakkaと、単純にJAX-RSを直接使用する(おそらくJersey実装)。間違いなく他のものよりも「Scala-y」(パラメータとパスをバインドするための注釈に依存)よりも少ない間、JAX-RSは使用する喜びであり、最小限のフットプリントでWebサービスコーディングのすべての問題をきれいに解決します。私はakkaを介して使用したことはありませんが、継続ベースの実装により優れた拡張性が得られることを期待しています。
これまでのすべての良い答え。 Liftが好む点の1つは RestHelper です。これにより、短くてエレガントなAPIメソッドを非常に簡単に記述できます。さらに、Liftで実装する他のすべてのことは非常に簡単です。そうは言っても、Memcacheは必要ないかもしれません。
少し遅れましたが、 Bowler フレームワークを使用してREST APIを作成することをお勧めします。