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
0
200
fastbuild-前端资源打包平台架构与设计及其他
Joe Wang
March 25, 2019
Tweet
Share
More Decks by Joe Wang
See All by Joe Wang
An Introduction to Reactive Programming based on RxJS
nodew
0
45
Lazy List With Generator and Iterator
nodew
1
680
ddd.pdf
nodew
0
190
An Introduction to Haskell
nodew
2
71
es6 proxy overview
nodew
1
51
Other Decks in Programming
See All in Programming
REALITY コマンド作成チュートリアル
nishiuriraku
0
130
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @jax2025 in Mainz, Germany
manfredsteyer
PRO
0
120
クラシルリワードにおける iOSアプリ開発の取り組み
funzin
1
490
M5UnitUnified 最新動向 2025/05
gob
0
150
CRUD から CQRS へ ~ 分離が可能にする柔軟性
tkawae
0
180
JAWS DAYS 2025 re_Cheers: WEB
komakichi
0
130
TVer iOSチームの共通認識の作り方 - Findy Job LT iOSアプリ開発の裏側 開発組織が向き合う課題とこれから
techtver
PRO
0
390
Design Pressure
hynek
0
190
Live Coding: Migrating an Application to Signals
manfredsteyer
PRO
0
130
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
5
210
クラス設計の手順
akikogoto
0
140
Road to Ruby for A Linguistics Nerd
hayat01sh1da
PRO
0
390
Featured
See All Featured
Fireside Chat
paigeccino
37
3.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
We Have a Design System, Now What?
morganepeng
52
7.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
24
2.8k
GitHub's CSS Performance
jonrohan
1031
460k
Code Review Best Practice
trishagee
68
18k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
BBQ
matthewcrist
88
9.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
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