私は最近から移行について書きました Oracle ADF / APEXテクノロジー、ただし、この記事のトピックであるApache Strutsなど、独自の制限がある他のプラットフォームがあります。 Strutsは最近、Equifaxハックが パッチ未適用のStrutsセキュリティ脆弱性、それは、企業がStrutsフレームワークから移行する可能性がある主な理由のXNUMXつではありません。

Strutsが成熟したフレームワークであることは疑いの余地がなく、まだ維持されていますが、少なくとも他の選択肢と比較して、このプラットフォームで多くの新しいプロジェクトが開始されることはまずありません。

私はStruts環境で働いた経験があり、おそらくそこにある多くのレガシーアプリケーションに似ていました-時間や忍耐を持っていない多くの異なる開発者によってパッチされた大きなモノリシック環境未払の技術的負債から深く根付いた問題を修正するため。 これらの問題は、長年にわたって製品の機能になっていた欠陥を引き起こしただけでなく、パフォーマンスのボトルネックをもたらしました。これは通常、サーバーにハードウェアを追加することで解決しました。

私の以前の経験からの前述の問題は、必ずしもStrutsの問題ではありませんが、レガシーアプリケーションの保守ではより一般的なものです。 ただし、Strutsから最新のものにアップグレードする理由はたくさんあります。

  • Strutsは、プレゼンテーション層でのJSPの使用を強制するなど、間違った方法で比較的緊密に結合されたフレームワークです。
  • 一方、ビジネスオブジェクトレイヤーは標準化されておらず、チームが適切であると判断して実装する必要があるため、オーバーヘッドとメンテナンスが増加します
  • MVCフレームワークであるにもかかわらず、モデル、ビュー、コントローラーの区分は、他の代替フレームワークほどきれいではありません。
  • Strutsは常に 市場シェアを失う、および迅速な開発に利用できる多くのプラグインがありますが、よりサポートされている他のプラットフォームはより良いオプションを提供します

なぜ修理やアプリケーションのオーバーホールではなく移行が必要なのですか?

Strutsのレガシープラットフォームの多くは非常に大きいため、リファクタリングは単純に妥当な選択肢ではありません。最初から再構築するのに、少なくとも同じくらいの時間がかかり、そうすることで新しい機会が開かれます。 もちろん、Java EE環境から.Netのようなものに移行する可能性は低いため、JVMアーキテクチャに関連するこれらのトピックのいくつかを保持します。

考慮すべきアーキテクチャの最新化を次に示します。

  • マイクロサービス– Java、Scala、Kotlin、Clojure、Pythonを自由に組み合わせて自由に組み合わせて使用​​できます。また、今後疎結合アプリケーションを自由にアップグレードできる柔軟性を残します。 Strutsは一種のマイクロサービスアーキテクチャで実行できますが、プレゼンテーション層でJSPとどのように結合されるかにより、Strutsは理想的な候補ではありません。
  • DevOps – DockerやJenkinsなどの一般的に使用されているプラ​​ットフォームで、継続的な統合とエンドツーエンドの自動化テストを実装します
  • Apache Kafka、Amazon Kinesis、Rabbit MQなど、より新しいものにメッセージングサービスをアップグレードします。
  • 検索エンジンのアップグレード– SolrはレガシーStrutsアプリケーションで一般的に使用されますが、シーマレスJSONのようなものに更新することには多くの利点があります Elasticsearch

Aptudeで前進し続ける

Aptudeは、個人のITプロフェッショナルサービス会社です。 お客様に最高のリソースを継続的にコストを抑えて提供します。

私たちのサポートサービスは、あなたの上級ITスタッフを日常のメンテナンス問題の圧倒的な負担から解放します。 彼らはあなたが待ち望んでいたそれらの新しいプロジェクトやアプリケーションを立ち上げる時間があります。 簡単に言えば、リソースを解放し、コストを抑えることができます。 私たちの排他的なサービスについて議論するために簡単なチャットをしましょう。

お問い合わせ

Struts交換オプション– Spring MVC

最も可能性の高い候補はSpring MVCで、これはJVMベースのフレームワークとして人気を博しています。 Springはサーブレットスタックを中心に設計されており、簡単な構成と展開に重点を置いているため、移行作業をスピードアップできます。

ここ数年の私の雇用機会は、Kafka、Elasticsearch、Docker、Jenkinsのような他のプラットフォームも取り入れながら、Springに大きく依存するテクノロジーのほぼ同じ混合物でした。 過去にStrutsとSpringの両方を使用した経験から、Springベースのアプリケーションが明確に選好されていることを間違いなく証明できます。

