Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Thalassa - LXJS
Search
Mike Brevoort
October 02, 2013
Technology
160
1
Share
Thalassa - LXJS
Continuous Deployment System
http://www.youtube.com/watch?v=k6QkNt4hZWQ&hd=1
Mike Brevoort
October 02, 2013
More Decks by Mike Brevoort
See All by Mike Brevoort
Enterprise Messaging Workflows
mbrevoort
0
110
Developer Experience is User Experience
mbrevoort
1
400
Appbots Lightning Talk
mbrevoort
0
140
Testing and Debugging Slack Apps
mbrevoort
0
1.2k
What's all the noise a-bot?
mbrevoort
0
790
Why Bots, Why Now - OSCON
mbrevoort
1
340
Conversational Slack Bots with Javascript
mbrevoort
0
130
Natural Language Slack bots
mbrevoort
2
400
Thalassa - DenverJS
mbrevoort
1
1k
Other Decks in Technology
See All in Technology
JaSSTに関わることで変わった人生観 #jasstnano
makky_tyuyan
0
120
AsyncStreamでマルチブロードキャストを実装する
1mash0
1
120
R&D 祭 2024 UE5で絵コンテ・作画の制作支援ツールをつくる話
olmdrd
PRO
0
180
全社統制を維持しながら現場負担をどう減らすか〜プラットフォームチームとセキュリティチームで進めたSecurity Hub活用によるAWS統制の見直し〜/secjaws-security-hub-custom-insights
mhrtech
1
560
20260515 ログイン機能だけではないアカウント管理を全体で考える~サービス設計者向け~
oidfj
1
740
クラウドからエッジまで ~ 1,700台を支える監視設計~
optfit
0
110
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.4k
サイボウズ、プラットフォームエンジニアリング始めるってよ ― プラットフォームチームの事業貢献と組織アラインメントの強化
ueokande
0
120
O'Reilly Infrastructure & Ops Superstream: Platform Engineering for Developers, Architects & the Rest of Us
syntasso
0
240
ワールドカフェ再び、そしてゴール・ルール・ロール・ツール / World Café Revisited, and the Goals-Rules-Roles-Tools
ks91
PRO
0
180
生成AI時代に信頼性をどう保ち続けるか - Policy as Code の実践
akitok_
1
480
写真で見るAWS Summit Singapore 2026
k_adachi_01
0
110
Featured
See All Featured
Technical Leadership for Architectural Decision Making
baasie
3
360
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
350
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.3k
[SF Ruby Conf 2025] Rails X
palkan
2
1k
Utilizing Notion as your number one productivity tool
mfonobong
4
300
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
530
Code Review Best Practice
trishagee
74
20k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
520
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
190
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
150
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
160
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
Transcript
THALASSA A System for Continuous Deployment Mike Brevoort 2 October
2013 @mbrevoort
¡OLÉ!
BACKGROUND
1.21 GIGAWATTS!?
CONTINUOUS DEPLOYMENT
PUSH AND RESTART? http://alt.coxnewsweb.com/cnishared/tools/shared/mediahub/05/22/00/slideshow_1002253082_Irene.JPEG-06e19.JPG
UPGRADE WITH ZERO DOWNTIME http://devopsreactions.tumblr.com/post/61486552902/upgrade-with-zero-downtime
EFFORT(DEPLOY N → ∞ ) = 0 http://supercompleto.files.wordpress.com/2010/03/ushuaia-sea-lion.jpg
HOW?
LOAD BALANCER http://klrc.files.wordpress.com/2009/06/traffic_barrel_monster.jpg
A/B DEPLOYMENTS http://www.flickr.com/photos/madbuster75/1859045541/
THALASSA
THREE NODE.JS MODULES + HAPROXY •Thalassa •Server registry & client
•Aqueduct •API and manages HAProxy process •Crowsnest •Realtime dashboard
THALASSA •Lightweight service registry •Client as node.js module, daemon or
just periodic HTTP •Formerly build on top of @substack’s Seaport •Ping and expire over HTTP •Built on Redis, axon for pub-sub
AQUEDUCT •REST API for HAProxy •Manage HAProxy process (now via
@3rdEden’s HAProxy module) •Dynamically generates config from handlebars.js template •Streams HAProxy live status •Configuration as a CRDT •Enables peering of Aqueduct servers
CROWSNEST •Visualize what’s happening in the system •Streams, streams and
more streams •CRDT, LevelDB, Hapi, AngularJS, Rickshaw
Thalassa Server Aqueduct HAProxy Crowsnest A@1 A@1 A@1 A@1 80
FE streaming stats axon socket BE
Thalassa Server Aqueduct HAProxy Crowsnest A@1 A@1 A@1 80 A@2
A@2 A@2 FE streaming stats axon socket BE
Thalassa Server Aqueduct HAProxy Crowsnest A@1 A@1 A@1 80 A@2
A@2 A@2 FE streaming stats axon socket A@2 BE
Thalassa Server Aqueduct HAProxy Crowsnest A@1 A@1 A@1 80 A@2
A@2 A@2 FE streaming stats axon socket BE
registrations config stats stats config stats Aqueduct Aqueduct config Crowsnest
Server Aqueduct Thalassa Server control stream MUXDEMUX STREAMS
DEMO
commutative data > 9:00 MONDAY AUGUST 26TH
WHERE •https://github.com/PearsonEducation/thalassa npm install thalassa •https://github.com/PearsonEducation/thalassa-aqueduct npm install thalassa-aqueduct •https://github.com/PearsonEducation/thalassa-crowsnest
npm install thalassa-crowsnest
@mbrevoort