Англійська для розробників Apache Pulsar

Освоєння англійської лексики, яка потрібна розробникам для обговорення архітектури обміну повідомленнями у просторах імен з декількома користувачами Pulsar, режимах підписки та ступеневому зберіганні.

Apache Pulsar — це розподілена платформа для обміну повідомленнями і потокового передачі даних, побудована навколо багатокористувацької системи та розділення між шаром обміну повідомленнями (брокери) і шаром зберігання (BookKeeper). Його словник — «орендатор», «простор імен», «режим підписки», «рівневе зберігання» — зупиняє команди, що прибувають з Kafka, де модель є більш плоскою. Цей підручник містить англійську мову, яку використовують під час обговорення Pulsar з командою.

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

** Арендатор / простір імен ** — дворівневе групування Pulsar над темою: арендатором зазвичай є організація або бізнес- підрозділ, а простір імен у ньому групує пов’ язані теми з спільними правилами (збереження, реплікація). “Дайте команді з обману власний рентієр замість того, щоб переносити їх теми у спільний простір імен — таким чином їхня політика зберігання не вплине на жодну іншу.”

** Режим підписки (ексклюзивний, спільний, відключення, спільний ключ) ** — параметр, який визначає, яким чином декілька користувачів однієї підписки спільно використовуватимуть повідомлення теми, від спільного використання повідомлення лише одним користувачем до розповсюдження за допомогою балансованого навантаження ключів. “Переключити режим спільного доступу на режим спільного доступу до ключів — зараз повідомлення для одного користувача можуть потрапляти на два різні споживачі, які не мають порядку, а режим спільного доступу до ключів гарантує порядок за ключами.”

** Брокер проти букмекера ** — розділена архітектура Pulsar: брокери обробляють маршрутизацію, відправку і з’ єднання з клієнтами, а букмекери (вузли BookKeeper) обробляють фактичне тривале зберігання даних повідомлень. “Збільшення розмірів брокерів дає нам більше можливостей для підключення і відправки, але не додає об’ єму пам’ яті — для цього нам потрібно збільшити розміри букмекерів.”

** Типова пам’ ять ** — можливість автоматичного перенесення старих сегментів повідомлень з BookKeeper на дешевше об’ єктне сховище (наприклад, S3), зберігаючи можливість їх запиту без окремого конвеєра архівування. “Ми не потребуємо нетипового завдання архівування для старих сегментів — ступеневе зберігання автоматично переносить їх до S3, коли вони досягають встановленого порогу.”

** Гео- реплікація ** — вбудований у Pulsar механізм для реплікації тем у кластерах у різних регіонах, налаштований на рівні простору імен, а не на рівні теми.

  • “Ввімкнути геореплікацію у просторі імен, а не у кожній темі окремо — нові теми, створені за допомогою цього простору імен, успадковуватимуть правила реплікації автоматично.” *

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

  • Чи має це жити у власному ренті, чи це добре ділитися простором імен з іншими службами?»
  • Який режим підписки нам потрібен тут — чи потребують споживачі строгого замовлення за ключем, чи є спільне балансування навантаження в порядку?»
  • Чи є це проблемою брокерської здатності або проблемою зберігання букмекера?»
  • Чи ми встановили поріг ступеневої зберігання для цього простору імен, або все залишається на гарячому зберіганні назавжди?
  • «Чи гео-реплікація налаштована на рівні простору імен, і чи кожна тема під нею повинна реплікуватися?»

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

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

Пояснення рішення про проектування: “Ми розділяємо облік і аналітику на окремі користувачі, щоб зміна політики зберігання з одного боку ніколи не могла випадково вплинути на іншу сторону.”

Опис події: “Кошти на зберігання зросли, оскільки в цьому просторі імен не було ввімкнено ступеневе зберігання — кожне повідомлення залишалося на дорогому гарячому сховищі замість перенесення до S3.”

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

  • Скажімо “tenant” і “namespace” навмисно, а не просто “topic group” — дворівнева модель є центральною для того, як Pulsar ізолює команди і політики.
  • Під час зневадження проблем замовлення, запитайте “який режим підписки має цей споживач?” - це зазвичай перша річ, яку потрібно перевірити, перш ніж підозрювати виробника.
  • Розрізняти broker і bookie явно, коли обговорюється масштабування — об’ єднання їх призводить до масштабування неправильного рівня і не виправлення вузької місцини.
  • Згадайте ** поріг рівнів зберігання **, особливо коли пропонуєте зменшення витрат — це вбудована відповідь Pulsar на питання «як ми дешевше зберігаємо старі дані, які можна запитати»

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

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