StrutsからSpringに移行する理由はいくつかあります。

  • 多くのプラグインオプションとSpring Bootの組み込みによる迅速な開発
  • モデル、ビュー、コントローラーのより明確な分離
  • Web層の統合の改善とテストの実装の簡素化
  • プレゼンテーションレイヤーテクノロジーと連携できるSpringは、ビューとはまったく関係ありません。APIをセットアップし、必要なフロントエンドフレームワークを使用するだけです。
  • 優れた将来の保証-Strutsの使用が減少しているため、将来的には段階的に廃止され、メジャーアップデートの受信が停止されます。 ゲームを先取りし、より広くサポートされているものに移行することもできます。

Springを使用して従来のStrutsアプリケーションを再構築または移行することは、思っているほど難しいタスクである必要はありません。 もちろん、大規模なエンタープライズアプリケーションでは特に多くの作業が必要になりますが、Spring Bootなどのツールは多くの無料のリソースを提供し、展開を簡素化します。

最先端に住みたい人のために

もちろん、Springが唯一の選択肢ではありません。企業は、最先端と見なされる可能性のある非標準プラットフォームの実装の先駆者になりたいと思うかもしれません。 新しいトレンドセッターになりたい人のために、いくつかの他の代替手段をお読みください。

MEANスタック

MongoDB、Express.js、AngularJS、およびNode.jsで構成されるMEANスタックは、もうXNUMXつの優れたオプションです。 スタックがこれらのテクノロジーのみに依存していることを示す頭字語にもかかわらず、コンポーネントは他のJavascriptベースのフレームワークに置き換えることができ、実装が大きく異なる場合があります。 Angularのファンではありませんか? ReactやVuejs(私の個人的なフロントエンドのお気に入り)のようなものと交換してください。

このオープンソーススタックはJavascriptをエンドツーエンドで使用するため、複数の言語の使用に起因する複雑さを最小限に抑えます。 また、組織は異なる言語のスペシャリストを雇う必要がないため、コスト面のメリットにもつながります。

MEANはスタートアップに特に適しています。ViditSaxenaがMediumの投稿で次のように述べています。

既に行われた基本的な作業を変更する必要はありません。」シームレスな拡張性を実現するこの機能は、ビジネスオーナーにとって非常に重要です。

結論

この記事をオンラインで調査した結果、Strutsとその機能と競合他社に関する多くの意見が異なりました。 実際、いくつかの記事は、 春よりもStrutsをお勧めします。 一部の人々はこのトピックについて意見を述べることができますが、場合によっては、作家がStrutsを推奨する理由を見つけるために本当に一生懸命に努力しているようです。 たとえば、上でリンクしたその記事では、StrutsのセールスポイントのXNUMXつはAJAXのサポートです。ライターは正確に間違っているわけではありませんが、AJAXをサポートしていないプラットフォームも知りたいです。 それは、流しの利点は水を排出することであると言っているようなものです。

完璧なフレームワークの選択はありませんが、ほとんどの技術者はStrutsが時代を示しており、Springなどのオプションがはるかに優れたソリューションであることに同意する傾向があると思います。 新しい製品を開発するほとんどの技術がStrutsから遠ざかりつつあることを直接目にしましたが、使用統計は確かにStrutsに有効性を追加します。

何に取り組んでいますか?

インテリジェントな技術ソリューションをお探しですか? 今後のプロジェクトに関する相談をお探しですか? サービスの見積もりが必要ですか? Aptude'sに連絡する 経営陣 直接。 XNUMX通の小さなメールで生産性を急速に向上できるのは驚くべきことです。

ウダイ・メタ

パートナーの管理

メールUDAY

ガイ・デローサ

パートナーの管理

電子メールの男

スリナス・パレパリー

パートナーの管理

メールスリナート

Aptudeで前進し続ける

Aptudeは、個人のITプロフェッショナルサービス会社です。 お客様に最高のリソースを継続的にコストを抑えて提供します。

私たちのサポートサービスは、日常のメンテナンスの問題という圧倒的な負担からシニアITスタッフを解放します。 今、彼らはあなたが待っていたそれらの新しいプロジェクトとアプリケーションを立ち上げる時間を持っているでしょう。 簡単に言うと、リソースを解放してコストを抑えることができます。 私たちの排他的なサービスについて話し合うために簡単なチャットをしましょう。

お問い合わせ