1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/wenxuanxuan-CPP_microservice

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
项目分析.md 2.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
wenxuanxuan Отправлено 04.06.2020 18:09 1dbf226

CPP_microservice_design

系统简析

系统架构划分

该架构中只让其他模块对中间层产生耦合关系,中间层不对其他模块发生耦合。采用组件化的架构,将每个模块作为一个组件,并且建立一个主项目,这个主项目负责集成所有组件。这样带来的好处是很多的:业务划分更佳清晰;项目可维护性更强,提高开发效率;更好排查问题,某个组件出现问题,直接对组件进行处理;开发测试过程中,可以只编译自己那部分代码,不需要编译整个项目代码。进行组件化开发后,可以把每个组件当做一个独立的应用,每个组件甚至可以采取不同的架构,根据自己的编程习惯做选择。

本项目实现xms_gateway中间层,由其中的XRouter_Server进行组件间的消息转发。实现方式大致是,在注册中心组件中提前注册应用组件中的微服务,然后将该微服务配置加入配置中心,此时,每个应用组件中的服务端微服务和客户端的消息通信通过中间层转发,与其他应用组件可以解耦。

代码模块划分

模块划分

线程池模块

线程池模块类图:

线程池模块类图

线程池初始化流程图:

线程池初始化流程图

线程池任务处理流程:

线程池处理任务流程

通信模块

通信模块用于客户端和服务端的通信,是基础类,XComTask 封装 libevent , 调用此类不需要调用 libevent 接口。XMsgEvent 实现基于 Ptotobuf 的消息通信和消息处理函数注册。 消息通信模块类图: 线程池处理任务流程

微服务代理模块

微服务代理模块类图

路由转发模块

路由转发模块类图: 路由转发模块类图

路由转发顺序图: 路由转发顺序图

路由转发流程图: 路由转发流程图

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/wenxuanxuan-CPP_microservice.git
git@api.gitlife.ru:oschina-mirror/wenxuanxuan-CPP_microservice.git
oschina-mirror
wenxuanxuan-CPP_microservice
wenxuanxuan-CPP_microservice
master