Bagaimana kami menggergaji monolit. Bagian 1

Hai, nama saya Vanya. Saya memecahkan masalah arsitektur di frontend di Tinkoff Business dan sekarang saya akan memberi tahu Anda salah satunya.

Beberapa tahun yang lalu, kami memiliki aplikasi monolitik besar yang telah berkembang menjadi lusinan aplikasi yang lebih kecil dari waktu ke waktu. Dalam artikel ini saya akan memberi tahu Anda masalah apa yang kami alami secara teratur di monolit, bagaimana kami menyelesaikannya dan apakah layak untuk "menggergaji" bagian depan kami.

Sinkronisasi

«» , , -. , iframe . .

(- ), . , -.

Diagram kasar dari aplikasi frontend monolitik
-

, : « - !». .

?

, , - . :

,

, .

TBD -

, — , —

, .

(ownership) . , . - 5, 10, - (),

, . , , -

, . git flow

— , state-, , , . « »

, , , , .

— - ?

— . , , .

? :)

, , , .

, . , ( ). : 

  1. , - ,

  2. : - —

, , codemod . 100%

, —

- , , . ,

-

, «» , . , , , - , «» , .

?

- , :-) , :

  • . -, . Frame Manager, .

  • . , , window.myVar .my-bar. , - . , .

  • . : . vendor.js , vendor1.js, vendor2.js . . , — . № 4, , , url' .

, , , , , . : , ?

. , :

  1. . , . , , . , .

  2. foundation. () libs . : - , ?

  3. SPA. SPA, , , , , . , . , Frame Manager, . , , . : window.myVar, localStorage, sessionStorage, CustomEvent, postMessage .

  4. (SSR), . . . , , iframe, SSR.

.

. . , npm-. 

, , - , , , . : « , , ?» :

  • . , ? , . ?

  • .

  • ci pipeline, .

: Nx. apps/, libs/. , . ci pipeline pipeline , IaC.

tl;dr

, Frame Manager.

Skema interaksi pelanggan dengan microfront-end

. , . tips&tricks, :

  1. , ? , , , , , :)

  2. «», . , , , , , , .

  3. , . -, , — , , : .

  4. — , , , . /.

  5. , . , , , . , .

P. S.

, , , , , .

.




All Articles