Часто используемые модули утилит.
dawdler-rabbitmq-plug: поддержка модуля RabbitMQ, включая клиентскую часть, серверную часть и основной модуль RabbitMQ.
dawdler-redis-plug: поддержка Redis-модуля dawdler-redis-plug, включая клиентскую часть, серверную часть и основной Redis-модуль.
dawdler-es-plug: поддержка ES-модуля dawdler-es-plug, включающая клиентскую часть, серверную часть и основной ES-модуль.
dawdler-pinpoint-plug: реализация dawdler pinpoint — плагина для отслеживания цепочки связей.
dawdler-schedule-plug: на основе Quartz реализована поддержка Schedule-модуля, включая клиентскую часть, серверную часть и основной Schedule-модуль.
dawdler-discovery-center: корневой модуль регистрационного центра, предоставляющий функции регистрации сервисов, вывода сервисов из эксплуатации и обнаружения сервисов. В настоящее время предоставляются реализации с использованием Zookeeper и Consul.
dawdler-encrypt-generator: инструмент класса, используемый для генерации ключей шифрования для свойств и использования в унифицированном конфигурационном центре.
dawdler-dependencies: зависимости сборки проекта, необходимые при использовании Maven.
dawdler-client-api-generator: основанный на Java исходный код doc генерирует OpenAPI 3.0 JSON-инструмент, совместимый с swagger-ui. Неинвазивен к исходному коду, прост в освоении, эффективен в генерации и удобен в использовании.
dawdler-cache-plug: кэш-модуль, который можно использовать как на веб-интерфейсе, так и на сервере.
dawdler-service-plug: поддержка Service-модуля, включающего клиентскую часть, серверную часть и основной Service-модуль.
Введение в dawdler-runtime
См. dawdler-runtime.
Инструкция по установке
Скачайте dawdler-runtime-jdk1.8.
Запустите регистрационный центр: выполните команду sh zkServer.sh start
, чтобы запустить Zookeeper или Consul.
Перейдите в каталог bin dawdler и запустите (в среде win используйте dawdler.bat
, в среде Linux или Mac используйте sh dawdler.sh
):
sh dawdler.sh run
, чтобы запустить dawdler в текущем окне;
sh dawdler.sh start
, чтобы запустить dawdler в отдельном окне;
sh dawdler.sh stop
, чтобы остановить dawdler.
Команда sh dawdler.sh
выводит следующее:
commands:
run Start dawdler in the current window 在当前窗口启动dawdler
start Start dawdler in a separate window 在后台启动dawdler
stop Stop dawdler 停止dawdler(关闭dawdler之前会从注册中心下线本容器下所有服务,不再接受请求,同时等待处理完客户端的请求之后停止服务器)
stopnow Stop dawdler immediately 立刻停止dawdler,如果客户端有请求为处理完会收到一个强制停止的异常
Быстрое начало работы
Dawdler требует поддержки трёх компонентов:
Программное обеспечение | Обязательное | Примечание |
---|---|---|
jdk-1.8 | √ | Рекомендуется использовать openjdk1.8x |
Apache-Zookeeper-3.6+ | x | Требуется при использовании регистрационного центра |
Tomcat-8.5+ | x | Требуется для веб-сервисов |
Redis5x| 6x | x | Требуется для сервисов кеширования |
MySQL5x| 8x | x | Требуется для сервисов баз данных |
Elastic-search 7x | x | Требуется для ES-сервисов |
Rabbitmq 3.8x | x | Требуется для сервисов сообщений |
Consul 1.10.x | x | Требуется для единого конфигурационного центра или регистрационного центра |
Dawdler предназначен для распределённых вызовов и микросервисов, поэтому структура проекта также строится на основе принципа «поставщик услуг → вызывающий объект» (принципы разделения служб см. самостоятельно, здесь не объясняются).
DTO используется для передачи сериализованных объектов при вызове или ответе.
Сущность используется для возврата объекта сущности при запросе базы данных.
Обычно сущность может заменить DTO, но если поля сильно различаются, рекомендуется создать отдельный DTO.
Уровень интерфейса сервиса используется для объявления интерфейсов сервисов и предоставляется как поставщикам услуг, так и вызывающим объектам проектов.
Используется для предоставления конкретной реализации определённого в сервисе интерфейса и развёртывается в каталоге deploys dawdler для запуска.
Если задействован вызов базы данных, он также развёртывается здесь, например, MyBatis Mapper. Просто внедрите его непосредственно в ServiceImpl.
Используется для вызова сервисов, предоставляемых поставщиком услуг. Может быть вызван через API или через динамический прокси-объект.
В веб-приложениях обычно динамические прокси-объекты внедряются в Controller веб-части для удалённого вызова.
На примере электронной коммерции:
--shop
--api #api接口,包类型为pom的子模块工程.
| --user-api
| --order-api #存放接口定义,dto,entity.
| --product-api
--load-web #远程加载服务,包类型为pom的子模块工程.
| --core-load-web #用与加载公用组件,如服代替网关的过滤器,用于被web-api模块远程加载.
--service #具体服务实现,部署在dawdler中,包类型为pom的子模块工程.
| --user-service
| --order-service #存放服务实现,dao,mapper,服务启动监听器.
| --product-service
--web-api #提供web服务,一般部署在web容器中,包类型为pom的子模块工程.
| --user-web-api
| --order-web-api
| --product-web-api
Нужна помощь? Отправьте электронное письмо на адрес jackson.song@dawdler.club.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )