Trampoline - Spring Bootアプリケーションをローカルに管理する

Trampoline – Spring Bootアプリケーションのローカル管理

1. トランポリンの概要

歴史的に、実行時のシステムの状態を理解する簡単な方法は、ターミナルで手動で実行することでした。 最良のシナリオでは、スクリプトを使用してすべてを自動化します。

もちろん、DevOpsの動きはそのすべてを変えました。幸いなことに、私たちの業界はそのアプローチをはるかに超えて動きました。 Trampoline is one of the solutions that solve this problem (for Unix and Windows users) in the Java ecosystem.

このツールは、クリーンで新鮮なユーザーインターフェイスのおかげで、Spring Bootとaims to help Spring Cloud developers in their daily development routineの上に構築されています。

その機能の一部を次に示します。

  • GradleまたはMavenをビルドツールとして使用してインスタンスを開始する

  • Spring Bootインスタンスを管理する

  • 起動段階でVM引数を構成する

  • デプロイされたインスタンスの監視:メモリ使用量、ログ、およびトレース

  • 著者にフィードバックを提供する

このかなりの記事では、トランポリンが解決しようとしている問題を確認し、実際にそれを見ていきます。 新しいサービスの登録とそのサービスの1つのインスタンスの開始をカバーするガイド付きツアーに参加します。

image

2. マイクロサービス:単一展開のデッド

すでに説明したように、単一のデプロイメントユニットを使用してアプリケーションがデプロイされていた時代は終わりました。

これにはプラスの結果があり、残念なことにマイナスの結果もあります。 Spring BootとSpring Cloudはこの移行に役立ちますが、注意が必要な副作用があります。

The journey from monoliths to microservices has introduced a huge improvement to the way developers structure their applications

私たちが知っているように、30のクラスのセットでプロジェクトを開き、パッケージ間で適切に構造化され、それに対応するユニットテストで開くことは、物事が簡単に複雑になる膨大なクラスのモンスターコードベースを開くことと同じではありません。

それだけでなく、懸念の再利用性、分離、分離がこの進化の恩恵を受けています。 利点はよく知られていますが、いくつか挙げてみましょう。

  • 単一責任の原則–保守性とテストの観点から重要

  • 回復力-1つのサービスの障害が他のサービスに影響を与えない

  • 高いスケーラビリティ-要求の厳しいサ​​ービスを複数のインスタンスに展開できます

ただし、マイクロサービスアーキテクチャを使用するときは、特にネットワークのオーバーヘッドと展開に関して、いくつかのトレードオフに直面する必要があります。

ただし、展開に焦点を当てると、we lost one of the monolith’s advantages – the single deploymentです。 実稼働環境でそれを解決するために、私たちはそこでの生活を助け、楽にするCDツールのセット全体を用意しています。

3. トランポリン:最初のサービスの設定

このセクションでは、トランポリンでサービスを登録し、利用可能なすべての機能を紹介します。

3.1. 最新リリースをダウンロード

Trampolineリポジトリに移動すると、releases sectionで、公開されている最新のリリースをダウンロードできます。

次に、たとえばmvn spring-boot:runor./gradlew(またはgradle.batbootRunを使用してトランポリンを起動します。

最後に、UIはhttp://localhost:8080でアクセスできます。

3.2. 登録サービス

トランポリンを起動して,を実行したら、Settingsセクションに移動して、最初のサービスを登録できるようにします。 トランポリンのソースコードには、マイクロサービスの2つの例があります。microservice-example-gradlemicroservice-example-maven.https://github.com/ErnestOrt/Trampolineです。

サービスを登録するには、次の情報が必要です:name*default port*pom or build location*build tool*actuator prefix,、およびVM default arguments

Mavenをビルドツールとして使用する場合は、最初にMavenの場所を設定する必要があります。 ただし、Gradleラッパーを使用することにした場合は、microservicesフォルダーに配置する必要があります。 他に何も必要ありません。

この例では、次の両方を設定します。

image

 

いつでも、infoボタンをクリックしてサービス情報を確認したり、trashボタンをクリックしてサービス情報を削除したりできます。

最後に、これらすべての機能を利用できるようにするための唯一の要件は、Spring Bootプロジェクトにactuator starter(例についてはスニペットを参照)を含めることと、よく知られたロギングを介して/logfileエンドポイントを含めることです。プロパティ:


    org.springframework.boot
    spring-boot-starter-actuator

3.3. サービスインスタンスの管理

これで、Instancesセクションに移動する準備が整いました。 ここでは、サービスインスタンスを開始および停止し、それらのステータス、トレース、ログ、およびメモリ消費を監視することができます。

このチュートリアルでは、以前に登録した各サービスの1つのインスタンスを開始します。

image

===

3.4. ダッシュボード

最後に、Dashboardセクションの概要を簡単に説明します。 ここでは、コンピューターのメモリ使用量や登録または起動されたサービスなど、いくつかの統計を視覚化できます。

設定セクションで、必要なMaven情報が導入されているかどうかを確認することもできます。

image

===3.5. Feedback

最後になりましたが、Feedbackボタンを見つけると、GitHubリポジトリにリダイレクトされ、問題を作成したり、質問や拡張機能を提起したりできます。

image

==4.結論

このチュートリアルでは、トランポリンが解決しようとしている問題について説明しました。

また、その機能の概要と、サービスの登録方法と監視方法に関する短いチュートリアルも示しました。

最後に、this is an open source projectとあなたが貢献することを歓迎していることに注意してください。