БСсплатная ΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Ρ†ΠΈΡ

ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΈΠ»ΠΈ Ρ†Π΅Π»ΡŒ. ΠžΡ‚Π²Π΅Ρ‡Ρƒ с практичСским ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом β€” бСсплатно, Π±Π΅Π· ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π².

Или Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ врСмя Π² Calendly

Π”Π΅ΠΏΠ»ΠΎΠΉ Strapi: AWS, DigitalOcean, Heroku β€” Ρ‡Ρ‚ΠΎ ломаСтся ΠΏΡ€ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Strapi β€” популярная headless CMS, Π½ΠΎ ΠΏΡ€ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° AWS, DigitalOcean ΠΈΠ»ΠΈ Heroku часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΏΡ€ΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ тСстовых ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ. НапримСр, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΆΠ°Π»ΡƒΡŽΡ‚ΡΡ Π½Π° Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Ρ‹ API, хотя сСрвСры Π½Π΅ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Ρ‹, ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π°Π΄ΠΌΠΈΠ½ΠΊΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ. Π­Ρ‚ΠΎ Π½Π΅ всСгда связано с рСсурсами β€” ΠΊΠΎΡ€Π΅Π½ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ прилоТСния ΠΈΠ»ΠΈ настройках инфраструктуры.

Π§Ρ‚ΠΎ ломаСтся Π² ΠΏΡ€ΠΎΠ΄Π΅

ΠœΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Strapi ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ с нСсколькими Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΌΠΈ симптомами:

  • Π’Π°ΠΉΠΌΠ°ΡƒΡ‚Ρ‹ API: запросы ΠΊ API Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ слишком Π΄ΠΎΠ»Π³ΠΎ, особСнно ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ слоТных Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ…. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ связано с Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ запросами ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, отсутствиСм индСксов ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ сСрвСра Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….
  • ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с синхронизациСй Π΄Π°Π½Π½Ρ‹Ρ…: ΠΏΡ€ΠΈ использовании Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… инстансов Strapi Π΄Π°Π½Π½Ρ‹Π΅, сохраняСмыС Ρ‡Π΅Ρ€Π΅Π· Π°Π΄ΠΌΠΈΠ½ΠΊΡƒ, ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСрами. Π­Ρ‚ΠΎ часто связано с отсутствиСм ΠΎΠ±Ρ‰Π΅Π³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° для Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π½Π΅ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒΡŽ кэша.
  • БСссии ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ: ΠΏΡ€ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° нСсколько инстансов сСссии ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠΏΠ°Π΄Π°Ρ‚ΡŒ, Ссли Π½Π΅ настроСно ΠΎΠ±Ρ‰Π΅Π΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ для сСссий. Π­Ρ‚ΠΎ особСнно ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π³Π΄Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ часто Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΡŽΡ‚ΡΡ.
  • ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: нСкоррСктная Ρ€Π°Π±ΠΎΡ‚Π° кэша ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ Π² API-ΠΎΡ‚Π²Π΅Ρ‚Π°Ρ…. НапримСр, измСнСния Π² Π°Π΄ΠΌΠΈΠ½ΠΊΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ сразу ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² клиСнтских прилоТСниях ΠΈΠ·-Π·Π° ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… записСй Π² кэшС.

Π­Ρ‚ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ часто связаны с особСнностями ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ stateful ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ пСрСсмотра ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. НиТС я ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Ρƒ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΠ· этих ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, ΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

Π§Ρ‚ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ тСхничСски

1. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ запросов ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…

Π’Π°ΠΉΠΌΠ°ΡƒΡ‚Ρ‹ API часто связаны с Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ запросами ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Strapi Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ запросы автоматичСски, Π½ΠΎ это Π½Π΅ всСгда ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ эффСктивны. Π’ΠΎΡ‚ нСсколько шагов для диагностики ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ EXPLAIN: Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ запросы ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ EXPLAIN, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π³Π΄Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΡƒΠ·ΠΊΠΈΠ΅ мСста. НапримСр, отсутствиС индСксов Π½Π° часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… полях ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ запросов.
  • Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ индСксы: ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, ΠΊΠ°ΠΊΠΈΠ΅ поля Ρ‡Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ… ΠΈ сортировках, ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ индСксы Π½Π° Π½ΠΈΡ…. НапримСр, Ссли Π²Ρ‹ часто Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚Π΅ ΠΏΠΎ полю created_at, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π½Π° Π½Ρ‘ΠΌ Π΅ΡΡ‚ΡŒ индСкс.
  • ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ слоТныС связи: Ссли Ρƒ вас Π΅ΡΡ‚ΡŒ слоТныС связи ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, many-to-many), ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ настроСны. ИспользованиС populate с большим количСством Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌ.

