1. ホーム
  2. apache

Jersey、Apache Wink、JBoss RESTEasyから選ぶには?[クローズド]です。

2023-11-22 17:10:45

質問

今、聞いたのは アパッチウィンク と比較して、どのような違いがあるのだろうかと疑問に思っていました。 ジャージー JBoss RESTEasy . 他の2つができないことで、1つにできることは何ですか?

私たちは、主にそのシンプルさのために、いくつかの内部プロジェクトに Jersey を使用してきました。しかし、乗り換えを検討するほど他の 2 つが優れている点がよくわかりません。 どなたか、これらの各々が満たすニッチのユースケースをご存知ですか?

どのように解決するのですか?

JAX-RSの実装

ジャージー

  • リファレンス実装
  • 通常、最先端を行く
  • 真の非同期接続 (ウェブソケットなど) をサポートします。 雰囲気 または 2.0 バージョンを使用します。
  • Springと標準的なインジェクションコンテナ(例えば@Inject)のサポートを持っています。
  • Glassfishがそれをバンドルしています。
  • 他のJAX-RSプロジェクトより、はるかにモジュール化されています。
  • キックアスの URI ビルダー
  • サーブレットコンテナは必ずしも必要ではありません。
  • Grizzly サポート
  • Netty のサポート (ごく初期)。
  • Swagger のサポート
  • OAuth 2.0がないようなものです。他のライブラリを使用する必要があります。
  • MVC をサポートするために ビューアブル
  • java.net でホストされています (サイトが時々ひどく遅いのでマイナスです)。
  • ライセンスは、CCDL 1.1 と GPL-v2 に基づいています。商用利用する前に、ジャージーのライセンスを確認してください

https://jersey.github.io/license.html

レストイージー

Apache Wink <ストライク (使用したことはありません)

  • なぜこのプロジェクトが存在するのか、まったくわかりません。
  • おそらく、高性能に焦点を当てたものです。
  • HttpUrlConnection の上に構築されたクライアントを持っています (これはマイナスです...これは Spring RestTemplate ).
  • 基本的にWinkはいくつかのエンタープライズ企業で社内開発され、その後Apacheに譲渡されました。
  • サーブレットコンテナが必要です。

リストレット

  • 非常に強力だが、非常に複雑
  • 低レベルの REST サポートをいくつか提供
  • サーブレットコンテナを必要としない

Apache CXF

  • いくつかの興味深い WADL サポート。
  • JAX-RSとJAX-WSの再利用、または組み合わせ。
  • セキュリティのサポート
  • Spring との統合。
  • クライアントスタブ自動生成機能

その他の RPC ライクなシステム

メッセージキュー

非同期RPC

私の率直な意見

OPがRESTを求めたのは知っていますが、もしこれが内部コミュニケーションのためなら、要件がそれらのシステムにマッチするなら、従来のRESTではなく、メッセージキューか他の非同期RPC(Finagle)の使用を真剣に検討してください。

もし古典的な HTTP REST (外部) でなければならないのであれば、私なら次のどちらかを選びます。 RestEasy または ジャージー この2つのプロジェクトにマインドシェアの大部分が注がれているためです。

こちらもご覧ください。 Java 用の Rest クライアント?