HP-SOA - 功能完备,简单易用,高度可扩展的Java微服务框架。) x" W( z* r! s
现已支持spring cloud和dubbo微服务架构,劳烦大家加星支持~
. b& P* U2 X2 W& l另外还有大量DEMO以供开发者参考7 G. p, A5 a# }: n+ v+ b' d
@全体成员 8 L. X- _3 y! w1 u8 y7 J/ x' J
HP-SOA - 功能完备,简单易用,高度可扩展的Java微服务框架。现已支持spring cloud和dubbo微服务架构,劳烦大家加星支持~$ C8 Q/ a4 B/ k& U. l
https://github.com/ldcsaa/hp-soa
" Q3 K& g7 g8 o
2 J. i* F3 q3 ^8 L4 mhttps://gitee.com/ldcsaa/hp-soa7 B1 P, U: r( o0 R% q- k
/ w( B2 y9 t4 }' y' w; p
技术架构
# R$ ?9 x% d3 c7 ?# _
( V( w/ D; ]' p; K
/ M7 l8 U. r9 o8 r# v1 f4 l6 h$ v技术集成Web 服务框架:spring-boot 3.x微服务框架:spring-cloud 4.x微服务框架:Dubbo 3.x服务注册中心:Nacos配置中心:Nacos服务治理中心:Dubbo Admin流量控制中心:Sentinel Dashboard + Nacos数据库:MySQL、Druid、mybatis-plus(支持多数据源)缓存:Redis + Redisson(支持多实例)NoSQL 数据库:MongoDB搜索引擎:Elasticsearch消息总线:RabbitMQ(支持多实例,支持可靠消息)消息队列:Kafka(支持可靠消息)MQTT 发布订阅:Eclipse PAHO mqttv5分布式 Job:xxl-job轻量级 Job:Redisson + Spring Scheduled分布式事务:Seata全局 ID:Leaf(支持 Snowflake ID 和 Segment ID)统一日志:Log4j + Kafka + ELK调用链跟踪:Skywalking监控告警:Prometheus + Grafana + Alert Manager% e: [# x" n8 ]$ Z6 z; `( Y
模块说明应用接入(参考:hp-demo)+ J8 }- s' E. C' R/ w- B- {
[XML] 纯文本查看 复制代码 <dependencyManagement>
<dependencies>
<!-- 添加 hp-soa 依赖管理 -->
<dependency>
<groupId>io.github.hpsocket</groupId>
<artifactId>hp-soa-dependencies</artifactId>
<version>${hp-soa.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- 普通项目引用 hp-soa-starter-web -->
<dependency>
<groupId>io.github.hpsocket</groupId>
<artifactId>hp-soa-starter-web</artifactId>
</dependency>
<!-- Spring Cloud 项目引用 hp-soa-starter-web-cloud -->
<!--
<dependency>
<groupId>io.github.hpsocket</groupId>
<artifactId>hp-soa-starter-web-cloud</artifactId>
</dependency>
-->
<!-- Dubbo项目引用 hp-soa-starter-web-dubbo -->
<!--
<dependency>
<groupId>io.github.hpsocket</groupId>
<artifactId>hp-soa-starter-web-dubbo</artifactId>
</dependency>
-->
<!-- 根据项目需要,引用其它 hp-soa starter -->
<dependency>
<groupId>io.github.hpsocket</groupId>
<artifactId>hp-soa-starter-xxx</artifactId>
</dependency>
</dependencies>
5 x$ a. j$ s$ }! Q% Y) {! i7 k
- 修改应用配置(参考 Demo hp-demo-bff-basic 的本地配置文件 ,配置中心的远程配置文件),主要配置项:
4 C9 w. N; @6 _6 r+ e" ]! P- hp.soa.web
- spring.cloud (Spring Cloud 项目)
- dubbo (Dubbo 项目)
- server
- spring
- management
- springdoc
! F1 |. m ~& s/ d5 i
- 修改全局配置(可选)5 K; f: p5 U8 U5 W9 u; ^
- 实现 HTTP 鉴权接口(可选)& W# ^5 J- M4 |. s
- 如果是 Gateway/BFF 应用,并且应用属性 hp.soa.web.access-verification.enabled = true,则需要实现 AccessVerificationService 接口,用于 HTTP 请求鉴权。0 C' D F9 Q) J, f
- 启动应用
7 |9 ]$ O0 x9 F/ D s: ^& e. k
|