Upgrade to Pro — share decks privately, control downloads, hide ads and more …

パフォーマンスクリティカルな領域へのRust活用戦略

Avatar for Yuki Toyoda Yuki Toyoda
March 22, 2026
11

 パフォーマンスクリティカルな領域へのRust活用戦略

Avatar for Yuki Toyoda

Yuki Toyoda

March 22, 2026
Tweet

Transcript

  1. 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ß~Rust ~×1Rust {·y»šÏ²fú··²y»bot ²w vt»{{1rust-lang/rust ÿRust ³óñ´ùx~³óøúóõü·÷ó|ñ´ó xzsvt»2
  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_ùöz²÷ýüñwr»2ç[¹¿ó¿x ~ÿ²g/Wwz|¹1ñõ¹üþó¹}Õ²ûvfup2

    ñõ¹üþó¹}Õ{1rÿxwv¿{º´yt¿ŸWx1oú½ü¹ß ~O{¸»´óõù³¹ø~Zûÿ²kö{ßw}»±ü¹|[tx …ƒxvt»2 ôóý´óø^/~ßW y¯þ}ûxO‰'ú¹¿|¿t üøûýó¿ÿb~²{Ûy» ç[¹¿ó¿xFFI/ µ´ù»ü1RPC {wçÿ ÿžö{^/ÿö²ã/y»
  3. Rust |Uÿb~w_Ï § ú²û¿´÷v š÷Ýï Áóøý ù´öýÖý Oü´öó·ü|}Ü~ÿb2GC {¸»ÎnOýzýüº õ}ö2

    ʰ /ß÷ü¿÷v ýÀ÷v'ETL ´óúò/÷v Kaf‚a Ãó·õüþ uUþºüÀü~¹øúü÷vwúû÷|öçùø {ö}y»2 CPU ´óöó·ö÷v üÃóùëÞ }ùó½óÀŠÿ ß'×÷v NLP _÷v Âüø¶·´'½ó·õ úðü¹÷ý½· ¾ÿÂüø¶·´ üüøúÿó¿ü ¯_½ó·õ'´óúDB víÿþÿCPU o÷|¿t'úû÷²¿±t'¯ÿÿ ü´öó·ü|_Ü'GC |üøûýó¿'¹Áüûùø| ¿tśŌś tz¼{{ú_y¼€RǹÁ o?zøþ¢xz»2}ÿxwv´óõù¿²Z¼»2
  4. ÏÏ}Ïÿ´óõù¿Z~ß~ ïORust ~/ø^/{¸»ñõ¹üþó¹}ÕÏÏwr»2ñõ¹üþó¹}¾}ÿ~_ógþ~qo|O?Vz±ü¹²r»±1ßzw² kúz{zsvtzt±ü¹|r»ù{ìo|߉2 <}vwû÷W²Ôrw}=xtvÏßxwvӃ{y»oþ|ùWxƒx »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
  5. ÕÏÏÿ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ßÛ^/_± v€s2 o_ÿP×·hˆ + P×O3 {¸»FFI Cloud Run Nw×Python µüó¹ÿFastAPI {¹1w\¸ó¸ó øV€q²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
  6. ão'}²fu ãofu ^/f{z}¹g²_Ü{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/ßy€{ÎÓ{_{¹¼»ÿ ýg|¿t2 }²fuÿHaskell ÏÏ{v _wHaskell ²{|¼ý{¹^/w1100 ]k~Haskell ¸ó¸û² ²óx»Om{wÏÏ|r»2}~ÏÏ~Wxwvÿ o}›…w²øüüûó°|Ußwvt¼€_Üzt Haskell wõÓ…|ÿÿy»~w1 <2 öo Rust ~|\1 Rust ¸º×z±11Q ÿ3 öo~ÿÿ—²¿¿° Rust ²x»'ttõ~W?|Oÿo ^/~Ûfùwøüüûó°÷ý°ùð~uÙ~wŠ{±»sx| ݉€xƒx»2ão~ëwý´óø{z»w1
  7. AI |^/žÙ²Or» Rust ~g²÷wtxu¼»øVÿbok'ù´õ¿´ð'øü´øo?~¯Š²³ü÷³óÀ¸ü¸·óø|/_{µýüøwv¼»±1 ^/žÙ{tvxy1/_{OOwvt»xƒx»2 î_~×qßxÿgo? bok'ù´õ¿´ðwú~sŸ{³ü÷³ óÀ¸ü¸·óø{î_'Ùsy»oý| g²ûÿö2 <ss~clone

    ²íyoýÿ=x ³óñ´û¸ùü²oy€qw{zºkúzÞ |ßsv»2//wÛ±»OÛ²/}ÿ w}»2 ³üùor ³óö½¹ø¸ó¸û²úóÀ|usvt¼€ o÷~zt³üù²ory»2€1…~¿ ëw<Rust €{¹=³üùor|o{xt v¿qw²zt2 ÕÏÏw~o ç_¸ó¸û²Python ³Rust ~ûm²¯V ~?w¯ttt1bok´ù´õ¿´ðwú~ sŸ{¸ü¸·óøxÙs2s~}\¿ {|ûÿö{ÿü¿w2AI ³üùyorw z1 <ú~sÿb~þÏþ?=xwv~ o|{{oo€2
  8. ~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
  9. Ӄo G«ab ÿR¼¯· {¸»»¶ ó¿üµüó¹ÝßÍ engineering.grab.com 4 Counter Service: How

    We Rewrote It in Rust Pa×Pa× ÿR¼¯· {¸» API ²üø¶·´~¹± üúó° blog.paypay.ne.jp 4 Scaling PayPay with Rust Tl}T} ÿR¼¯· úù´ø ±ü¹¹¿÷³ wxiaoyun.com 4 Rust Rewrite Case Study P×·hˆ }_ÿëyµü ùñüö³ôüûÿC API  docs.python.org 4 ëyµü ùñüö³ôüû Ha¯}e oÛo~_›Ï agentultra.com 4 Using Haskell in Production