30 користувачів вивчилиОпубліковано о 2024.04.04 Востаннє оновлено о 2024.12.03
Токени
У швидко змінювальному світі технологій роль мережевих проксі стала більш важливою, ніж будь-коли. Серед них Envoy виділяється не лише як інструмент, а як основа для хмарних додатків. Спочатку розроблений інженерами Lyft у 2016 році, Envoy — це проксі-сервер з відкритим вихідним кодом, який спеціально адресує проблеми надійності, що виникають у архітектурах мікросервісів. З моменту свого створення він перевищив свою первісну мету, ставши важливим ресурсом для розробників і технологів по всьому світу, переосмислюючи стандарти комунікації між сервісами.
Envoy — це, в основному, високопродуктивний, розподілений проксі-сервер, призначений для мікросервісів і хмарних додатків. Він є як комунікаційною шиною, так і «універсальним рівнем даних», що робить його універсальним рішенням для масштабних архітектур мікросервісів. Основна функціональність зосереджена на наданні важливих функцій, таких як:
Абстрагуючи мережевий рівень, Envoy надає можливість розробникам створювати надійні програми, не прив'язуючись до конкретних інфраструктурних обмежень.
Іншпірацією для створення Envoy можна вважати інноваційні уми Мета Кляйна та Пета Мореллі, які на той час були інженерами в Lyft. Їхньою метою було вирішення значних проблем надійності, властивих мікросервісам і хмарним додаткам. Завдяки своїм спільним знанням, вони заклали основу для того, що згодом стало одним з найбільш широко використовуваних проксі в технологічній індустрії.
Як проект з відкритим вихідним кодом, який підтримується Фондом хмарних обчислень (CNCF), Envoy не дотримується традиційної моделі інвестицій. Замість того, щоб покладатися на фінансових спонсорів, його розвиток підтримується внесками численних організацій, техноентузіастів та професіоналів, які прагнуть вдосконалити можливості та функціональність платформи. Підтримка CNCF є свідченням важливості проекту в сучасному технологічному середовищі.
Унікальність Envoy полягає в його інноваційній архітектурі та можливостях. Працюючи як сервісна сітка, Envoy використовує кілька основних компонентів для управління мережевим трафіком:
Архітектура Envoy спроектована так, щоб бути незалежною від платформи, що дозволяє динамічно конфігурувати за допомогою API, роблячи її розширюваною та адаптувальною до різних фреймворків та середовищ. Підтримка широкого спектру протоколів, таких як HTTP/2 та gRPC, підвищує її гнучкість, дозволяючи розробникам безперешкодно впроваджувати її в різних додатках.
Шлях Envoy був позначений кількома ключовими віхами, які підкреслюють його еволюцію та зростаючу значущість у технологічній екосистемі:
Envoy створений для ефективного оброблення великих обсягів трафіку і має невеликий обсяг пам'яті. Це робить його особливо придатним для компаній з вимогливими додатками.
Розробники можуть використовувати можливість динамічної конфігурації Envoy через API, що надає необхідну гнучкість для адаптації до змінюваних вимог додатків.
Envoy впроваджує сучасні техніки балансування навантаження, такі як автоматичні повторні спроби та розриви схеми, забезпечуючи безперервне обслуговування навіть під високими навантаженнями.
Завдяки своїй здатності надавати глибоку спостережливість по трафіку рівня 7, Envoy дозволяє розробникам досконало контролювати та аналізувати свої програми. Вбудована підтримка розподіленого трасування дозволяє отримувати додаткову інформацію та налагоджувати помилки.
Безпека є важливою в цифрову епоху, і Envoy спроектовано з кількома заходами безпеки, включаючи завершення TLS і протоколи автентифікації, що забезпечує безпечну передачу даних.
Разом зі своїми основними функціями, Envoy ініціював проекти, такі як Envoy Gateway. Цей проект з відкритим вихідним кодом має на меті спростити використання Envoy як API шлюзу, полегшуючи управління та конфігурацію для організацій. Зосереджений на підвищенні доступності, Envoy Gateway втілює перспективний дух проекту Envoy, полегшуючи компаніям впровадження сучасних, масштабованих рішень для управління API.
Envoy є свідченням інновацій у технології мережевих проксі, демонструючи силу співпраці з відкритим вихідним кодом у вирішенні складних проблем у хмарних середовищах. Від його детальної архітектури до акценту на безпеці та продуктивності, Envoy продовжує формувати майбутнє комунікації між сервісами. Оскільки організації дедалі більше переходять до мікросервісів і хмарних архітектур, роль Envoy є важливішою ніж будь-коли, закріплюючи його місце в наборі інструментів сучасних розробників і технологів.