24. 24
Spring Cloud Data Flow
Kafka
Aggregator,
Uploader
Redis-
Client
Pseudo-
Splitter
HTTP-Client
Redis-Client
Hadoop Cluster (YARN, HDFS)
SCDF
server
streamのパイプライン
やデプロイ状態を管理
Localに配置した
jarをデプロイ
アプリケーションの冗
長性はYARN(とHDFS)
が管理
25. 25
Spring Cloud Config, Spring Cloud Bus, Spring Cloud Netflix
Question:
「Instanceで保持したDB情報の更新をどのように行う?」
「Configのランタイムアップデートをどのように実現する?」
Answer:
Spring Cloud Config, Spring Cloud Netflix (Eureka), Spring Cloud Bus を
利用する。
• Spring Cloud Config
• 「アプリケーション毎に分散するapplication.yml の、中央集権管理機能を提供するもの」
• Eureka
• 「DNSのようなもの」
• Sring Cloud Bus
• 「アプリケーションの状態の変化を、他のアプリケーションに伝播させて伝える仕組みを
提供するもの」
26. 26
Spring Cloud Config, Spring Cloud Bus, Spring Cloud Netflix
Edge
ServerEvent
(ex. REST API)
Eureka
Server
http-client
Kafka
http://192.168.10.13:21234/management/bus/refresh
aggregator redis-client http-client http-client
RDB
ConfigServer
(Spring Cloud Bus)
http-client http-client http-client
“Who is http-client ?”
“192.168.10.13:21234”
Register
“http-client is
192.168.10.13:21234”
Request Resources
refresh refresh refresh
30. 30
ConsumerClient
ConsumerClient
PartitionとConsumerClientの関係
Topic
Data 1 Data 2 Data 3
Data 4 Data 5 Data 6
Data 7 Data 8 Data 9
Partitions = 3, ConsumerClient = 3
Topic
Partitions = 3, ConsumerClient = 1
Partition-0
Partition-1
Partition-2
Partition-0
Partition-1
Partition-2
Data 1 Data 2 Data 3
Data 4 Data 5 Data 6
Data 7 Data 8 Data 9
ConsumerClient
(ex. Processor App)
ConsumerClient
Throughput が3倍に