Англійський словник для розробників Neon Serverless Postgres

Learn the English vocabulary for Neon serverless Postgres — branching, autosuspend, compute endpoints, connection pooling, and point-in-time restore.

Neon — це безсерверна платформа Postgres, яка вводить декілька концепцій, яких не можна знайти в традиційному хостингу баз даних. Якщо ви приєднуєтесь до команди, яка використовує Neon, або ви документуєте свій стек для міжнародних колег, вам потрібно точно пояснити концепції, специфічні для Neon, англійською мовою. У цій статті описано основні слова Neon і те, як їх використовувати у професійних розмовах.

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

Відродження Визначною особливістю Neon є можливість створювати миттєві, ізольовані копії бази даних («гілки») без дублювання зберігання. Гілки використовуються для розробки, тестування і перегляду середовищ. Кожна гілка має свій власний рядок з’ єднання, але спільно використовує базове сховище зі своєю батьківською гілкою доки вона не розходиться.

  • Приклад: « Я розгалужу базу даних для цієї можливості, щоб я міг виконувати міграції в ізоляції, не впливаючи на головну гілку. » *

Копія при записі Основний механізм, який робить розгалуження Neon ефективним. Дані не буде фізично скопійовано під час створення гілки — замість цього нові записи зберігатимуться окремо лише у разі змін. Це робить створення гілок майже миттєвим, навіть для великих баз даних. Приклад: «Неонові гілки швидко створюються завдяки зберіганню копіювання при записі — ви не копіюєте гігабайти даних, а лише метадані шару зберігання.»

** Обчислення кінцевої точки ** Віртуальний екземпляр обчислень, який виконує Postgres для вказаної гілки. У Neon, зберігання і обчислення розділені — кожна гілка отримує свою власну обчислювальну кінцеву точку, яку можна незалежно масштабувати або призупинити.

  • Приклад: « У мене закінчується час очікування з’ єднання. Чи можете ви перевірити, чи була призупинена кінцева точка обчислення для гілки стажування?»*

Автоприпинення Функція Neon, яка автоматично припиняє обчислення кінцевої точки, якщо гілка не виконувалась протягом налаштованого періоду часу. Зменшує витрати на розробку і перегляд гілок, які не використовуються постійно. Приклад: «Я налаштував автоматичне припинення роботи після 5 хвилин бездіяльності на всіх гілках попереднього перегляду — це зменшує наші витрати.»

Скалярний до нуля Можливість повного припинення роботи обчислювального шару (зменшення його до нуля обчислювальних одиниць) у разі його невикористання і автоматичне відновлення роботи після встановлення нового з’ єднання. Увімкнути облік без сервера для Postgres. Приклад: «Шановний користувач, масштабування до нуля чудово підходить для стадіонарного використання — ми не платимо за обчислення протягом ночі, коли ніхто не використовує їх.»

** Холодний запуск ** Затримка, яка виникає, коли з’ єднання пробуджує призупинену кінцеву точку обчислень. Холодний запуск Neon зазвичай менше секунди, але це варто відзначити в контекстах, чутливих до затримки.

  • Приклад: « Якщо у вашій програмі виникають проблеми з холодним запуском, налаштуйте кінцеву точку обчислень так, щоб вона мала як мінімум один активний обчислювальний блок, щоб вона ніколи не припинялася повністю. » *

** Об’ єднання з’ єднань (режим PgBouncer) ** Neon інтегрує PgBouncer для об’ єднання з’ єднань, що дозволяє багатьом з’ єднанням програм спільно використовувати менше дійсних з’ єднань Postgres. Це важливо для середовищ без сервера і середовищ з обмеженим доступом, де відкривається багато короткочасних з’ єднань.

  • Приклад: « Перемкнути ваш рядок з’ єднання на кінцеву точку об’ єднання — у безсерверних функціях ви вичерпаєте обмеження з’ єднань Postgres без об’ єднання з’ єднань. » *

