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
fastbuild-前端资源打包平台架构与设计及其他
Search
Joe Wang
March 25, 2019
Programming
220
0
Share
fastbuild-前端资源打包平台架构与设计及其他
Joe Wang
March 25, 2019
More Decks by Joe Wang
See All by Joe Wang
An Introduction to Reactive Programming based on RxJS
nodew
0
59
Lazy List With Generator and Iterator
nodew
1
760
ddd.pdf
nodew
0
220
An Introduction to Haskell
nodew
2
94
es6 proxy overview
nodew
1
74
Other Decks in Programming
See All in Programming
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
610
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
450
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
5.2k
Inside Stream API
skrb
1
640
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
12k
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
130
Claspは野良GASの夢をみるか
takter00
0
160
Lessons from Spec-Driven Development
simas
PRO
0
140
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
250
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
140
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.4k
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
170
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
170
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Evolving SEO for Evolving Search Engines
ryanjones
0
210
Heart Work Chapter 1 - Part 1
lfama
PRO
7
36k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
Mind Mapping
helmedeiros
PRO
1
230
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
350
AI: The stuff that nobody shows you
jnunemaker
PRO
8
690
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
770
Designing Experiences People Love
moore
143
24k
Transcript
Fastbuild 前端资源打包平台架构与设计及其他 Joe
Why another fxxk build platform ?
None
Known problems • ⼈⾁添加/修改项⺫配置,⽽且添加⼀个项⺫要同步到三个项⺫,上机发布三个项⺫ 的代码 • 任务已经失败退出,前端仍然显⽰打包中 • cancel⼀个任务,拿不到⽇志⽂件 •
任务机显⽰被占⽤,其实是闲置的,但是没办法添加新任务 • 任务机区分node版本,没办法充分利⽤资源 • websocket推送⼤量⽆⽤数据,⼀条消息⼏⼗k的数据 • 前端⻚⾯cpu占⽤⾼(真的没有⽤来挖矿 • 没办法深度扩展
⽼版 build平台 调⽤关系⽰意图
Show some code
None
None
None
“If you could not refactor the fxxk legacy code, just
rewrite it!” - Joe
None
None
None
Show some code
Task Runner Steps
Make Command
ENV
Fastbuild ⽬录结构
Pros and cons in golang • Standalone executable file, no
dll required • Performance • Lightweight channel • Build-in test support • Error handle • Interface{} • Interface • No generics • Lack of functional programming support
Protobuf & GRPC
What are Protocol buffers Protocol buffers are Google's language-neutral, platform-neutral,
extensible mechanism for serializing structured data https://developers.google.com/protocol-buffers/
None
What are GRPC A high-performance, open-source universal RPC framework https://grpc.io/
None
None
None
Next Step • Integration with OPS • Delivery fastbuild with
one click • Improve the user experience • Use NSQ if possible
The end