Англійська назва — SST Ion

Вивчайте англійську лексику для SST Ion infrastructure-as-code: компоненти, посилання, розробка Lambda в реальному часі і етапи, пояснені для розробників, що розгортають на AWS.

SST Ion перебудував SST на вершині Pulumi, а не CloudFormation, і разом з переписом прийшов оновлений словник для того, як команди описують свою інфраструктуру. Такі терміни, як «компонент», «зв’язування» і «живий розвиток Lambda» тепер мають певне значення в розмовах SST, які відрізняються від загальної термінології AWS або Terraform. Цей посібник містить інформацію, яка вам потрібна для того, щоб ясно говорити про проекти SST Ion.

Ключовий словник

** Компонент ** — блок будівництва високого рівня, який можна використовувати багаторазово у SST (наприклад, sst.aws.Function або sst.aws.Nextjs ), який обгортає базові хмарні ресурси, потрібні для запуску певного типу служби, не вимагаючи від вас налаштування кожного з цих ресурсів вручну. “Замість підключення API Gateway і Lambda вручну, ми просто використовували компонент Function і дозволили SST займатися сантехнікою.”

** Поєднання ** — Механізм SST для надання одного типу ресурсу, обсягу дозволів доступу до іншого (наприклад, функції до бази даних) автоматично, без вручну написання правил IAM.

  • “Ми пов’ язали чергу з функцією, тому SST створив права доступу IAM і ввімкнув доступ для нас замість того, щоб ми писали правила вручну.” *

** Розробка Lambda в реальному часі ** — функція, яка передає реальні виклики AWS Lambda на ваш локальний комп’ ютер під час розробки, щоб ви могли зневаджувати і ітерувати проти реальної хмарної інфраструктури без повторного розгортання при кожній зміні. “З розробкою Lambda в реальному часі, ми можемо встановити точки зупинки локально і все ще отримувати реальні запити від розгорнутого API, що вдаряють по нашому коду.”

Stage — ізольоване середовище розгортання (наприклад, dev, staging або особиста стадія розробника), яке отримує свій власний незалежний набір хмарних ресурсів, що дозволяє декільком людям або середовищам співіснувати без зіткнень.

  • “Кожен інженер отримує свій власний стадіон, тому локальні тести ніхто не може випадково пошкодити спільне стадіонне середовище.” *

** Pulumi provider ** — основний рушій, який SST Ion використовує для забезпечення та управління хмарними ресурсами, замінюючи підхід, заснований на CloudFormation, раніше використовуваний у версіях SST.

  • “З моменту переходу на постачальника Pulumi, розгортання значно швидше, а відмінності легше розглядати перед застосуванням.” *

** Прив’ язка ресурсів ** — доступ до налаштувань пов’ язаного ресурсу (наприклад, до назви таблиці або ARN контейнера) у коді вашої програми за допомогою введеного, сформованого інтерфейсу, замість читання необроблених змінних середовища.

  • “Прив’ язка ресурсів надає нам можливість автоматичного завершення і безпеки типів для назви таблиці, отже, помилки друку буде виявлено під час компіляції, а не під час виконання.” *

Звичайні фрази

  • «Чи ви пов’язали два ресурси, або ми все ще передаємо ARN через змінну середовища вручну?»
  • «Спін-ап вашої власної стадії для цієї функції гілки, так що ви не розгортаєте над чиїмсь іншим тестуванням.»
  • «Використовуйте живий розвиток Lambda, щоб ми могли насправді зневаджувати це замість того, щоб здогадуватися з журналів CloudWatch»
  • Перевірте типову конфігурацію компонента перед тим, як писати нетипову з нуля
  • «В’язка ресурсів виявила цю помилку в назві таблиці ще до того, як ми навіть розгорнули її»

Приклади висловлювань

Прийом нового інженера:

  • “Кожен розробник отримує свою власну стадію, коли він запускає sst dev, тому ви можете вільно розгортати і тестувати без впливу на середовище інших. Live Lambda розробка означає, що ваші локальні точки зупинки працюють, навіть якщо функція технічно працює в AWS.”*

Пояснення зміни інфраструктури: “Ми пов’язали нове відділення S3 з функцією завантаження, тому SST автоматично створив правильні права доступу IAM — немає політики, яку потрібно писати вручну або переглядати окремо.”

Опис причин переходу: “Перехід на провайдер Pulumi SST Ion дав нам швидше розгортання і ясніші відмінності перед застосуванням змін, в порівнянні з версією, заснованою на CloudFormation, яку ми використовували раніше.”

Професійні поради

  • Скажіть “поєднання”, особливо при описі автоматичного підключення дозволів і доступу SST - це точніше, ніж “ми їх підключили”, що може означати все від мережі до IAM.
  • Згадайте ** стадії ** явно, коли обговорюватимемо ізоляцію середовища; це сигналізує про те, що ви розумієте модель розгортання SST на розробника або на гілку, а не одне спільне середовище розгортання.
  • Використовуйте “live Lambda development”, коли пояснюєте ваш процес зневадження колегі, що працюють з іншою фреймворковою системою — це відмінна властивість SST, яку варто назвати безпосередньо.
  • Відрізняти компонент (абстракція високого рівня SST) від базових хмарних ресурсів, які він забезпечує під час документування архітектури, щоб читачі знали, який шар вони змінюють.

Практичні вправи

  1. Поясніть у двох реченнях, що робить посилання і чому воно корисне у порівнянні з вручну написаними правилами IAM.
  2. Напишіть одне речення, щоб пояснити, що таке стадія для нового інженера.
  3. Описати переваги розробки Lambda наживо для колеги, який звик до перерозгортання після кожної зміни коду.

Навигація по лінії — практичний підхід

Ядро ефективного спілкування навколо складних систем, таких як SST Ion, не просто про те, щоб знати * імена * речей - “стадії”, “Лембда-функції” і “компоненти інфраструктури” - це про те, як вони взаємодіють, і, що найважливіше, про те, щоб надати чітку зворотну зв’язок. Багато розробників борються з передачею нюансової інформації англійською, особливо при описі технічних процесів. Це часто проявляється як надто детальні пояснення або нечіткі висновки, що залишають місце для неправильного тлумачення. Давайте розглянемо декілька типових сценаріїв і як ефективно до них підійти.

Розглянемо коментар перегляду коду: «Ця PR вводить потенційне вузьке місце. Час виконання функції Lambda здається надзвичайно довгим, особливо під час початкової стадії розгортання.» Хороша відповідь — це не просто « Виправте ». Для цього потрібні контекст і напрямок. Замість цього, ви можете сказати: “Я погоджуюся, що це потребує розслідування. Чи можемо ми перевірити налаштування Lambda, зокрема, визначення пам’яті і тайм-аута, щоб визначити, чи вони сприяють затримці? Можливо, збільшення виділеної пам’ яті на початковому етапі полегшить проблему?” Зауважте зміну мови — зосереджено на дослідженні, налаштуванні і потенційних рішеннях, а не на загальному звинуваченні у «в’ язку». Аналогічно, при описі змін у Slack, уникайте слів «Я оновив скрипт розгортання». Точнішим твердженням буде: «Я змінив скрипт розгортання, щоб використовувати нове середовище тестування для тестування, щоб переконатися, що ми зафіксували всі помилки, властиві певному етапу, перед тим, як перейти до виробництва». Ключовим тут є специфічність і зосередження уваги на що було змінено і чому.

Іншою поширеною проблемою є опис ітеративної природи живого розробки Lambda. Замість того, щоб сказати «Ми постійно оновлюємо Lambdas», розгляньте: «Наш процес включає часті, невеликі розгортання функцій Lambda на кожному етапі, що дозволяє нам швидко тестувати зміни і відкидати їх, якщо це необхідно. Ми використовуємо можливості розгортання SST Ion для цієї мети. “Це підкреслює * процес * і переваги - швидке тестування і відновлення - а не просто заяву фактів.

Крім того, пам’ ятайте, що точність є ключем до документування вашої роботи. Неясні описи типу «Це повинно працювати» є неймовірно непотрібними. Солідним описом буде: «Я реалізував новий крок перевірки на етапі 2, щоб переконатися, що всі розгорнуті функції Lambda дотримуються вказаної схеми API перед переходом до наступного етапу»

Ось приклад того, як ви можете використовувати aws cloudformation deploy у скрипту конвеєра CI/ CD (наприклад, bash) для демонстрації змін у інфраструктурі:

aws cloudformation deploy --template-file deployment.yaml --stack-name my-sst-ion-deployment --capabilities CAPABILITY_IAM CAPABILITY_AUTO_EXPAND

Ця команда демонструє використання cloudformation і шаблону YAML, концепції, які часто обговорюються, коли йдеться про інфраструктуру як код у розгортаннях SST Ion. Прапорець --capabilities підкреслює іншу область, де точна термінологія є життєво важливою - розуміння ролей IAM і можливостей автоматичного розширення.

Поширені запитання

Про що ця стаття "Англійська назва — SST Ion"?

Вивчайте англійську лексику для SST Ion infrastructure-as-code: компоненти, посилання, розробка Lambda в реальному часі і етапи, пояснені для розробників, що розгортають на AWS.

Чи безкоштовна ця стаття?

Так. Усі статті на CoderSlingo, включно з цією, доступні безкоштовно без реєстрації.

Скільки часу займає читання "Англійська назва — SST Ion"?

Приблизно 8 min.