Movatterモバイル変換
[0]
ホーム
URL:
画像なし
夜間モード
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
kidach1
PDF, PPTX
25,453 views
大規模Node.jsを支える ロードバランスとオートスケールの独自実装
東京Node学園祭2015http://nodefest.jp/2015/#!/schedule
Engineering
◦
Related topics:
Node.js Development
•
Read more
56
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 77
2
/ 77
3
/ 77
4
/ 77
5
/ 77
6
/ 77
7
/ 77
8
/ 77
9
/ 77
10
/ 77
11
/ 77
12
/ 77
13
/ 77
14
/ 77
15
/ 77
16
/ 77
17
/ 77
18
/ 77
19
/ 77
20
/ 77
21
/ 77
22
/ 77
23
/ 77
24
/ 77
25
/ 77
26
/ 77
27
/ 77
28
/ 77
29
/ 77
30
/ 77
31
/ 77
32
/ 77
33
/ 77
34
/ 77
35
/ 77
36
/ 77
37
/ 77
38
/ 77
39
/ 77
40
/ 77
41
/ 77
42
/ 77
43
/ 77
44
/ 77
45
/ 77
46
/ 77
47
/ 77
48
/ 77
49
/ 77
50
/ 77
51
/ 77
52
/ 77
53
/ 77
54
/ 77
55
/ 77
56
/ 77
57
/ 77
58
/ 77
59
/ 77
60
/ 77
61
/ 77
62
/ 77
63
/ 77
64
/ 77
65
/ 77
66
/ 77
67
/ 77
68
/ 77
69
/ 77
70
/ 77
71
/ 77
72
/ 77
73
/ 77
74
/ 77
75
/ 77
76
/ 77
77
/ 77
Recommended
PPTX
分散トレーシングAWS:X-Rayとの上手い付き合い方
by
Recruit Lifestyle Co., Ltd.
PDF
こんなに使える!今どきのAPIドキュメンテーションツール
by
dcubeio
PDF
Azure App Service Overview
by
Takeshi Fukuhara
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
PDF
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
PDF
AWSからのメール送信
by
Amazon Web Services Japan
PDF
インフラエンジニアの綺麗で優しい手順書の書き方
by
Shohei Koyama
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
PDF
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
by
gree_tech
PDF
Kongの概要と導入事例
by
briscola-tokyo
PPTX
Amazon EKS によるスマホゲームのバックエンド運用事例
by
gree_tech
PDF
イマドキ!ユースケース別に見るAWS IoT への接続パターン
by
seiichi arai
PDF
大規模サービスにおける価値開発の“これまで”と“将来”~新たな“じゃらんnet”のチャレンジに関して~
by
Recruit Lifestyle Co., Ltd.
PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
SharePoint 開発でできること 2019年9月版
by
Hiroaki Oikawa
PPTX
情シス必要論
by
Mitsuhiro Yamashita
PDF
DockerとPodmanの比較
by
Akihiro Suda
PPTX
ぱぱっと理解するSpring Cloudの基本
by
kazuki kumagai
PDF
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
by
Yasuharu Nishi
PDF
それはYAGNIか? それとも思考停止か?
by
Yoshitaka Kawashima
PPTX
規模の見積もり WACATE 2016 winter
by
Tomoaki Fukura
PDF
AWS X-Rayによるアプリケーションの分析とデバッグ
by
Amazon Web Services Japan
PDF
例外設計における大罪
by
Takuto Wada
PPTX
GraphQLのsubscriptionで出来ること
by
Shingo Fukui
PDF
Fluentdのお勧めシステム構成パターン
by
Kentaro Yoshida
PPTX
Redisの特徴と活用方法について
by
Yuji Otani
PDF
AWS初心者向けWebinar AWS上でのDDoS対策
by
Amazon Web Services Japan
PDF
WebSocket / WebRTCの技術紹介
by
Yasuhiro Mawarimichi
PDF
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
by
モノビット エンジン
PDF
Wakamonog6 “ISPのネットワーク”って どんなネットワーク?
by
Satoshi Matsumoto
More Related Content
PPTX
分散トレーシングAWS:X-Rayとの上手い付き合い方
by
Recruit Lifestyle Co., Ltd.
PDF
こんなに使える!今どきのAPIドキュメンテーションツール
by
dcubeio
PDF
Azure App Service Overview
by
Takeshi Fukuhara
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
PDF
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
PDF
AWSからのメール送信
by
Amazon Web Services Japan
PDF
インフラエンジニアの綺麗で優しい手順書の書き方
by
Shohei Koyama
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
分散トレーシングAWS:X-Rayとの上手い付き合い方
by
Recruit Lifestyle Co., Ltd.
こんなに使える!今どきのAPIドキュメンテーションツール
by
dcubeio
Azure App Service Overview
by
Takeshi Fukuhara
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
AWSからのメール送信
by
Amazon Web Services Japan
インフラエンジニアの綺麗で優しい手順書の書き方
by
Shohei Koyama
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
What's hot
PDF
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
by
gree_tech
PDF
Kongの概要と導入事例
by
briscola-tokyo
PPTX
Amazon EKS によるスマホゲームのバックエンド運用事例
by
gree_tech
PDF
イマドキ!ユースケース別に見るAWS IoT への接続パターン
by
seiichi arai
PDF
大規模サービスにおける価値開発の“これまで”と“将来”~新たな“じゃらんnet”のチャレンジに関して~
by
Recruit Lifestyle Co., Ltd.
PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
SharePoint 開発でできること 2019年9月版
by
Hiroaki Oikawa
PPTX
情シス必要論
by
Mitsuhiro Yamashita
PDF
DockerとPodmanの比較
by
Akihiro Suda
PPTX
ぱぱっと理解するSpring Cloudの基本
by
kazuki kumagai
PDF
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
by
Yasuharu Nishi
PDF
それはYAGNIか? それとも思考停止か?
by
Yoshitaka Kawashima
PPTX
規模の見積もり WACATE 2016 winter
by
Tomoaki Fukura
PDF
AWS X-Rayによるアプリケーションの分析とデバッグ
by
Amazon Web Services Japan
PDF
例外設計における大罪
by
Takuto Wada
PPTX
GraphQLのsubscriptionで出来ること
by
Shingo Fukui
PDF
Fluentdのお勧めシステム構成パターン
by
Kentaro Yoshida
PPTX
Redisの特徴と活用方法について
by
Yuji Otani
PDF
AWS初心者向けWebinar AWS上でのDDoS対策
by
Amazon Web Services Japan
PDF
WebSocket / WebRTCの技術紹介
by
Yasuhiro Mawarimichi
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
by
gree_tech
Kongの概要と導入事例
by
briscola-tokyo
Amazon EKS によるスマホゲームのバックエンド運用事例
by
gree_tech
イマドキ!ユースケース別に見るAWS IoT への接続パターン
by
seiichi arai
大規模サービスにおける価値開発の“これまで”と“将来”~新たな“じゃらんnet”のチャレンジに関して~
by
Recruit Lifestyle Co., Ltd.
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
SharePoint 開発でできること 2019年9月版
by
Hiroaki Oikawa
情シス必要論
by
Mitsuhiro Yamashita
DockerとPodmanの比較
by
Akihiro Suda
ぱぱっと理解するSpring Cloudの基本
by
kazuki kumagai
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
by
Yasuharu Nishi
それはYAGNIか? それとも思考停止か?
by
Yoshitaka Kawashima
規模の見積もり WACATE 2016 winter
by
Tomoaki Fukura
AWS X-Rayによるアプリケーションの分析とデバッグ
by
Amazon Web Services Japan
例外設計における大罪
by
Takuto Wada
GraphQLのsubscriptionで出来ること
by
Shingo Fukui
Fluentdのお勧めシステム構成パターン
by
Kentaro Yoshida
Redisの特徴と活用方法について
by
Yuji Otani
AWS初心者向けWebinar AWS上でのDDoS対策
by
Amazon Web Services Japan
WebSocket / WebRTCの技術紹介
by
Yasuhiro Mawarimichi
Viewers also liked
PDF
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
by
モノビット エンジン
PDF
Wakamonog6 “ISPのネットワーク”って どんなネットワーク?
by
Satoshi Matsumoto
PDF
スマホアプリにおけるマルチプレイアクションゲーム開発の実例紹介
by
aktsk
PDF
Node.jsで対戦ゲーム作ったよ
by
Yuusuke Takeuchi
PPTX
The State of JavaScript (2015)
by
Domenic Denicola
PDF
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
by
Recruit Technologies
PPTX
冗長構成で定価100万以下バラクーダ ロードバランサー
by
BarracudaJapan
PDF
Layer 4 Load Balancer (NAT, IP Tunnelling, DR)
by
Kota Uchida
PDF
Node.jsのオートスケールをFRPで管理する
by
kidach1
PDF
마이크로소프트 앱 플랫폼을 이용한 어플리케이션 개발과 배포
by
Dae Kim
PDF
Android nodejs binary-transfer_130531ss
by
ts170
PDF
[Tokyo NodeFest 2015] Hardware Hacking for Javascript Developers
by
Tomomi Imura
PPTX
TV連動サービスのリアルタイム通知を支える技術
by
Tsuyoshi Torii
PDF
unassert - encourage reliable programming by writing assertions in production
by
Takuto Wada
PDF
THE OPEN
by
Yoshihiro Furukawa
PPTX
Aws 2014 lt
by
Yoshihiro Furukawa
PDF
OSC2010 TOKYO/Spring Asterisk Seminar
by
Kenichi 深海
PDF
World Cup Marketing 2014
by
Viddyad
PDF
Va tutorial
by
yg0808
PDF
What Teens Want Beinggirl Pres
by
Dave Knox
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
by
モノビット エンジン
Wakamonog6 “ISPのネットワーク”って どんなネットワーク?
by
Satoshi Matsumoto
スマホアプリにおけるマルチプレイアクションゲーム開発の実例紹介
by
aktsk
Node.jsで対戦ゲーム作ったよ
by
Yuusuke Takeuchi
The State of JavaScript (2015)
by
Domenic Denicola
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
by
Recruit Technologies
冗長構成で定価100万以下バラクーダ ロードバランサー
by
BarracudaJapan
Layer 4 Load Balancer (NAT, IP Tunnelling, DR)
by
Kota Uchida
Node.jsのオートスケールをFRPで管理する
by
kidach1
마이크로소프트 앱 플랫폼을 이용한 어플리케이션 개발과 배포
by
Dae Kim
Android nodejs binary-transfer_130531ss
by
ts170
[Tokyo NodeFest 2015] Hardware Hacking for Javascript Developers
by
Tomomi Imura
TV連動サービスのリアルタイム通知を支える技術
by
Tsuyoshi Torii
unassert - encourage reliable programming by writing assertions in production
by
Takuto Wada
THE OPEN
by
Yoshihiro Furukawa
Aws 2014 lt
by
Yoshihiro Furukawa
OSC2010 TOKYO/Spring Asterisk Seminar
by
Kenichi 深海
World Cup Marketing 2014
by
Viddyad
Va tutorial
by
yg0808
What Teens Want Beinggirl Pres
by
Dave Knox
大規模Node.jsを支える ロードバランスとオートスケールの独自実装
1.
大規模Node.jsを支えるロードバランスとオートスケールの独自実装2015/11/7DaikiTaniguchi (@kidach1)Akatsuki inc.#nodefest2015
2.
・Github https://github.com/kidach1・Twitter https://twitter.com/kidach1・Qiita
http://qiita.com/kidach1・Akatsuki Inc.・Node / JavaScript /TypeScript Ruby / Rails / Android Dvorak Keyboardkidach1
3.
http://qiita.com/kidach1/items/b75882edd4f715ebc213事前資料
4.
アジェンダ・作ったもの・アーキテクチャ ・経緯 ・ロードバランス ・オートスケール・負荷試験・その他 ・FRP ・可用性 ・監視
5.
作ったもの・2D横スクロールアクション・マルチプレイ ・4人同時対戦 ・座標同期型 ・プレイヤーマッチング (Rating /
Keyword)
6.
作ったもの• リアルタイム非同期4人同時プレイ奪い合いアクションゲーム• 動きやモーション、ダメージ、アイテム取得/使用などのイベントを4人で連携しあう
7.
Client: Cocos2d-x (c++)Server: API Server:Rails Websocket
Server:Node.js詳しくはスマホアプリにおけるマルチプレイアクションゲーム開発の実例紹介http://www.slideshare.net/aktsk/ss-52126411/1システム概要
8.
・同時一万接続を想定 → 常時数十∼百数十台規模の軽量インスタンスが稼働・柔軟なオートスケール → 負荷に応じて柔軟に自律的に伸縮してくれるようなインフラにしたいシステム規模
/ 要件
9.
ArchitectureRealtimeClusterLB ClusterAPIClusterRedisCluster
10.
A. 各Cluster/各Nodeの状態を毎秒監視B. Node毎の重み付けを毎秒更新C.
Clusterの状態に応じてオートスケールD. LB間でのプロセス監視&自動FailOver①② LobbyNode取得③ Lobby接続④ マッチングとroom_idの決定⑤ room_id返却⑥⑦ start(REST API)(GameNode取得)⑧ GameNodeとroomを指定の上 GameServer接続⑨ finish(REST API)Architecture
11.
本構成に至った経緯
12.
立ちはだかる壁Websocket / Socket.ioは(E)LBと相性悪いらしい※
正確には、「LBがクライアントからのリクエストを受け付け、配下のサーバ群へ振り分ける形式」との相性
13.
・Websocketと(E)LBの相性 ✕ Websocketは一度接続するとサーバー/クライアント間のセッションを張りっぱなしにするため、コネクション確立時以外LBを挟むメリットがない。むしろコネクション数が肥大化し、ボトルネックになり得る立ちはだかる壁
14.
・Socket.ioとELBの相性 ✕ ✕ ELBのTCP
Listenerを使った場合StickySessionがサポートされていないため、Socket.ioのhandshakingが通らずコネクションが確立できない立ちはだかる壁
16.
今回はNodeやwsに乗る場面じゃなかったか・・?しかし最近のNode・JavaScript界隈の目覚ましい進化や、npmの資産は魅力的→もう少し過去事例を調べる
17.
・ELBの下にNginxやHAProxyを立ててip-hashでバランスしstickinessを担保する 過去事例1 Load-balancing Websockets on
EC2 — Medium https://medium.com/@Philmod/load-balancing-websockets-on-ec2-1da94584a5e9→しかし、ELBの下にさらにproxy立てて、はどうみても辛い
18.
・運用コスト増大(LBとProxy)・そもそもupstreamの動的変更が出来ない(※)ため、ぶら下がるec2インスタンスの変更には手動対応が必要 → オートスケール実現不可 ※
実際はNGINX Plusの購入をすれば可能だが、多数のインスタンスを柔軟に追加削除するには、結局追加モジュールを書く必要がありそう過去事例1
19.
・ELBはセッション確立時のみ、もしくはELBなしでロードバランスするケース 過去事例2WebSocket on AWS
(ロードバランサとSocket接続を使用したイベント通知サーバの負荷分散)http://www.slideshare.net/AmazonWebServicesJapan/socket-15753751TV連動サービスのリアルタイム通知を支える技術http://www.slideshare.net/tsuyoshitorii5/public-43549341
20.
・なるほど!これだ やはりクライアントとsocket.ioクラスタの間にはLB置かないべき・AutoScalingは想定していないようだったので、その仕組みを追加するように拡張していく方向で決定過去事例2
21.
LoadBalance
22.
・EC2のtagをもとに、各クラスタ(lobby/game server)の各ノードごとのコネクション数を毎秒取得・RedisのSortedSetで保管/更新・APIサーバーからリアルタイムで最も接続数の少ないノードを読み出し、クライアントにendpointを返却LoadBalance
23.
LB visualization
24.
・インスタンスはコア数が少ないものを大量に横に並べる方針 ・SingleThreadで動くNodeとは相性が良い ・コア数を増やしてClusterModuleを利用する方法もあるが、(同一コアへのバランスなど)実装が複雑化するので避けるPoint
25.
・CPU使用率やLoadAverageといった指標ではなく、socket.ioプロセス(アプリケーションレイヤー)でのコネクション数を見てバランス →サーバー自体はhealtyなのにプロセスは死んでいた、等を排除 ※ websocket/socket.ioを用いる場合、httpと比べて「OSレイヤーの指標とアプリケーションのプロセスの生死」が直結していない印象だった(正確には、その部分に対する勘所がなかった)ためPoint
26.
Autoscaling
27.
・Game/Lobby各Clusterの状態を毎秒監視・設定した閾値に応じてサーバーを自動で追加/縮小・スケールアウトは最短で3分に一度、スケールインはよりシビアに1時間に一度のスパンに制限(任意の値を設定可能)Autoscaling
28.
・ゼロダウンタイム ・サーバープロセスが立ち上がり接続が確認できるまでLB側で有効なノードとして認識しない ・縮小時は、ノードへの接続がない状態でしかトリガーされないAutoscaling
29.
・Clusterの状態変化をシームレスにスケーリングイベントに繋げるため、FRPのパラダイムを利用 ・Reactive-Extensions/RxJS ・詳細後述(時間の限り)Point
30.
・スケーリングのツールはCloudFormation ・だが、次の課題を吸収するためRubyラッパーであるkumogataを利用Point
31.
・socket.ioプロセスベースでコネクション数を監視、閾値に応じて柔軟に増減台数を決定したい→ 監視と増減台数決定部分はNode(前述のFRPの箇所)で、台数に応じたスケーリングはCloudFormationで実現したい→ CloudFormation単体(JSON)では力不足Cloudformation
32.
・kumogata winebarrel/kumogata https://github.com/winebarrel/kumogata・cloudformationをRubyで。 →任意のインスタンス数 指定ロジックの記述kumogata
33.
・インスタンス50台同時起動$ INSTANCE_NUM=50 kumogata
create cloudformation/kumogata.rb prod-realtime→ LobbyServer / GameServer 25台ずつのクラスタが生成されるkumogata
34.
・同時1万Connectionをシミュレートしたい・攻撃サーバー1台ではマシンパワー不足LoadTesting
35.
LoadTestingnewsapps/beeswithmachinegunshttps://github.com/newsapps/beeswithmachineguns jmeter内包 =
httpのみ・・
36.
・結局自分で作るsocketio/socket.io-clientベースhttps://github.com/socketio/socket.io-clientLoadTesting
37.
・kumogataで複数攻撃サーバー同時立ち上げ $ kumogata create
cloudformation/bees-kumogata.rb bees・ansibleでsocke.io-clientの攻撃スクリプトを複数台同時実行 $ ansible-playbook -i ./hosts/develop/ec2.py bees.yml —private-key=<key_path>LoadTesting
38.
LoadTesting
39.
・Websocket/Socket.ioとELBの相性の問題 → 消滅実装してみて
40.
・LBが直接ユーザーからのコネクションを受けることがないため、単一障害点になるリスクが低い。実運用において、 ・直接的な障害無し ・緊急対応的な手動オペレーション無し (事前に必要とわかっているデプロイ/メンテ等を除く)実装してみて
41.
・本質的な部分(※)の実装は薄く、モジュール化可能 ※各ノードの任意の状態(コネクション数やCPU使用率など)を常時監視し、設定した閾値に応じて任意のスクリプトをトリガー・今回のsocket.ioのようなニッチなケースに限らず、http以外のプロトコルでAutoscaleさせたい時にも使えるかもしれない ・SPDY/HTTP2やwebRTC etc..実装してみて
42.
Appendix
43.
・4人同時対戦 → GameServerはマッチした4人を同一ノードに送り込む仕組み → ノード間の協調が不要、実装がシンプルに・全国マッチング →
LobbyServerは全ノード間でユーザーのセッション情報の協調が必要 → socketio/socket.io-redisを利用LB Point
44.
Availability
45.
Lobby & Game
Cluster・Multi-AZ・擬似FailOver ・各クラスタ最低構成台数を持っておき、この閾値を下回るとAutoscaleが発火 ・AutoscaleでFOの機能をざっくり吸収 ・状態を持たないdisposableな設計のため実現しやすかったAvailability
46.
LoadBalancer & Autoscaling
Server → SPOFになるとしたらこちら(直接リクエストを受け付けることがないのでリスクは少ないが、稼働台数が少ないため)・Multi-AZ・FailOver ・Lobbyクラスタ用LB、Gameクラスタ用LB それぞれがお互いをSocket.ioプロセスベースで監視し合う ・障害発生時に一方が片方の機能を吸収する形で自動でFailOver ・インスタンスが復旧した時点で自動でFailBackAvailability
47.
・監視 ・CloudWatch ・Slack連携 ・破壊的なイベント発生時やサーバーの状態を定期的にSlackで通知Monitoring
48.
Autoscaling
49.
Redis内で刻々と更新されていくインスタンス毎のコネクション数をもとに、オートスケールの発火を管理するPoint
50.
_人人人人人_> F R P < ̄Y^Y^Y^Y ̄
51.
・Redisから取得したデータを基軸とした一本のストリーム・ストリームに対して様々な制御(オペレーション)・スケーリングイベントの発火Design
52.
Autoscaling
53.
オートスケールの発火条件・負荷(※今回は接続数)に応じてトリガー・指定時刻にトリガー・事前に設定したクラスタごとの最低稼働台数を下回った際トリガーDesign
54.
Implementation
55.
Implementation
56.
Implementation
57.
Implementation
58.
Anti Pattern冗長なストリームRedundant Stream
61.
Anti Pattern・ Not
DRY・ Fat I/O
62.
ObservableHot / Cold
63.
Hot / Cold・Cold
-> Observable : Observer = 1 : 1・Hot -> Observable : Observer = 1 : n・特定のオペレータ(publish等)を使うと Cold→Hotに変換可能・特定のオペレータ(connect等)を使うと HotObservableの値がObserver達に一斉通知
64.
Autoscaling
65.
・mainStreamをHotObservableに変換(publish)・各observer(checkByXXX)に分岐した後にconnect
66.
Hot Observable
67.
手続き型との比較
70.
FRP比:・プリミティブな制御構造(今回は主に条件分岐)が随所に登場し、全体の流れを俯瞰しにくい
71.
FRP ver
72.
FRPによって・リストとして扱うことでオペレータ(filterやmapなど)を適用でき、制御構造が抽象化/隠 される・非同期処理もストリームの一部として違和感なく扱える結果として「コード全体の見通し向上」つまり「本質的な処理に集中」できる
73.
・FPR→コードの見通し↑でなかなか良い・インフラの制御はだいたいイベント駆動なので相性◎・まずはRx眺めてみると良いかも結論
74.
http://qiita.com/kidach1/items/5fd764c18de7cdae24ca
75.
WE ARE HIRING!http://aktsk.jp/recruit/or
@kidach1
76.
Thank you !
77.
Questions
Download
[8]
ページ先頭
©2009-2025
Movatter.jp