質問

私の特定の仕事分野ではそれが必要ないため、私はこの略語について何かを学ぶために個人的なキャリアに投資することに抵抗してきました。私は、これに時間を費やす価値があるのか​​、それとも、これもいつかは廃れるコンピューティングの流行なのか、興味があります。

役に立ちましたか?

解決

これは、しばらくの間、「これからはすべてを SOA にする必要がある」と言う人たちが現れるという意味での流行です。そしてしばらくすると、SOA の良い部分は残りますが、物議を醸すものや有用性の低いものは消え去ります。

他のヒント

それは両方です。

サービス指向アーキテクチャー, 実際のエンジニアリングの観点から見ると、メリットとデメリットがあります。これは疎結合であり、これは良いことです。なぜなら、「小さな部分を緩く結合する」というのが Unix で機能した堅実な設計戦略であり、ソフトウェア エンジニアの間で多くの支持者がいるからです。

ただし、他のソフトウェアと同様に、非常に慎重な設計が必要です。他のものに問題があるのと同じように、SOA にも問題がある可能性があります。この分野は新しいため、ベスト プラクティスはまだ具体化されていません。また、通常、他のアーキテクチャ アプローチよりもはるかに悪いパフォーマンスを示します。現時点では、ほとんどの大手企業 (Google など) は、これが異なるシステム間の相互運用に最適であると考えているようです ( API 実質的には SOA の定義です)、単一システムの内部アーキテクチャではありません (独自のシステムを使用します) プロトコルバッファ そのために)。

SOA エンジニアリングのことをまったく知らないマネージャーが流行るのです。彼らは、a) 斬新でホットな響き、b) 「サービス」という言葉が含まれているため、役に立つと感じられるという理由で気に入っています。彼らの半数に「サービスデスク」と「サービス指向アーキテクチャ」の違いは何かと尋ねても、答えるのは難しいでしょう。

これは、ツール ベンダーにとっては (ESB など) 多くのものを購入させ、コンサルタントにとっては請求対象時間数の請求をさせ、Gartner にとってはマジック クアドラントをさらに増やすための素晴らしい方法です。

それは実際には「流行」ではないと思います。これは、ネットワークの登場以来存在していたアイデアをさらに進化させたものです。分散コンポーネント。CORBA と DCOM はどちらも独自の分散コンポーネント アーキテクチャでした。SOA は、ファイアウォールのポート 80 を通過できる共通のワイヤ プロトコルとして HTTP を使用します。XML、WSDL などの他のすべての標準。これらをクライアントが発見可能にして自動的に理解できるようにする試みです。すべての背後にあるアイデアを理解し、誇大宣伝に巻き込まれすぎないことが重要です。

AmazonやYahoo!などでも使えるようです。私たちのような凡人にとっても何かがあるかもしれません。

いくつかの懸念があると思います。

レイテンシー には分散コンポーネントが付属しています。すべてがサービスであり、より適切に分離するためにエンタープライズ サービス バスを介して通信する場合、どうすれば高速化できるでしょうか?私たちは、企業を切り離した美しい豚を生み出す危険にさらされているかもしれません。

デザインって難しいですね。サービスを構成するものについては誰も同意できません。あなたの企業は何台持つべきですか?十数?何百も?何千人?どれくらい粒度が細かい必要があるのでしょうか?

雇用主が従来、プロジェクト モデルによって仕事に資金を提供してきた場合、長寿命のサービスをその型にどのように適合させることができるでしょうか?

SOA について認識すべき最も重要なことは、SOA は実際にはテクノロジーではなく、統合に追加の労力を必要とする現在の標準のアプリケーション群ではなく、IT インフラストラクチャを結合可能な再利用可能なサービス群として編成する方法であるということです。必要に応じて。

もちろん、これを機能させるにはテクノロジーが必要ですが、そのように IT を (再) 整理しなければ、そのテクノロジーを「学習」したり購入したりしても意味がありません。

SOA の基本的な考え方は健全であり、今後も存続すると思います (ただし、あらゆる状況で役立つわけではありません)。一方、SOA-as-a-technology は、流行語としての流行は消え去ります。

個人的には流行だと思います。クラウドは現時点ではメインフレームと同様に巨大ですが、その後デスクトップが登場し、それを引き継ぎました。さて、ビッグアイアンに戻ります...

私は医療機器およびソフトウェアの製造会社で働いていますが、ここでは SOA は流行ではなく、必要不可欠なものです。レガシー システムと、このようなかなりオープンなシステムを作成するコストのせいで、この分野の進歩は遅れています。

この議論の別の角度は、あなたの会社が一連の製品を作成するつもりなのか、それとも単一の製品だけを作成するつもりなのかということです。

コンセプトやアイデアに関しては、流行などというものはありません。誰かがそれを考え、それが良い解決策であることが判明した場合、それは流行ではありません。フェラーリを買って、ハンドブレイクをオンにしてダートトラックを走るなら、もちろんそれは流行です。今日、疎結合は極めて重要です。顧客と直接仕事をしたことのある経験豊富なコンサルタントやプログラマーなら誰でも、最初の分析で議論されたように、物事は常に変化しており、永遠に存続するものは何もない、と言うでしょう。私の経験では、SOA 原則はその価値を証明しました。他のプログラマと協力していた私の顧客の 100% が、ある時点で他のプログラマが最初からやり直すことにした、または特定のリクエストは実装できないと言い出したと言いました。SOA は、困難な顧客にとって最適なソリューションです。ほとんどの顧客は困難ですが、しなければならないのは、尺度の感覚を維持することです。ESB は、30 か国に 100 の支店を持ち、急速な成長を計画している場合に適しています。私の意見では、最近のいわゆるソフトウェアコンサルタントやソフトウェアセールスマンは、人生でコード行を一度も書いたことがなく、分析、開発、配信、変更要求管理、およびすべてのループのプロセスを自分自身で見たことがない人たちです。途中で切り株に遭遇したため、本物のソフトウェア担当者の目には、彼らはでたらめなことを話しているように見えます。もちろん彼らはインチキなことを話しますが、それは彼らが何を話しているのか分かっていないからであり、話していることがインチキだからではありません。時間が経ち、Web ベースのアプリやクラウド コンピューティングがますます引き継ぎ、多数のプラットフォーム、オペレーティング システム、プログラミング言語、そしてもちろんシステム間通信に代わるものがないため、SOA はますます強力になるでしょう。プログラマー。その言葉が好きだからという理由だけでその言葉を好む他人の無知な大騒ぎに惑わされないでください。

遅さの問題に関しては、次のヒントを提供します。JSON を介した通信を試してみてください。目を疑うでしょう ;)。

「サービス指向アーキテクチャ」のことを指していると仮定すると、それが役立つアプリケーションはありますが、他の流行と同じように、来ては消えていくものです。この種の他の市場と同様に、スキルが不足する時期が存在します。適切なタイミングで参加できれば、非常にうまく終了できます。主流メディアでこの映画が大々的に宣伝される頃には、おそらく手遅れだろう。他のトム、ディック、ハリーは、そこにあるあらゆる市場機会に飛びつくことになるだろうから。

SOA が関連する分野で働いている場合は、ぜひ SOA についてよく理解してください。

多くの点で、これは分散アプリケーションと同じ概念です。分散アプリケーションは、かなりの世代のテクノロジ (SNA、Sun RPC、DCE、CORBA、EJB、DCOM、そして現在の Web サービス) で流行ったり廃れたりしてきました。

別の見方では、オーケストレーション システムをコンポーネントをアプリケーション全体に統合する手段として見ることもできます。有用に設計されたサービスを公開する一連のコンポーネントがある場合は、優れた柔軟なアプリケーション アーキテクチャを構築できます。

問題が解決すれば、SOA の明白なキラー アプリはまさにその通りになるでしょう。SOA の読み方を知るために不当なコンサルティング料を請求できる窓口は、おそらく今では閉まりつつあると思います。それを何かに使用したい場合、または他のスキルや経験と組み合わせて何かを販売可能にする可能性のある有益な相乗効果を確認したい場合は、それを学びましょう。それ以外の場合は、概要を把握し、必要に応じてさらに深く掘り下げてください。

「流行」が「短期間に非常に熱狂的に取り上げられるファッション」である場合、流行です」ということであれば、SOA は流行ではありません。SOA は、SOAP ベースの RPC (つまり、SOAP ベースの RPC) 以来、しばらく存在しています。XML Web サービス)。それからかなりの年月が経ちましたが、SOA は消滅するのではなく、WCF の形でのみ繁栄しました。したがって、SOA は決して流行ではないと言えます。

それは本当に流行ではないと思います。他のシステムと対話できるオープン システムを作成することは、クローズド システムを作成するよりも難しいというだけです。それは常に真実だと思います。

また、XML Soap のような標準化された「プロトコル」を使用してデータを転送する場合、常にパフォーマンスが低下します。

SOA は悪いテクノロジではありません。実際、SOA は通常、間違って実装され、誤解されていると思います。実際に SOA が最適なシナリオがあります。

ただし、SOA を避けるべき場所がいくつかあります。参考までに、SOA の欠点の 1 つは、通常、遅いことです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top