Краткое обсуждение высокопроизводительного шлюза Apache ShenYu
Краткое обсуждение высокопроизводительного шлюза Apache ShenYu

❝Прошло много времени с начала весны, а я все еще ношу толстую ватную куртку. Иногда в юго-западных глубинках ранним утром на балкон светит застенчивое солнце, но это лишь мимолетно. Эта сцена всегда будет напоминать мне солнечный свет перед моим домом ранним утром, когда я был ребенком. Когда я проходил сквозь туман и кедры, прекрасный эффект Тиндаля все еще свеж в моей памяти ❞.

представлять

Apache ShenYu — асинхронная, высокопроизводительная, межъязыковая, отзывчивая программа. API шлюз,ShenYuгомофонный дляШэнь Юй,Я считаю, что историю о борьбе с наводнениями Даюя слышали и видели все потомки китайской нации.,Его конструкция основана на штекере,Функции расширения необходимо добавлять только в виде плагина.,Реально понял замену горячей,ShenYu сам по себе предоставляет нам огромное количество информации.,Включает преобразование протокола,Например, протокол http/https для протокола SpringCloud.,Протокол Даббо,Протокол Tars и т. д.,Безопасностьплагин,такие как jwt,знак и т. д.,Есть также текущие ограничения и т. д.,Суммируя,ShenYu очень эффективен для управления API.

красота дизайна

Мы из плагина Шэнью,многопротокольный,горячая замена,правило Давайте поговорим об этих аспектах.,конечно,больше, чем это,О других вещах мы продолжим говорить позже.

плагин

плагин — основной в ShenYu,Преимущества использования плагина:,Не связано с кодом,Если вам нужно разработать новый плагин,Дальше вам останется только реализовать соответствующий интерфейс,Он абстрагируетShenyuPluginинтерфейс,Просто нужно это реализовать,Просто определите свою собственную логику,Тогда, если вам нужно использовать этот плагин,Просто включи его,Когда не нужен,Просто закройте его.

многопротокольный

Если вы использовали SpringCloud, мы знаем, что SpringCloud предоставляет шлюз SpringCloud. GateWay,он обеспечивает маршрутизацию,утверждение,Фильтры и другие функции,Мы можем настроить его, написав код или настроив yml и другие файлы.,Но он поставляется в комплекте с SpringCloud.,Мы используем SpringCloud, чтобы использовать его.,Более того, записывать информацию, связанную с маршрутизацией, через файлы конфигурации затруднительно.,Когда много служишь,Управление API становится громоздким,И API не может управляться усовершенствованным образом.,Хотя он обеспечивает динамическую маршрутизацию,Однако динамическая маршрутизация более профессиональная в настройке.,Требуется профессиональный персонал для настройки,Сравнение затрат,И ShenYu предоставляет визуальную страницу,Управление API может быть более удобным,Внутри Шэнь Ю,SpringCloud — это тоже просто плагин,Мы также можем управлять такими фреймворками, как Dubbo.

горячая замена

Я уже упоминал плагин ранее,Но с уровня кода,Горячая замена здесь с точки зрения использования.,Давайте приведем пример,Если API ограничен,Мы можем написать логику ограничения тока на уровне интерфейса.,Возможно использование классов параллелизма Java.,Или класс RaceLimiter в Guava.,Или Redis и другие решения для ограничения тока,Итак, вам нужно написать код,Это уже связано с кодом,конечно,Если дизайн разумен,Их также можно разделить,но,В определенной степени бизнес-код по-прежнему будет иметь определенные зацепки.,А ShenYu ориентирован на API.,Пока API проксируется ShenYu,Тогда вы сможете «делать все, что захотите» с API.,Если текущий системный трафик относительно велик,Затем вы можете динамически регулировать ограничение тока,кэш и т. д.,Подождите, пока пик паводка пройдет.,Вы можете внести изменения или закрыть плагин напрямую.,Это максимально защитит систему.

в целом,Его горячая замена,«Приходи, когда понадобится.,Эвакуируйтесь в любой момент, когда вам понадобится эвакуироваться».

правило

правило — это ключевой момент в ShenYu.,Если мы использовали механизм правил,Тогда в нем будет определено много условий,Какая логика выполняется в соответствии с какими условиями выполняются?,в коде,if/else также является суждением о правиле,Правило ShenYu также является определяющим условием.,когда условия соблюдены,Просто выполните соответствующую логику,Его право принадлежит селектору.

ShenYu будет соответствовать согласно правилу,Дайте каштан,Если нам нужно выполнить кэш по результатам API,Дальше вам останется только добавить uri соответствующего API в кэшплагин.,но Реальность может быть непредсказуемой,Необходимо провести кэш из разных измерений,Тогда вы можете добавить правило,Например, по параметру запроса кэш,кэш по ip адресу,Или по кэшу доменного имени и т. д.,Затем вы можете добавить несколько условий,ShenYu обеспечивает многомерное правило,Например, заголовок запроса,параметр,uri,ip,печенье и т. д.,При фактическом использовании вы можете настроить его в соответствии со своими потребностями.,для снижения нагрузки на сервер.

Подвести итог

Выше кратко говорилось о некоторых особенностях ShenYu. Я не говорил об этом слишком много на уровне кода, я просто рассказал о нем на функциональном уровне. Позже я расскажу о его принципах и коде. будем поражены этим. Если нам нужно хорошее управление API, и я считаю, что ShenYu — очень хороший выбор.

❝На сегодня все, спасибо за просмотр, увидимся в следующем выпуске!❞

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose