applepie-umai / SpringFest2019

0 stars 0 forks source link

[システム間連携を担うSpring Integrationのエンタープライズ開発での活用] [ogawae] #14

Open ogawaeri opened 4 years ago

ogawaeri commented 4 years ago

[システム間連携を担うSpring Integrationのエンタープライズ開発での活用]

概要

既存システム活用のためのシステム間連携技術「Spring Integration」の使い方

このセッションに関連するキーワード

Spring Integration

セッションの内容

近年はオンプレとクラウドの連携が増加しており、連携のベストプラクティスをまとめた書籍Enterprise integration patternでは「非同期メッセージング」を用いた連携を推奨している。 ただし、この書籍には実装については触れられていない。 Spring Integrationを利用することで「非同期メッセージング」を実装ができるようになる。

hidouki_msg

(↑図の要素について) (参考)Busについて Busはメッセージングを「非同期を前提としたアプリケーション間連携の標準フレームワーク」とのこと https://www.atmarkit.co.jp/fdotnet/special/realsoa02/realsoa02_02.html (参考)非同期メッセージングの簡単な説明 https://ledsun.hatenablog.com/entry/2013/07/18/181044

システム間を非同期メッセージングで連携を行う

Spring Integrationではサーバ間の連携を「Message」として扱い、 メッセージ間を「Channel」で繋ぐという概念がある。

登場人物

SpringIntegration_img

実装のおおまかな流れ

1.pom.xmlで依存関係を設定 2.mainメソッド作成 3.spring-integration.xmlの設定 input-channelと output-channelの定義など

実際に合った問題点/解決方法

問題 対処
連携コンポーネントが増えすぎた 業務処理のみの違いのときは共通化を実施
Endpointが増えすぎた パーツ化(いくつかのエンドポイント間の処理をまとめるかんじでした)
ログ出力が複雑 Interceptorを利用
ServiceActivatorを作るのが大変 拡張クラスを作成し、メタ情報部分を外だしする

考察したこと

疑問点

講義資料URL

(Enterprise integration pattern) https://en.wikipedia.org/wiki/Enterprise_Integration_Patterns (Spring Integration) https://spring.io/projects/spring-integration https://qiita.com/akichikn/items/63cb9b82212b6e046419

fukumotom commented 4 years ago

Busはメッセージングを「非同期を前提としたアプリケーション間連携の標準フレームワーク」とのこと

Message Busの説明ですね。あまり馴染みのない単語です。非同期でのアプリケーション間連携の仕組みの実装方法についてのセッションと理解しました。

iPasSのboomiを触ったので、そのソースコード版のようなものと感じました。

GUIベースのツールもあるなか、どういった基準で選択されているのか気になりました。(色々カスタマイズ要件とかもあるのかな?)

ogawaeri commented 4 years ago

Busはメッセージングを「非同期を前提としたアプリケーション間連携の標準フレームワーク」とのこと

Message Busの説明ですね。あまり馴染みのない単語です。非同期でのアプリケーション間連携の仕組みの実装方法についてのセッションと理解しました。

iPasSのboomiを触ったので、そのソースコード版のようなものと感じました。

GUIベースのツールもあるなか、どういった基準で選択されているのか気になりました。(色々カスタマイズ要件とかもあるのかな?)

セッション内容は上記であっています!「メッセージング」も実装では抽象化され「Message」で表現されています。 GUIかSpring Integrartionか、どういった基準かは"管理する人が誰か"による気がしますが、分からないですね。。