2. Настройка ΠΎΠ±Ρ‰Π΅Π³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€ΠΈ использовании Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… инстансов Strapi Π²Π°ΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰Π΅Π΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ для Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с синхронизациСй. Π’ΠΎΡ‚ основныС шаги:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅: для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΈΠ΅ сСрвисы, ΠΊΠ°ΠΊ AWS S3, Google Cloud Storage ΠΈΠ»ΠΈ DigitalOcean Spaces. Π­Ρ‚ΠΎ обСспСчит доступ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ для всСх инстансов.
  • НастройтС ΠΎΠ±Ρ‰ΠΈΠΉ Redis: для синхронизации кэша ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… сСссий ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Redis. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ситуаций, ΠΊΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹Π΅ кэша Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ инстансами.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠ±Ρ‰ΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…: ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ всС инстансы Strapi ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ.

3. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ сСссиями

БСссии ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ β€” ΠΎΠ΄Π½Π° ΠΈΠ· самых частых ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Если сСссии хранятся локально Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ инстансС, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΎΠ³ΠΈΠ½Π΅Π½Ρ‹ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ инстансами. РСшСния:

  • Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ сСссий Π² Redis: пСрСнСситС сСссии Π² Redis ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ внСшнСС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. Π­Ρ‚ΠΎ обСспСчит Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ сСссий для всСх инстансов.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ JWT: Ссли ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ сСрвСрного хранСния сСссий, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° использованиС JWT. Π­Ρ‚ΠΎ упростит ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π° счёт отсутствия нСобходимости Π² Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΌ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ сСссий.

4. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ

ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” ΠΌΠΎΡ‰Π½Ρ‹ΠΉ инструмСнт для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½ΠΎ ΠΏΡ€ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ настройкС ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ источником ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. Π’ΠΎΡ‚ Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡Π΅ΡΡ‚ΡŒ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ кэш: для ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Redis ΠΈΠ»ΠΈ Memcached. Π­Ρ‚ΠΎ обСспСчит ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ инстансами.
  • НастройтС TTL: Π·Π°Π΄Π°ΠΉΡ‚Π΅ врСмя ΠΆΠΈΠ·Π½ΠΈ (TTL) для кэша, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ автоматичСски ΡƒΠ΄Π°Π»ΡΠ»ΠΈΡΡŒ.
  • Π˜Π½Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΠΉΡ‚Π΅ кэш ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…: ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π°Π΄ΠΌΠΈΠ½ΠΊΠ΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ кэш инвалидируСтся. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ…ΡƒΠΊΠΎΠ² Strapi, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ afterUpdate.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ°

ПослС внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²Π°ΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ. Π’ΠΎΡ‚ нСсколько Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠΏΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ:

  • НагрузочноС тСстированиС: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ инструмСнты, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Apache JMeter ΠΈΠ»ΠΈ k6, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅Π΄Ρ‘Ρ‚ сСбя ΠΏΠΎΠ΄ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ.
  • ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³: настройтС ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π°ΠΊΠΈΡ… инструмСнтов, ΠΊΠ°ΠΊ Prometheus ΠΈ Grafana, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ врСмя ΠΎΡ‚Π²Π΅Ρ‚Π° API ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….
  • Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ошибки ΠΈ ΡƒΠ·ΠΊΠΈΠ΅ мСста Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. НапримСр, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Winston ΠΈΠ»ΠΈ Pino для логирования Π² Node.js.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠœΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Strapi β€” это Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… сСрвСров, Π½ΠΎ ΠΈ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ настройка инфраструктуры ΠΈ прилоТСния. Если Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ»ΠΈΡΡŒ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ ΠΏΡ€ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ Π·Π° ΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Ρ†ΠΈΠ΅ΠΉ: я ΠΏΠΎΠΌΠΎΠ³Ρƒ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Strapi для ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² ΠΏΡ€ΠΎΠ΄Π΅. Или ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ большС ΠΎ ΠΌΠΎΠΈΡ… услугах: Π”Π΅ΠΏΠ»ΠΎΠΉ ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Strapi Π½Π° AWS, DigitalOcean, Heroku.