Phrasal Verbs for Debugging and Deployment (англійською)
Вивчіть фразові дієслова, які розробники постійно використовують під час зневадження і розгортання: roll back, spin up, break down, fall over і багато інших, з реальними прикладами.
Фразові дієслова є однією з найскладніших частин технічної англійської мови для носіїв мови, які не є її рідними носієм — їх значення часто не має нічого спільного з окремими словами. « Roll back » буквально не означає « повернути назад », а « spin up » не означає « обертати ». Але це саме ті дієслова, які інженери, що говорять на рідній мові, постійно використовують під час виступів і викликів на інциденти, тому вільність тут швидко окупається.
Ключовий словник
** Відкинути ** — повернення розгортання або зміни до попереднього, відомого стану, зазвичай це робиться швидко у відповідь на проблему у виробничому середовищі. “Ми відклали випуск, як тільки кількість помилок зросла - це був найшвидший спосіб зупинити кровотечу, поки ми розслідували.”
** Спіна- ап ** — для створення і запуску нового екземпляра, служби або середовища, часто швидко і з певною, іноді тимчасовою метою.
- “Чи можете ви створити середовище тестування, щоб ми могли перевірити це, не торкаючись виробництва?” *
** Розбити ** — припинити функціонування, зазвичай це означає, що система або процес не працює повністю, або що щось розбито на менші частини.
- “Пакетне завдання завершується, коли він потрапляє на запис з нульовим полем — нам слід додати перевірку, перш ніж це станеться.” * “Давайте разложим этот эпизод на более мелкие части, прежде чем планировать спринт.”
** Перехід на інший режим ** — для аварійного або повного відключення системи, часто використовується для опису несподіваного і повного відключення. “Вся служба впала в момент, коли трафік подвоївся — ми явно не перевіряли на завантаження для цього.”
** Відновлення до / Відновлення після** — для переключення на допоміжний параметр, якщо основний параметр не спрацює, описує поведінку системи або людини у разі надзвичайної ситуації.
- “Коли кеш недоступний, служба повертається до безпосереднього запиту бази даних.” *
Звичайні фрази
- «Давайте розгорнемо швидке тестове середовище, перш ніж торкнутися чого-небудь в продюсерському процесі»
- «Ми мусили повертатися назад двічі, перш ніж виправлення дійсно застрягло»
- «Сервіс перегрівається під сильною нагрузкою — нам потрібно подивитися на масштабування перед наступною великою подією в трафіку.»
- Чи можемо ми зрозуміти, що відбувається, якщо ми не розуміємо, що відбувається?»
- Якщо первинний регіон йде вниз, трафік автоматично повертається до вторинного
Приклади висловлювань
Описання відповіді на подію за допомогою фразових дієслів: “Около 2-й ночи, API начал падать под нагрузкой. Ми створили два додаткових екземпляри, щоб поглинути трафік, але в кінцевому підсумку мусили відкласти розгортання, яке ввело регресію.”
Розповідь про кроки зневадження у режимі « стоячи »: “Я досі не можу зрозуміти, де саме запит зазнав невдачі — я сузив його до місця між шлюзом і службою автентифікації, але я ще не закріпив його.”
Пояснення шаблону стійкості у перегляді проекту:
- “Якщо основний постачальник платежів недоступний, ми автоматично повертаємось до другого постачальника, тому один вихід з ладу не знищує касу повністю.” *
Звітування про вирішену подію:
- “Ми повернули в 2:14, і служба повернулася через хвилину. Ми завтра проведемо належне розслідування причин, як тільки всі посплять.”*
Професійні поради
- Не перекладайте фразові дієслова буквально з вашої рідної мови — їх значення є ідіоматичним, отже швидше вивчати їх як цілі одиниці (« roll back » = revert, а не « roll » + « back »).
- ** Roll back ** і ** fall over ** — це два найпоширеніші фразові дієслова у розмовах про події — вивчіть їх першими, якщо у вас є лише декілька хвилин часу.
- ** Спіна- уп** працює майже з усіма ефемерними об’ єктами: екземплярами, середовищами, контейнерами, навіть зустрічами (« Давайте швидко синхронізуємо це »).
- ** Розбити на частини ** має два дуже різних значення — « припинити роботу » і « розбити на частини » — контекст дає змогу зрозуміти, яке з них слід розуміти, але варто звернути увагу на обидва.
- Практикуйте їх вголос у минулому часі (“ми повернули назад”, “воно впало”, “ми обернулися”), оскільки дієслова у минулому часі використовуються найчастіше в постмортму та на виступах.
Практичні вправи
- Напишіть три речення, що описують гіпотетичний інцидент, використовуючи “перевернутися назад”, “перевернутися” і “обертатися”
- Використовуйте слово « break down » один раз з кожним з двох значень у окремих реченнях.
- Описати резервну систему у вашому власному проекті за допомогою « falls back to. »
На практиці: Навігація конфлікту в Pull Request
Будьмо чесними - перегляди коду рідко бувають сонячним і веселим. Вони часто є місцем для конструктивної критики, і це може відчуватися… ну, критично. Зрозуміти нюанси того, як досвідчені розробники поширюють цю критику через фразові дієслова, є ключовим для ефективної співпраці, особливо коли ви все ще будуєте свій професійний англійський словник. Це не просто про виправлення коду; це про як ви сформулюєте проблему і запропонуєте рішення.
Розглянемо такий сценарій: Сара, старший інженер команди, коментує запит на витяг, надісланий Девідом, молодшим розробником, щодо нововведення в їхній платформі електронної комерції. У коментарі йдеться: «Це починає перекидатися – я бачу періодичні помилки, коли користувачі додають товари до своєї корзини під час годин пік». Просте твердження «код не працює» не допоможе. Сара використовувала фразове дієслово «перевернутися», щоб негайно передати критичний, нестабільний стан. Це свідчить про серйозну проблему, а не просто про незначну помилку. Ще важливіше, це спонукає Девіда дослідити конкретний час – «під час годин пік» – що вказує, де проблема найбільш очевидна. Більш прямим, але, можливо, менш корисним коментарем може бути « Цей код потребує зневадження ». Хоча це і точніше, але у цьому коментарі не вистачає терміну, і він направляє розробника до нечіткого завдання без надання контексту або пояснень.
Аналогічно, при описі процесу розгортання, такі фрази, як « spin up » і « roll back » мають певну вагу. « Spin up » вказує на швидку активацію середовища — часто використовується у контейнеризованих розгортаннях — тоді як « roll back » означає повернення до попереднього стану, що сигналізує про проблему з поточним реалізуванням. Уявіть, що Девід відповідає: « Я створив новий сервер для тестування цього ». Це чітке і коротке повідомлення про дію розгортання. І навпаки, якщо розгортання * зіткнулося * з проблемами, Сара може порадити: « Давайте повернемося до останньої стабільної версії, поки ми не зможемо визначити кореневу причину ». Це передає відчуття невідкладності і направляє Девіда до конкретного, дієвого кроку.
Крім того, при розбиванні складних проблем, розробники часто використовують такі фрази, як «розбити» проблему на менші, управляючі частини. Цей параметр особливо корисний під час сеансів зневадження. « Розглянемо це повідомлення про помилку, щоб побачити, чи зможемо ми визначити джерело ». Цей параметр сприяє систематичному підходу і запобігає відчуттю перевантаженості у зв’ язку з цілою базою коду.
Ось приклад того, як ви можете скористатися docker compose, щоб швидко запустити тестове середовище:
docker compose up --scale web=3 -d
Ця команда, використовуючи інструмент docker compose, демонструє, як розробники швидко розгортають декілька екземплярів програми - ефективно “розгортаючи” декілька середовищ для тестування. Зрозуміти ці тонкі зміни у фразування значно поліпшить ваше спілкування і співпрацю у команді розробників.