Зміни в екології в умовах урбанізації

Як розробник, що працює з просторами імен Apache Pulsar з декількома користувачами - критична функція для організацій, що управляють декількома програмами або командами в рамках одного кластера - чітке і точне спілкування є найважливішим. Термінологія навколо цих конфігурацій може бути щільною, і нерозуміння може швидко призвести до операційних проблем. Це не просто про те, що ви * зробили *; це про те, щоб сформулювати * чому * ви це зробили, потенційний вплив, і як інші повинні інтерпретувати ваші зміни. Поширеною пасткою для носіїв англійської мови, які не є рідними, є використання надмірно технічного жаргону без контексту, що призводить до плутанини. Наприклад, просто сказати «Змінений простір імен «виробництво»» недостатньо. Вам потрібно передати масштаб зміни і її наслідки.

Розгляньте повідомлення Slack під час перегляду коду: «Щось оновлено простір імен «marketing-campaign» в кластері Pulsar. Змінено правила зберігання на 7 днів, щоб відповідати вимогам GDPR. Це забезпечує, що ми зберігаємо дані кампанії тільки протягом законно встановленого періоду, зменшуючи витрати на зберігання. “Ключем тут є явне пов’язання технічної дії (політика зберігання) з бізнес-вимогою (GDPR). Використання таких фраз, як «вирівняно» і «забезпечує» додає ясності і демонструє розуміння ширшого контексту. Крім того, проактивно передбачаючи питання - “Чи це впливає на будь-які інші простори імен?” або “Як це пов’язано з нашими існуючими правилами зберігання даних?” - демонструє проактивні комунікаційні навички, ціновані в спільних середовищах розробки. Також важливо постійно використовувати встановлену термінологію; наприклад, посилаючись на «зберігання даних» замість нечітких описів, таких як «скільки часу ми зберігаємо речі»

Інший приклад з’являється в описі Pull Request: «Реалізована стратегія ступеневої зберігання для простору імен «аналітика» з використанням нативних можливостей Pulsar. Дані автоматично переміщуються з високопродуктивного SSD-накопичувача (рівень 1) на дешевше HDD-накопичувача (рівень 2) через 30 днів на основі частоти доступу. Це оптимізує нашу структуру витрат без впливу на продуктивність запиту, оскільки ми налаштували стратегію динамічного індексування для даних рівня 2. ” Тут опис розбиває складну конфігурацію на перетравлювані компоненти – ступеневе зберігання, відмінність SSD / HDD і динамічне індексування – кожен з яких пояснюється з ясними наслідками (“оптимізує нашу структуру витрат”, “без впливу на продуктивність запиту”). Цей рівень деталізації демонструє технічну компетентність і дозволяє рецензентам швидко оцінити вплив зміни. Пам’ ятайте, що завжди слід описувати зміни з точки зору * переваг *, а не просто описувати * те, що * ви зробили.

Нарешті, при обговоренні цих конфігурацій з зацікавленими сторонами поза розробкою, використання простої мови є обов’язковим. Уникайте технічного жаргону і зосередьтеся на бізнес-цінності - економії коштів, поліпшеному управлінні даними або поліпшеній продуктивності. Просте пояснення, наприклад, «Ми змінили термін зберігання даних маркетингової кампанії, щоб відповідати нормативним вимогам, що також допоможе нам зменшити наші витрати на зберігання» є набагато ефективнішим, ніж докладне технічне пояснення, яке може бути неправильно зрозумілим.

# Example Pulsar CLI command to list namespace configurations:
pulsar_cli namespaces ls --tenant "marketing-campaign"

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

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

Освоєння англійської лексики, яка потрібна розробникам для обговорення архітектури обміну повідомленнями у просторах імен з декількома користувачами Pulsar, режимах підписки та ступеневому зберіганні.

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

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

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

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