** Обчислювальні одиниці (CU) ** Одиниця обчислювальної потужності у Neon. Один CU забезпечує 1 vCPU і 4 ГБ оперативної пам’яті. Neon підтримує дробові CU (наприклад, 0, 25 CU) для малих завантажень і автоматичне масштабування між мінімальним і максимальним параметром CU.

  • Приклад: « Для виробничих цілей ми встановили мінімум 1 CU і максимум 4 CU з увімкненим автомасштабуванням. » *

** Відновлення в момент часу (PITR) ** Можливість відновлення бази даних (або створення гілки) з будь- якої точки недавнього минулого за допомогою зберігання журналу постійного запису (WAL) Neon. Корисно для відновлення випадкової втрати даних.

  • Приклад: « Хтось скинув таблицю у виробництві. Я використовував відновлення в точці часу, щоб розгалужити з 10 хвилин до інциденту і відновити дані. “*

Фрази і фразеологізми

** « Розгалужити базу даних для тестування » ** Найпоширеніша фраза дії, специфічна для Neon. Використовуйте його природно у дискусіях щодо розробки.

  • Приклад: « Перед запуском перенесення розгалужте базу даних для тестування, щоб ми могли перевірити її без торкання до виробничих даних. » *

“Налаштувати автоприпинення” Встановлює час очікування, після якого кінцева точка обчислення буде призупинено. Приклад: «Налаштувати автоматичне припинення роботи на 300 секунд на гілці розробників — її занадто часто залишали працювати вночі.»

** « Використовувати рядок з’ єднання з спільним фондом » ** Практичні інструкції щодо з’ єднання за допомогою PgBouncer замість безпосереднього з’ єднання з Postgres.

  • Приклад: « Використовуйте рядок з’ єднання у змінних середовища Vercel — прямі з’ єднання під час навантаження перевищать обмеження у 100 з’ єднань. » *

“Кінець холодний” Описує кінцеву точку обчислення, яка зараз призупинена і буде заснована знову при наступному з’ єднанні.

  • Приклад: « Конечна точка не працює — дайте їй секунду на пробудження після надсилання першого запиту. » *

** « Відновити з певного часу » ** Дія, яка виконується за допомогою відновлення у певну точку часу для створення гілки у певний момент історії.

  • Приклад: « Я можу відновити з певного часу — чи знаєте ви приблизно, коли було записано пошкоджені дані? » *

Практичні рекомендації

  1. «Я налаштував Neon branch на запит pull за допомогою інтеграції GitHub — кожен PR отримує свою власну ізольовану базу даних автоматично.»
  2. «Кінечна точка стажування налаштована на масштабування до нуля вночі, що знижує вартість на 40 доларів на місяць»
  3. «Ми втратили помилку вичерпання бази даних з’єднань у виробництві — нам потрібно переключити функції Lambda на використання бази даних кінцевої точки замість прямих з’єднань»
  4. «Наше вікно відновлення в певний момент часу становить 7 днів — якщо ми виявимо проблему з даними протягом тижня, ми можемо відновити без необхідності вручну створювати резервну копію»
  5. «Гілкування є миттєвим навіть для нашої 50GB бази даних через зберігання копіювання при записі — він не копіює ніяких даних, поки гілка не розходиться»

Необхідно уникати помилок

** Плутанина між « гілкою » (концепція даних) і « кінцевою точкою обчислення » (концепція обчислення) ** Гілка є знімком/розгалуженням даних. Кінечна точка обчислення — це рівень обчислень, який виконує Postgres на даних. Вони є окремими концепціями в архітектурі Neon. Замість: “Я призупинив гілки.” Скажіть: «Я призупинив обчислювальну кінцеву точку для гілки.»

** Використання прямих з’ єднань у середовищах без сервера ** У AWS Lambda, Vercel Functions або Cloudflare Workers, кожне викликання функції може відкрити нове з’єднання Postgres. Без об’ єднання ви швидко досягнете обмеження з’ єднань.

  • Завжди вказувати: « Використовувати кінцеву точку Neon під час з’ єднання з безсерверних або межових функцій. » *

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

  • Пояснення: « Якщо затримка холодного запуску є неприйнятною для цієї гілки, встановіть мінімальну CU 0. 25, щоб вона не перегрівалась. » *

