Spring Cloudとは何ですか?長所と短所は何ですか?学習の順番は?

序文:

Spring Cloudは、分散システムでいくつかの一般的なパターンをすばやく構築するためのツール(構成管理、サービス検出、回路ブレーカー、インテリジェントルーティング、マイクロエージェント、制御バスなど)を開発者に提供します。分散システムの調整により定型的なパターンが生まれ、SpringCloudの開発者はこれらのパターンを実装するサービスとアプリケーションを迅速にサポートできます。これらは、開発者自身のラップトップ、ベアメタルデータセンター、CloudFoundryなどのホスティングプラットフォームなど、あらゆる分散環境でうまく機能します。

それには多くの特徴があります:

  1. Spring Cloudは、一般的な使用例とスケーラビリティメカニズムのカバレッジを使用して、すぐに使用できる優れたエクスペリエンスを提供することに重点を置いています。
  2. 分散/バージョン管理された構成
  3. サービスの登録と発見
  4. ルーティング
  5. サービス間の呼び出し
  6. 負荷分散
  7. ブレーカ
  8. 分散メッセージング

Spring Cloudは、一連のフレームワークの順序付けられたコレクションであり、Spring Bootの開発の利便性を利用して、サービスディスカバリ、サービスゲートウェイ、サービスルーティング、リンクトラッキングなどの分散システムの開発を簡素化します。Spring Cloudは繰り返しではありませんが、市場でより開発されたモジュールを統合してカプセル化し、それによって各モジュールの開発コストを削減します。言い換えると、Spring Cloudは、分散システムの構築に必要な「ファミリーバケット」を提供します。

また、Javaに関するさまざまな学習資料や学習ビデオもあります。必要な場合は、クリックして入力できます。コード:cszq、無料で入手できます

1. SpringCloudプロジェクトの場所

Sping CloudはSpringのトップレベルプロジェクトです。Springのトップレベルプロジェクトのリストは次のとおりです。

  • Spring IOプラットフォーム:システム展開に使用され、統合可能であり、最新のアプリケーションを構築するためのバージョンプラットフォームです。具体的には、maven依存関係を使用してSpringjarパッケージをインポートするときに機能します。
  • Spring Boot:製品レベルのSpringアプリケーションとサービスの作成を簡素化し、構成ファイルを簡素化し、組み込みWebサーバーを使用し、SpringCloudと組み合わせて展開できる多くのすぐに使用可能なマイクロサービス機能を含めることを目的としています。
  • Spring Framework:一般にSpringフレームワークと呼ばれ、オープンソースのJava / Java EEフル機能スタックアプリケーションフレームワークです。SpringBootなどの他のSpringプロジェクトも、このフレームワークに依存しています。
  • Spring Cloud:マイクロサービスツールキット。構成管理、サービスディスカバリ、サーキットブレーカ、インテリジェントルーティング、マイクロエージェント、分散システムの制御バスなどの開発ツールキットを開発者に提供します。
  • Spring XD:これは、Springバッチ、Springブート、SpringデータなどのSpringテクノロジーを組み合わせて、ビッグデータを収集および処理するランタイム環境(サーバーソフトウェア、非開発フレームワーク)です。
  • Spring Data:これは、データアクセスと操作のためのツールキットであり、jdbc、Redis、MongoDB、Neo4jなどのさまざまな種類のデータおよびデータベースアクセス関連テクノロジーをカプセル化します。
  • Spring Batch:バッチ処理フレームワークまたはバッチタスク実行マネージャーの機能には、タスクスケジューリング、ロギング/トラッキングなどが含まれます。
  • Spring Security:Springベースのエンタープライズアプリケーションシステムに宣言型のセキュリティアクセス制御ソリューションを提供できるセキュリティフレームワークです。
  • Spring Integration:エンタープライズアプリケーション統合(EAI / ESB)のプログラミングフレームワーク。サポートされている通信方法には、HTTP、FTP、TCP / UDP、JMS、RabbitMQ、Emailなどがあります。
  • Spring Social:ツールキットのセット、Twitter、Facebook、LinkedIn、GitHubなどの接続されたソーシャルサービスAPIのセット、それらは数十あります。
  • Spring AMQP:主にRabbitMQ操作をカプセル化するメッセージキュー操作用のツールキット。
  • Spring HATEOAS:ハイパーテキスト駆動型RESTWebサービスの実装をサポートするために使用される開発ライブラリです。
  • Spring Mobile:これはSpring MVCの拡張であり、携帯電話でのWebアプリケーションの開発を簡素化します。
  • Spring for Android:これはSpringフレームワークの拡張です。その主な目的は、Androidローカルアプリケーションの開発を簡素化し、RestサービスにアクセスするためのRestTemplateを提供することです。
  • Spring Web Flow:目標は、Webアプリケーションのページフローを管理するための最良のソリューションになることです。ページジャンプフローは個別に管理され、構成できます。
  • Spring LDAP:LDAPアクセスを簡素化するSpringのJdbcTemplateモードに基づくLDAPを操作するためのJavaツールキットです。
  • Spring Session:セッション管理用の開発ツールキットで、クラスター化されたセッション管理のためにセッションをredisなどに保存できます。
  • Spring Web Services:これはSpringベースのWebサービスフレームワークであり、SOAPサービス開発を提供し、さまざまな方法でWebサービスを作成できるようにします。
  • Spring Shell:単純なSpringベースのプログラミングモデルを使用して、SpringRooコマンドなどのコマンドを開発できるインタラクティブなシェルを提供します。
  • Spring Roo:Spring開発の補助ツールです。コマンドライン操作を使用して自動化プロジェクトを生成します。操作はRailsと非常によく似ています。
  • Spring Scala:Scala言語プログラミング用に提供されたSpringフレームワークのカプセル化(新しいプログラミング言語であるJavaプラットフォーム用のScalaは、2003年末/ 2004年初頭にリリースされました)。
  • Spring BlazeDS統合:Adobe Flex、BlazeDS、Spring、およびJavaテクノロジーを統合してRIAを作成できる開発RIAツールキット。
  • Spring Loaded:JavaプログラムとWebアプリケーションのホットデプロイメントを実装するために使用されるオープンソースツール。
  • Spring REST Shell:Restサービスのコマンドラインツールを呼び出し、コマンドラインを押してRestサービスを操作できます。

2つ、SpringCloudサブプロジェクト

ここに写真の説明を挿入

第三に、SpringCloudの現状

現在、中国でSpring Cloudテクノロジーを使用している企業は多くありませんが、SpringCloudが良くないからではありません。主な理由は次のとおりです。

  1. Spring Cloudには中国の文書が少なく、インターネット上の問題に対する解決策は多くありません。
  2. 国内の起業家企業の大多数はAli部門の従業員であり、Ali部門はDubboを使用してマイクロサービスアーキテクチャを構築しています。
  3. 大企業は基本的に独自の分散ソリューションを持っており、中小企業の多くはマイクロサービスを使用していないため、SpringCloudを採用する必要はありません。

ただし、マイクロサービスアーキテクチャはトレンドであり、SpringCloudはマイクロサービスソリューションのリーダーです。

第四に、SpringCloudの長所と短所

利点:

  1. サービス分割の細かさが細かくなり、リソースの再利用が容易になり、開発効率が向上します。
  2. 最適化されたサービスプランをより正確に策定し、システムの保守性を向上させることができます
  3. マイクロサービスアーキテクチャは分散型思考を採用し、Restfulなどの軽量通信がサービス間で使用されます。これはESBよりも軽量です。
  4. インターネット時代に適しており、製品の反復サイクルが短い

短所:

  1. マイクロサービスが多すぎてガバナンスコストが高いと、システムの保守に役立ちません
  2. 分散システム開発の高コスト(障害耐性、分散トランザクションなど)はチームに挑戦します

一般的に言って、メリットはデメリットを上回ります。現在、Spring Cloudは非常に完全な分散フレームワークのようです。現在、多くの企業がマイクロサービスを使用し始めており、SpringCloudのメリットは明らかです。したがって、マイクロサービスアーキテクチャを研究したい学生にとって、SpringCloudを学ぶことは良い選択です。

5、SpringCloudとDubboの比較

Dubboはサービスガバナンスのみを実装し、Spring Cloudはマイクロサービスアーキテクチャのすべての側面を実装し、サービスガバナンスは1つの側面にすぎません。以下の図と比較してみましょう。SpringCloudの
ここに写真の説明を挿入
方が包括的であるのに対し、Dubboはサービスガバナンスのみを実装し、個別に導入する必要がある他のモジュールを統合する必要があるため、学習コストと統合コストが増加します。

6、春の雲の学習ルート

SpringCloudはSpringBootに基づいているため、Spring Cloudを学習する前に、Spring Cloudのその後の学習を容易にするために、まずSpringBootの使用法を学習する必要があります。

とりあえずスプリングブーツについては説明しませんが、デフォルトでは誰もが基本的な基礎を持っています。フォローアップでは、スプリングブーツの説明を間接的に追加し、SpringMVCの使い方を説明しませんので、読者はSpringとSpringMVCを調べておく必要があります。

Springcloudの学習は、大きく4つの部分に分けることができます。

  • 最初の部分では、Spring Bootについて理解し、Spring Bootの基本的な知識を習得し、SpringCloudのフォローアップ入門の良い基盤を築きます。
  • Spring Cloudの紹介の第2部では、主にSpring Cloudの
    一般的なモジュールを紹介します。これには、サービスディスカバリ、サービス登録、構成センター、リンクトラッキング、例外処理などが含まれます。
  • 第3部のSpringCloud Advancedでは、大規模な分散システムでのトランザクション処理やスレッドの安全性などの問題を紹介し、サンプルプロジェクトを使用して完全なマイクロサービスシステムを構築する方法を説明します。
  • 4番目のパートはSpringCloud Advanced Partで、Spring Cloudのソースコードを分析し、SpringCloudに基づいて大規模な分散システムを展開する方法を説明します。

結論:

また、実際のJavaインタビューの質問や、Javaの学習資料や学習ビデオを多数まとめました。必要な場合は、クリックして入力してください。秘密のコード:cszqは無料で入手できます。
ここに写真の説明を挿入
ここに写真の説明を挿入

最後になりましたが、皆様のご活躍をお祈り申し上げます。

おすすめ

転載: blog.csdn.net/m0_45270667/article/details/108999252