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

メルカリ、巨大モノリスにおける複雑性をリリース9年目にしてどう解決するか

 メルカリ、巨大モノリスにおける複雑性をリリース9年目にしてどう解決するか

巨大なPHP製モノリスアプリケーションにおいて、マイクロサービス化というアプローチでは上手く解決できなかった問題を、アプローチを変えて解こうとしています。何をどのように進めているのか、具体例を交えてお話します。

Yuta Adachi

April 10, 2022
Tweet

More Decks by Yuta Adachi

Other Decks in Programming

Transcript

  1. ̉ 䝗䝯䜲䞁▱㆑䛾㞟✚ Ɣ ┠ⓗ ż 䝗䝯䜲䞁▱㆑䜔᪤Ꮡ䛾䝁䞊䝗䝧䞊䝇䛾⌮ゎ䜢῝䜑䜛 ż 䝗䜻䝳䝯䞁䝖䜔㘓⏬䜢䜸䞁䝪䞊䝕䜱䞁䜾䛾䝁䞁䝔䞁䝒䛸䛧䛶฼⏝ Ɣ ෆᐜ

    ż ฼⏝䝅䝘䝸䜸͸͔͸䜰䜴䝖䜹䝮 ż ౫Ꮡ䛩䜛䝬䜲䜽䝻䝃䞊䝡䝇䜔䝔䞊䝤䝹䠄§Ä%䛾ศᯒ䠅 ż 䝇䝹䞊䝥䝑䝖͸͔͸㞀ᐖ᫬䛾䝴䞊䝄䞊ᙳ㡪 䜶䞁䝗䝫䜲䞁䝖㍯ㄞ఍
  2. ̂̇ ͇̂ ౫Ꮡ㛵ಀ䛾ศᯒ͸͔͸ᐃ㔞໬ Ɣ ÝŁóƱ ż 䝁䞁䝫䞊䝛䞁䝖䛾ቃ⏺䜢䜎䛯䛠䝁䞊䝗䜢᳨▱䛩䜛䝒䞊䝹 Ɣ Oŵǒ ż

    䜽䝷䝇䛤䛸䛻䜰䝜䝔䞊䝅䝵䞁䛷ୗグ䛾஧䛴䜢ᣦᐃ䛧䚸ቃ⏺䜢ᐃ⩏ Ŷ ᡤᒓ䛩䜛䝁䞁䝫䞊䝛䞁䝖͸͙ϋƘóĐśóĹĞ͸½ƛóŪƣóĐƱŇŵŪ͚ Ŷ 䜰䜽䝉䝇ಟ㣭͸͙ϋóƘŇ͸ŵƛ͸ϋŇŪƱĞƛŪóş͚ %ŵŨóŇŪ͸ŵƹŪėóƛǘ͸ÜŇŵşóƱŇŵŪ͸%ĞƱĞĐƱŇŵŪ
  3. ̂̉ ͇̂ ౫Ꮡ㛵ಀ䛾ศᯒ͸͔͸ᐃ㔞໬ Ɣ §ĞĸĞƛĞŪĐĞ ż ¯ŁŵƘŇĸǘ͸䛾͸ÝĞėĹĞ͸䜢ཧ⪃䛻ᐇ⿦ Ɣ Oŵǒ ż

    㟼ⓗゎᯒ Ŷ ėĞƘŁƘĞŪė͉͸ŁƱƱƘƣ͉͔͔ĹŇƱŁƹď͇ĐŵŨ͔ŨŇŁóĞƹ͔ėĞƘŁƘĞŪė͸ Ŷ ¤O¤͟¤óƛƣĞƛ͉͸ŁƱƱƘƣ͉͔͔ĹŇƱŁƹď͇ĐŵŨ͔ŪŇśŇĐ͔¤O¤͟¤óƛƣĞƛ͸ ཧ⪃᝟ሗ
  4. ̃́ ͇̃͸䝁䞁䝫䞊䝛䞁䝖㛫䛾䜔䜚䛸䜚䛻౑⏝䛩䜛¤U Ɣ ᐇ⿦᪉ἲ ż ¤O¤䛾䝯䝋䝑䝗䛸䛧䛶ᐇ⿦ ż ¦¯䠄ŵŨŨóŪė͸¦ƹĞƛǘ͸¯ĞƘóƛóƱŇŵŪ䠅䝇䝍䜲䝹 Ɣ 䜲䞁䝍䞊䝣䜵䞊䝇

    ż %½䠄%óƱó͸½ƛóŪƣĸĞƛ͸ďŘĞĐƱ䠅 Ŷ እ㒊䝁䞁䝫䞊䝛䞁䝖䛛䜙䜸䝤䝆䜵䜽䝖䛾≧ែ䜢ኚ᭦䛷䛝䛺䛔䜘䛖䛻 Ŷ ྲྀᘬ䝗䝯䜲䞁ෆ䛾䝻䝆䝑䜽䜢እ㒊䛻᫹䛥䛺䛔䜘䛖䛻 ᪉㔪
  5. ̃̉ Ɣ ᕧ኱䛺¤O¤䛾䝰䝜䝸䝇䜢䛂䝰䝆䝳䝷䞊䝰䝜䝸䝇䛃䛻⛣⾜䛥䛫䛶䛔䜛 ż ౫Ꮡ㛵ಀ䛾ศᯒ͸͔͸ᐃ㔞໬ ż 䝁䞁䝫䞊䝛䞁䝖ศ๭ ż 䛂ྲྀᘬ䛃䛿䛥䜙䛻䝃䝤䝁䞁䝫䞊䝛䞁䝖䛻ศ๭ Ɣ

    䛂§ŵďƹƣƱ͸FŵƹŪėóƱŇŵŪ͸ĸŵƛ͸¯ƘĞĞė䛃䛸䛔䛖䝥䝻䝆䜵䜽䝖䛾୰䛾ྲྀ䜚⤌䜏 ż 䝥䝻䝆䜵䜽䝖≉タ䝨䞊䝆 䜎䛸䜑