LINUX.ORG.RU

История изменений

Исправление OSBuster, (текущая версия) :

Во второй ссылке на твиттер, пост именно про чёрную пятницу:

𝗦𝗵𝗼𝗽𝗶𝗳𝘆 𝘀𝗲𝗿𝘃𝗲𝗱 𝗺𝗼𝗿𝗲 𝘁𝗵𝗮𝗻 𝟭 𝗠𝗶𝗹𝗹𝗶𝗼𝗻 𝗿𝗲𝗾𝘂𝗲𝘀𝘁𝘀 𝗽𝗲𝗿 𝘀𝗲𝗰𝗼𝗻𝗱 𝗱𝘂𝗿𝗶𝗻𝗴 𝗕𝗹𝗮𝗰𝗸 𝗙𝗿𝗶𝗱𝗮𝘆

You probably think that such large requests can be handled only by some fancy microservices. The truth is a bit different.

Shopify uses a 𝗺𝗼𝗱𝘂𝗹𝗮𝗿 𝗺𝗼𝗻𝗼𝗹𝗶𝘁𝗵 𝗮𝗽𝗽𝗿𝗼𝗮𝗰𝗵, where they keep all their code in one modular codebase. Monolithic architecture is the easiest one to understand and implement. Since monolithic design is simple to build and enables teams to move swiftly in the beginning, it can carry an application far to get their product in front of customers earlier.

There are many benefits to centralizing your application deployment and codebase maintenance. All functionality will be accessible in one folder; you only need to manage one repository. Additionally, it implies that one test and deployment pipeline needs to be maintained, which might save much work. The ability to call into different components rather than relying on web service APIs is among the most alluring 𝗮𝗱𝘃𝗮𝗻𝘁𝗮𝗴𝗲𝘀 𝗼𝗳 𝗺𝗼𝗻𝗼𝗹𝗶𝘁𝗵𝗶𝗰 𝗮𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 over several distinct services.

Shopify implemented one version of the modular monolith with 𝗰𝗼𝗺𝗽𝗼𝗻𝗲𝗻𝘁𝗶𝘇𝗮𝘁𝗶𝗼𝗻 𝗶𝗻 𝗥𝘂𝗯𝘆 𝗼𝗻 𝗥𝗮𝗶𝗹𝘀. They organize a code base around real-world concepts (like orders, shipping, inventory, and billing), which makes it easier to label code and people who understand it. Each component is a mini Rails app (a module) that isolates business domains from one another. Each component claims sole ownership of the data associated with and defines a straightforward, dedicated interface with domain boundaries communicated through a public API.

More stats for Black Friday:

🔹 145 billion requests (~60 million per minute)
🔹 99.999+% uptime
🔹 5 TB/min of data served from across the infrastructure
🔹 MySQL 5.7 and 8 fleets handled over 19 million requests per second (QPS)
🔹 22 GB/sec of logs and 51.4 GB/sec of metrics data
🔹 Ingested 9 million spans a second of tracing data
🔹 Their Apache Kafka served 29 million messages per second at peak
🔹 Everything is run on Google Cloud

Исходная версия OSBuster, :

Во второй ссылке на тивттер именно про чёрную пятницу:

𝗦𝗵𝗼𝗽𝗶𝗳𝘆 𝘀𝗲𝗿𝘃𝗲𝗱 𝗺𝗼𝗿𝗲 𝘁𝗵𝗮𝗻 𝟭 𝗠𝗶𝗹𝗹𝗶𝗼𝗻 𝗿𝗲𝗾𝘂𝗲𝘀𝘁𝘀 𝗽𝗲𝗿 𝘀𝗲𝗰𝗼𝗻𝗱 𝗱𝘂𝗿𝗶𝗻𝗴 𝗕𝗹𝗮𝗰𝗸 𝗙𝗿𝗶𝗱𝗮𝘆

You probably think that such large requests can be handled only by some fancy microservices. The truth is a bit different.

Shopify uses a 𝗺𝗼𝗱𝘂𝗹𝗮𝗿 𝗺𝗼𝗻𝗼𝗹𝗶𝘁𝗵 𝗮𝗽𝗽𝗿𝗼𝗮𝗰𝗵, where they keep all their code in one modular codebase. Monolithic architecture is the easiest one to understand and implement. Since monolithic design is simple to build and enables teams to move swiftly in the beginning, it can carry an application far to get their product in front of customers earlier.

There are many benefits to centralizing your application deployment and codebase maintenance. All functionality will be accessible in one folder; you only need to manage one repository. Additionally, it implies that one test and deployment pipeline needs to be maintained, which might save much work. The ability to call into different components rather than relying on web service APIs is among the most alluring 𝗮𝗱𝘃𝗮𝗻𝘁𝗮𝗴𝗲𝘀 𝗼𝗳 𝗺𝗼𝗻𝗼𝗹𝗶𝘁𝗵𝗶𝗰 𝗮𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 over several distinct services.

Shopify implemented one version of the modular monolith with 𝗰𝗼𝗺𝗽𝗼𝗻𝗲𝗻𝘁𝗶𝘇𝗮𝘁𝗶𝗼𝗻 𝗶𝗻 𝗥𝘂𝗯𝘆 𝗼𝗻 𝗥𝗮𝗶𝗹𝘀. They organize a code base around real-world concepts (like orders, shipping, inventory, and billing), which makes it easier to label code and people who understand it. Each component is a mini Rails app (a module) that isolates business domains from one another. Each component claims sole ownership of the data associated with and defines a straightforward, dedicated interface with domain boundaries communicated through a public API.

More stats for Black Friday:

🔹 145 billion requests (~60 million per minute)
🔹 99.999+% uptime
🔹 5 TB/min of data served from across the infrastructure
🔹 MySQL 5.7 and 8 fleets handled over 19 million requests per second (QPS)
🔹 22 GB/sec of logs and 51.4 GB/sec of metrics data
🔹 Ingested 9 million spans a second of tracing data
🔹 Their Apache Kafka served 29 million messages per second at peak
🔹 Everything is run on Google Cloud