Summary

Neon вводить словник, що знаходиться на перетині Postgres і безсерверної архітектури: розгалуження, автоприпинення, обчислення кінцевих точок, масштабування до нуля і відновлення в точці часу. Ці концепції є справді новими для більшості розробників Postgres, і можливість обговорювати їх англійською мовою допоможе вашій команді ефективно використовувати Neon, швидко зневаджувати проблеми і приймати рішення щодо того, чи має сенс використовувати Postgres без сервера.

Національний гідрографічний інститут: Відповідь і відповіді

Будьмо чесними – навіть з глибоким розумінням технічних концепцій, пов’ язаних з Neon Serverless Postgres, ефективне спілкування англійською мовою в команді розробників може представляти унікальні виклики. Це не просто про те, щоб знати що робити; це про те, щоб чітко сформулювати свої ідеї, отримувати конструктивний зворотній зв’язок і брати змістовну участь у дискусіях. У цьому розділі описано особливі формулювання і підходи, які часто використовуються у професійних ситуаціях, особливо у випадку технічних питань або співпраці щодо змін коду.

Однією з найчастіших перешкод для носіїв англійської мови, які не є її рідними носієм, є тонкість зворотного зв’язку. Просте «це не працює» може бути неймовірно непотрібним. Замість цього, розгляньте можливість формулювання ваших спостережень у вигляді питань або прохання про пояснення. Наприклад, рецензент може відповісти на затвердження щось на зразок: «Чи можете ви розібратися, чому ви обрали цей конкретний підхід? Це відхилення від наших встановлених правил схеми». Або, якщо ви зіткнулися з проблемою з автоматичним припиненням роботи, « Я помітив, що база даних була ненадовго припинена — чи не могли б ми перевірити, чи не впливає на її поведінку якесь з налаштувань? » Використання таких фраз, як « чи могли б ми дослідити…» або « можливо, нам слід розглянути…», демонструє відкритість і запрошує до співпраці, а не до критики. Аналогічно, коли ви пишете описи PR, намагайтеся бути детальнішими — не просто вкажіть * що * ви змінили; поясніть * чому *. Хорошим описом може бути: « Впроваджено групування з’ єднань для поліпшення швидкодії запиту за рахунок зменшення витрат на встановлення нових з’ єднань. Це вирішує повідомлені проблеми з затримкою з повільним читанням в нашому виробничому середовищі»

Крім того, пам’ ятайте про ідіоми і поширені фрази. Терміни, такі як «краєвий випадок» — що означає рідкісну або незвичайну ситуацію — часто використовуються, але їх точне значення може бути заплутаним, якщо не повністю зрозумілим. Аналогічно, такі фрази, як « зневадження гумової качки » (пояснення проблеми неживому об’ єкту) є культурно специфічними і можуть потребувати подальшого пояснення в межах вашої команди. Сфокусуйтеся на ясній, прямої мові, коли це можливо, доповнюючи контекст, коли це необхідно. Не бійтеся просити про пояснення — це майже завжди краще, ніж робити припущення. Корисне повідомлення Slack після перегляду коду може бути таким: « Дякую за відгук! Можете пояснити, де саме відбулося відхилення від схеми? Я хочу переконатися, що я вирівнюю свої майбутні зміни»

Нарешті, пам’ятайте, що активне слухання є ключем. Справжнє розуміння того, що говорять інші, а не просто слухання слів, значно поліпшить вашу здатність ефективно реагувати і робити значний внесок. Вправлятися у підсумкуванні відгуку вашими словами, щоб переконатися у його розумінні.

-- Example: Checking Connection Pool Usage (using pgbouncer metrics)
SELECT COUNT(*) FROM pg_bouncer_connection WHERE state = 'active';

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

Про що ця стаття "Англійський словник для розробників Neon Serverless Postgres"?

Learn the English vocabulary for Neon serverless Postgres — branching, autosuspend, compute endpoints, connection pooling, and point-in-time restore.

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

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

Скільки часу займає читання "Англійський словник для розробників Neon Serverless Postgres"?

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