- Новият инструментариум с отворен код за разработване на високопроизводителни HTTP обратни прокси приложения е известен като YARP.
- Работи както на Linux, така и на Windows и може да се използва за целите на сигурността и балансиране на натоварването между другото.
- YARP проверява целия входящ мрежов трафик, преди да реши къде да го изпрати.
- Инструментариумът идва с библиотека, която може да бъде фиксирана в приложения, за да добави практичност на обратното прокси.
Microsoft пусна нов инструментариум с отворен код за разработване на високопроизводителни HTTP обратен прокси приложения. YARP (Yet Another Reverse Proxy) е написан на C++ и работи на Windows и Linux.
Разработчиците могат да използват YARP за осигуряване на балансиране на натоварването, маршрутизиране, кеширане, компресиране, TLS терминиране и регистриране за HTTP сървъри. Може да се използва и за предоставяне на защитни функции като ограничаване на скоростта и филтриране на заявки.
YARP също е проектиран да бъде силно мащабируем: използва асинхронен модел, който се мащабира с броя на ядрата в системата. Всеки HTTP поток или WebSocket връзка се обработва от отделен работник на нишка.
Какво е?
HTTP обратният прокси е компонент, който поема целия входящ трафик към сървър, анализира всяка заявка и прозрачно проксира заявката към един или повече бекенд сървъри.
Обратният прокси може да разпредели натоварването от входящи заявки към няколко сървъра, подобрявайки производителността на цялата система.
YARP е инструментариум с отворен код за разработване на високопроизводителни HTTP обратни прокси приложения.
Като готово за производство и добре изпитано решение, той е проектиран за лесно внедряване и управление и е достатъчно разширяем, за да се възползва от новия хардуер, възможности на ОС и друг потенциал подобрения.
Как работи?
Може би се чудите как работи приложение за обратно прокси.
Просто казано, обратно прокси приложение действа като сървър на посредник между клиенти и други сървъри.
Той прихваща целия входящ мрежов трафик, разглежда входящата заявка и след това решава къде да я изпрати.
Новият инструментариум на Microsoft, наречен Yet Another Reverse Proxy (YARP), е насочен към високопроизводителни HTTP обратни прокси приложения.
YARP включва всички необходими компоненти за разработване и тестване на вашето собствено обратно прокси приложение.
Какви са неговите характеристики?
Основните характеристики на YARP включват:
- Поддръжка за междуплатформени компилации (Windows, Linux, OS X) и мобилни устройства като iOS и Android.
- Използването на асинхронен I/O за ефективно обработване на връзки в редица платформи.
- API на плъгин, който поддържа персонализирани модули и други разширения на трети страни.
- Няколко вградени плъгини: статична доставка на файлове, компресиране на gzip, пренаписване на URL, балансиране на натоварването и др.
- Полезни инструменти за отстраняване на грешки в производителността на вашето приложение.
Какво трябва да знаете за това
Microsoft пусна YARP, обратен прокси, предназначен за високопроизводително HTTP балансиране на натоварването, и ето няколко ключови неща, които трябва да знаете за него.
- Софтуерът е с отворен код и може да се използва за подобряване на производителността, сигурността, надеждността и мащабируемостта на HTTP приложенията.
- Инструментариумът предоставя библиотека, която може да бъде вградена в приложения за добавяне на обратна прокси функционалност.
- Репозиторията на GitHub на проекта включва примерно приложение, използващо библиотеката YARP. Това приложение е достъпно и като изображение на Docker.
- YARP е разработен от екипа на Microsoft Edge и е използван вътрешно в Microsoft за изграждане на собствена базирана на код услуга за обратен прокси.
- Инструментариумът включва среда за изпълнение, която обработва всички HTTP заявки и отговори, включително маршрутизиране, оптимизации на транспорта, компресиране, кеширане и регистриране. Той също така включва API за конфигуриране на времето за изпълнение и уеб-базирано табло, което показва статистика в реално време.
Какво мислите за инструментариума YARP? Нещо, което бихте използвали? Уведомете ни в секцията за коментари.