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
パフォーマンスクリティカルな領域へのRust活用戦略
Search
Yuki Toyoda
March 22, 2026
890
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
パフォーマンスクリティカルな領域へのRust活用戦略
Yuki Toyoda
March 22, 2026
More Decks by Yuki Toyoda
See All by Yuki Toyoda
Context Oriented Programming of Kotlin
helloyuk13
3
5.3k
カジュアルコントリビュータと学ぶRustコンパイラ
helloyuk13
3
2k
2025 年の Rust はどこに向かっているのか?
helloyuk13
6
1.5k
RustでWeb開発コソコソ噂話
helloyuk13
15
20k
SeaQL Projectsについて
helloyuk13
1
650
年末ですし、今年のRustの進捗の話をしましょう
helloyuk13
2
3.1k
SwiftでAWS Lambda
helloyuk13
0
280
Rustハンズオン@エウレカ社
helloyuk13
22
11k
Rust ハンズオン第6回 ベアメタル Rust 編
helloyuk13
0
470
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Color Theory Basics | Prateek | Gurzu
gurzu
0
370
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
210
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Unsuck your backbone
ammeep
672
58k
Producing Creativity
orderedlist
PRO
348
40k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
440
Design in an AI World
tapps
1
250
Transcript
ñõ¹üþó¹¿úö³»ûz ßx~Rust ofu Rust t~~²ü½ö¿ñó{ys{¹/¼»ÿ 2026/03/26
he×¼}l Rust.Tokyo ºü¼ú´¶ü / ÷SaaS Om½õø¶·²²ü½ö¿ø ÿ}vAX µüó¹~SaaS ÷ýð¿ø~½õø¶·²²ü½ö¿øxwvöÛ w1~}~y_~âÛfuzy²xvt»2mÛwõûµ´¿û¸ó¸û²²
wvzº1õýóø¸óù{¹¿ù¶ù´óõù~w²_ß»2 om~{¿¹1Rust ~ÿÕ»óõ±üó¹<Rust.Tokyo =~Û÷²¯v2q×w >ßýRust ÷ý°ùÿó°/¯? ÿùÜ·¹öðõ 1 >Rust {¸»Web ²÷ú±ü ·÷ó~? ÿϵ´¸óö³õ³¿ 2}~{{ñ÷³²x~ßzy2 ÷ù´ùüøw~gß~×1Rust {·y»Ï²fú··²y»bot ²wvt º1粿tqvö¸ó»´²mwvt»{{1rust-lang/rust ÿRust ³óñ´ ùx~³óøúóõü·÷ó²¯svt»2
z|ÿ´ñõ¹üþó¹ß{Rust z~{ ß^Ýï~¸v{µüó¹y_|Oü´öó·ü²n±¹¼»±ü¹w1 Rust ão~\vgnop2/o1SaaS Omwy_öz¿øùõ³ó¿ zx²1øVö{ñõ¹üþó¹|n±¹¼»ÿb|ßz[y»2 Ýz~<y¯ú÷üü¹=wz1üøûýó¿xzsvt»{Û³ó ýüýóø{~^/y»xtv²÷ýüñwr»2ç[¹¿ó¿x~ÿ² g/Wwz|¹1ñõ¹üþó¹}Õ²ûvfup2
ñõ¹üþó¹}Õ{1rÿxwv¿{º´yt¿Wx1oú½ü¹ß ~O{¸»´óõù³¹ø~Zûÿ²kö{ßw}»±ü¹|[tx xvt»2 ôóý´óø^/~ßW y¯þ}ûxO'ú¹¿|¿t üøûýó¿xz»ÿb~{{Ûy» ç[¹¿ó¿xFFI/ µ´ù»ü1RPC {wçÿ ÿö{^/ÿö²ã/y»
Rust |Uÿb~w_Ï § ú²û¿´÷v ÷Ýï ñóøý ù´öýÖý ʰ /ß÷ü¿÷v ýÀ÷v
ºóúw~÷ü¿ò/÷v Kafa Ãó·õüþ CPU ¬÷~¿z»÷v üÃóùëÞ }ùó½óÀÿ ß'×÷v NLP _÷v Âüø¶·´'½ó·õ úðü¹÷ý½· ¾ÿÂüø¶·´ üüøúÿó¿ü ¯_½ó·õ'´óúDB víÿþÿCPU o÷|¿t'úû÷²¿±t'¯ÿÿ ü´öó·ü|_Ü'GC |üøûýó¿'¹Á üûùø|¿tśŌś tz¼{{ú_y¼RǹÁ o?zøþ¢xz»2}ÿxwv´óõù¿²Z¼»2
ÏÏ}Ïÿu~v~zOm~Rust {¸»}Õß~ ïORust ~/ø^/{¸»ñõ¹üþó¹}ÕÏÏwr»2ñõ¹üþó¹}¾}ÿ~_ógþ~qo|O?Vz±ü¹²r»±1ßzw² kúz{zsvtzt±ü¹|r»ù{ìo|ß2 <}vwû÷W²Ôrw}=xtvÏßxwvÓ{y»oþ|ùWxx »2 Grab ÿ´óõù¿ 70%
Z ¿QPS ~·ó÷ûzGo þ´¿ýµüó¹ ²Rust w~txÝßÍ2Go xRust wg ùzþ}o|uz»±apple-to-apple wzt|1CPU 'ñòúû÷|/_} Õw1gý²{|ýcw~~´óõù ¿²}70% Zw2 PayPay ÿCPU 1/10 'ñòú 1/80 TypeScript ÿNode.js ý~API ²üø¶ ·´|¿{Rust ýµ´ù»ü²ÿò2 CPU o÷1/10 'ñòú1/80 'ü´öó ·üg/30% }Õ²Ôr2SaaS ~¾ ÿ²üø¶·´{}~~~ùow´yt ñ¿üówr»2 TikTok ÿ~ $300K Z Go ý~nµüó¹~/øAPI ²Rust { }ûxÿRPC/FFI w·u[O~}û x 2¿øùõ³ó¿~CPU üøûýó ¿ÿbw1\ërw2 ]~øùõ³ó¿² ÷vÿý{w1/ø~}Õw~}4,700 O×~´óõù¿Z{®w2
ÕÏÏÿw\¸ó¸óx~^/ Ìox}ÿ }vAX µüó¹{zq»xr»øV~o_W·³~w\÷v{Rust ² ^/w2S5Python wßÍu¼vt|1/?÷ü¿ß~ßò{ Ïwvþ|Ý×{OOy»sx|QA ÿwvn2úúü¹ß~y ´t}ï|¿¿~¼»öís2
//~¸ó¸û²|±o{Python ³Rust x~þ}ûxöùóñ²ß{ {ß¿³wtsx|}s{qw1Rust ^/x~Ó|q2zzç _¸ó¸û²÷ù´ùüøwRust ²þtvt|1ßÛ^/_± vs2 o_ÿP×·h + P×O3 {¸»FFI Cloud Run Nw×Python µüó¹ÿFastAPI {¹1w\¸ó¸ó øVq²Rust wþ}ûx1PyO3 ²xvFFI |sûwy»ër²ã o2Õ{yw{FFI ÏÏ|rssx²ßþw{zs2 z|Rust s{ ç_ |÷ù´ùüøwRust ²owvzº1t{s Python ~FFI wRust |}_ëyÿPython }_ù½õñóø C/C++ ²/svt»|2 Go ´C# GC |Python tx?oy»_Ü|r» cgo }u~|sûw³¹ø'v}²ÿqt o_W÷vù´öùú~¸³·¹öð|Uß ^g~AI ýã{UqPython FFI Û}²ýcwt }ÿ þÿ30 <44 ]}Õ²Ôr2ñòúFFI Û}wPython/Rust ot{ úß|¿»±}ÕÖÛö|1÷vþ~}Õ{¸ºöü¶ü_ /_UNw2
ão'}²fu ãofu ^/f{z}¹_Ü{z»~|<Rust ¸ó¸û²|t»~{ÿ= xtv/?~_Üwr»2øVözRust ^/w~fRust ~ßÏ| r»¿wzt±1 <Rust ¸ó¸û²=xwvãoy»~÷
wt2ßß t~ûüº²î{ztú¹¿|r»2 ñ´ó¿wn/²ûy kö{Rust }²n±»{y»2÷ù´ùüøwRust ²ïssx|r»¸ó¸û²_ö{{zº[t2 ßÛo}w²_Üzw ùWzo÷_v|r¼1}~o²/ßy{ÎÓ{_{ ¹¼»ÿýg¿t2o÷_v~ëû{}q³x³¹ø²r y}wr»x®nwv{¹^/y»ßr»2 }²fuÿHaskell ÏÏ{v https://agentultra.com/blog/using-haskell-in-production/ _wHaskell ²{oy»_{ztv1g_20 ]³100 ]k~ Haskell ¸ó¸û²²óx»Om{wÏÏ|r»2ão^|{Haskell ¸ó¸û²xv²]zt~w1Rust xöí|vt»2 }~ÏÏ~Wxwvÿ o} w²øüüûó°|Ußwvt¼_Üzt Haskell wõÓ |ÿÿy»~w1 <2 öo Rust ~|\²}~öz׺}|ßw1 ÿÿ~w{´º1 <3 öo¹t~²y»sí Rust ²x»'ttõ~W?|Oÿo ^/~Ûfùwøüüûó°÷ý°ùð~uÙ~w{±»sx| Ýxx»2ão~ëwý´óø{z»{{1Rust ²svt ç[õ~¹½û²ó÷{²®w}»2½u~úß~±{Ý2
AI |^/Ù²Or» Rust ~g²÷wtxu¼»øVÿbok'ù´õ¿´ð'øü´øo?~¯²³ü÷³óÀ¸ü¸·óø|/_{µýüøwv¼»±1 ^/Ù{tvxy1/}OOwvt»xx»2 î_~×qßxÿgo? bok'ù´õ¿´ðwú~s{³ü÷³ óÀ¸ü¸·óø{î_'Ùsy»oý| g²ûÿö2xx<ss~clone ²íyo
ýÿ= <s~³óñ´û¸ùü~ëíoý ÿ=zyxÞ}tsx²oyqw{zº kúzÞ|ßsv»2//wÛ±»OÛ² /}ÿw}»2 ³üùor ³óö½¹ø|usvt¼o÷~zt³üù ²ory»21 ~¿ëw<Rust {¹=³üùor|o{xtv¿qw²zt2 y~¿wrsv²³óö½¹ø~Ußþ\t {rÿ{|ÿóu¼»2 Y{y~Õw~oÏÏw ç_¸ó¸û²Python ³Rust ~ûm²¯V ~?w¯ttt1bok´ù´õ¿´ðwú~ s{¸ü¸·óøxÙs2s~}\¿ {|ûÿö{ÿü¿wx~sx2
~x±ÿRust ôóý´óø^/fu n fu~\vg SaaS Omw²øVö{ñõ¹üþó¹| n±¹¼»ÿb[y»2y¯ú÷üü ¹wz1CPU o÷'p99 ü´öó·
ü'GC üøûýó¿'¹Áüû³¹ø² g{{víw1ôóý´óøw^/y»2 B ß~|yûÿ Grab ÿ´óõù¿70% Z PayPay ÿCPU 1/10 'ñòú 1/80 TikTok ÿ~$300K Zÿ1 ÿb ÕÏÏÿþ30 <44 ]}Õ · AI ÿ}²wÙ²û| ³ü÷³óÀ¸ü¸·óø|bok' ù´õ¿´ð~Ù²O 1Q ~ÿÿ²¿¿³pøüüûóÀ ñ´ó¿n/ÿköRust }~ã ofu åñ~r»ç_ ~[|g/~ë² ? k~²¿·÷óÿ~z¯~üøûýó¿ÿb²n'{Ûy»2CPU o÷'p99 ü´öó·ü'´óõù³¹ø~y¼{|_Ü{z svt»ÿb|r¼1Rust ~ôóý´óø^/²w_ö{}y»ït|r»2
Óo G«ab ÿCounter Service: How we rewrote it in Rust
https://engineering.grab.co m/counter-service-how-we- rewrote-it-in-rust Pa×Pa× ÿScalg Pa×Pa× Ñl·h R¼¯· https://blog.paypay.ne.jp/e n/scaling-paypay-with-rust/ Tl}T} ÿ2x Performance, $300k Savings: A Case Study in Rewriting a Critical Service in Rust https://wxiaoyun.com/blog/ rust-rewrite-case-study/ P×·h }_ÿ Receded ·hl«d ¨a«·× ·¯ https://docs.python.org/ja/ 3.13/c- api/intro.html#recommende d-third-party-tools U¯lg Ha¯}e l P«d¼c·l https://agentultra.com/blog/using-haskell-in-production/