WormHole: сервис, платформа и управление через шлюз
После настройки можно запускать.
Адреса на GitHub: https://github.com/deathearth/wormhole
Адрес на Gitee: https://gitee.com/deathearth/wormhole
В компании было несколько бизнес-сервисов, которые были разделены на несколько веб-проектов и проектов Dubbo.
Для C-терминала: при вызове необходимо настроить соответствующее окружение IP/домен и т. д., а если есть новый сервис, то нужно дополнительно добавить конфигурацию.
Что касается S-терминала, то необходимо не только сосредоточиться на написании бизнес-услуг, но и поддерживать тесный контакт с C-терминалом. Слой web и слой сервиса Dubbo слишком сложны, что не способствует последующему разделению или настройке.
На основе этой ситуации мы начали проект шлюза, который предоставляет единый интерфейс доступа и управление интерфейсом. Это эффективно изолирует C-терминал от S-терминала.
Спасибо за поддержку и помощь коллегам!
WormHole означает «червоточина». В физике это связь между чёрной дырой и белой дырой. Его структура похожа на сеть шлюзов, соединяющих два мира. Каждый занимается своим делом, не заботясь о том, что происходит посередине. Вот так:
WormHole — это простая и удобная в использовании платформа управления API. Цель состоит в том, чтобы снизить связанность между разработкой серверных сервисов и клиентскими вызовами. Через WormHole этот уровень делает разработку всего проекта более совершенной. Разработчики на стороне клиента могут искать необходимые интерфейсные данные из панели управления для вызова, а разработчики на стороне сервера могут определять интерфейсы после завершения разработки и синхронизировать их с панелью управления.
У WormHole есть две версии: одна основана на SpringMVC, другая — на SpringBoot, которая является версией оригинальной модификации.
Примечание: слой сервера относится к конкретному поставщику услуг dubbo, а компоненты, такие как SpringMVC, Shiro, JSP, Velocity, Servlet и т. д., интегрируются с SpringBoot в соответствии с фактическими потребностями. Часть конфигурации всё ещё имеет пространство для оптимизации и может быть настроена в соответствии с требованиями.
Версия SpringBoot WormHole объединяет SpringMVC, Shiro, JSP, Velocity и Servlet и другие компоненты с SpringBoot. Некоторые конфигурации также имеют пространство для оптимизации, которое можно настроить в соответствии с конкретными потребностями.
wormehole
/ — wormehole-api 【определение управления панелью, определение сущности, передача объекта, исключение и т. д.】
/ — wormehole-domain 【определение информации клиента, токен пользователя, объект результата и т. д.】
/ — wormehole-web 【реализация панели управления, реализация бизнес-логики интерфейса】
wormehole-api
/ — com.kaistart.gateway
/ — api.service 【все определения интерфейсов шлюза】
/ — domain 【объекты сущностей, связанные со шлюзом】
/ — dto 【объект передачи бизнеса】
/ — exception 【определяет пользовательское исключение, код возврата】
/ — support 【определяет общедоступные объекты】
/ — json 【определяет общедоступный объект ответа】
/ — page 【определяет общедоступный объект разбивки на страницы】
/ — proto 【определяет общедоступный интерфейс】
/ — tool 【определяет инструменты преобразования даты】
wormehole-domain
| — com.kaistart.gateway.domain
| — pojo 【объекты клиентов шлюза, информация о токене】
| — response 【исключения шлюза, определения структуры】
wormehole-web 【JAVA класс, часть конфигурации】
src/main/java
| — com.kaistart 【имя основного пакета】
| — auth 【основная часть панели управления】
| — controller 【управление пользователями, ролями, разрешениями, ресурсами и т. д. на панели управления】
| — domain 【связанные с панелью управления объекты сущностей】
| — interceptor 【обработка панели управления url, разрешение и т. д.】
| — mapper 【объекты сопоставления, связанные с панелью управления】
| — service 【объекты служб, связанные с панелью управления, и реализация】
| — gateway 【основная часть шлюза】
| — common 【общедоступная часть бизнеса шлюза】
| — cache 【определяет инструмент кэширования】
| — exception 【определяет исключения шлюза】
| — http 【определяет инструменты HTTP-запроса, поддерживает запросы get с телом】
| — util 【определяет инструменты, zk, md5, executor】
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )