Java 微服务从源码实战开始 | 码云周刊第 49 期
在软件开发的不同时期、阶段,对技术架构的理解、选择和应用都有着不一样的诉求。微服务架构是当前互联网业界的一个技术热点,它的思想也更符合我们的目标:
根据业务模块划分服务种类。
每个服务可以独立部署并且互相隔离。
通过轻量的 API 调用服务。
服务需要保证良好的高可用性。
微服务能够使我们的开发效率更高,沟通成本更低,响应速度更快,迭代周期更短。当然,每一种技术都不可能完美无缺,微服务也有自身的短板。但是,我们依然可以从微服务的理念和技术中学到很多东西,希望大家能够喜欢这一期的 Java 微服务项目。
如果大家有好的微服务开源项目,也可以托管到码云上,我们会及时给予推荐。最后,如果你很喜欢以下提到的项目,别忘了分享给其他人哦。
码云项目推荐
1、项目名称:基于微服务的社群平台
项目简介: 本项目是基于 spring boot 微服务的开源出行社群平台(LBSNS),其主要的技术特点是:
通过 nginx 实现项目集群、负载均衡、动静分离、文件压缩;
使用 shiro 和 redis 实现项目权限控制,和 session 共享;
使用 spring-data-solr 实现全文搜索;
通过 mybatis 访问 mysql 数据库,并用 spring aop 统一实现事务控制;
前端主要用的是 freemarker、jquery 和 bootstrap3;
通过 git 实现项目代码同步,git 服务用的是 gogs。
项目地址:
https://gitee.com/peter.e.king/goodeen
2、项目名称:基于微服务架构的博客系统
项目简介: 本项目是基于 Spring Cloud 实现的简单微服务架构博客系统。
项目地址:
https://gitee.com/black-c/mcloud
3、项目名称:微服务配置中心 mconf
项目简介: 微服务配置中心 mconf(又称蚂蚁配置中心) ,基于 Zookeeper和Redis实现的配置中心。提供拉取配置、订阅配置、新增配置、删除配置、修改配置等功能。支持多数据中心、多环境配置、配置分组、多版本配置等功能。
核心支持功能:
支持精简版 mconf:管理精简版的“app-conf”结构型配置
支持多数据中心配置管理
支持多环境配置原理
支持配置文件分组管理
支持配置文件多版本管理
支持单个配置文件多数据项结构(List 型)
支持配置文件存储的高可靠(由 Zookeeper 和 Redis 保证)
项目地址:
4、项目名称:微服务神经元 Neural
项目简介: 微服务架构中高并发和高可用的神经组织利刃,提供了分布式限流、降级、熔断、重试和隔离的容错特性。并同时提供了 SPI、过滤器、JWT、插件机制。此外还提供了很多小的黑科技(如:IP 黑白名单、UUID 加强版、Snowflake 和大并发时间戳获取等)。
项目地址:
https://gitee.com/yu120/neural
5、项目名称:多功能微服务框架 ServiceComb
项目简介: ServiceComb 是华为开源的一套包含代码框架生成,服务注册发现,负载均衡,服务可靠性(容错熔断,限流降级,调用链追踪)等功能的微服务框架。
ServiceComb 包括应用框架代码生成,服务注册发现、服务配置管理、服务监控、服务调用追踪、多通信协议支持等功能,具有服务化契约增强、响应式编程范式及多语言 SDK 支持等优势特性。ServiceComb 基于开放的架构,不仅可以支持开发者根据自身业务需求定制业务插件,而且还兼容多种业界流行的微服务框架。
项目地址:
https://gitee.com/servicecomb/ServiceComb-Java-Chassis
6、项目名称:轻量级的 Java 微服务框架
项目简介: 本项目是基于 Netty5+Java8 的 Sinatra 实现的轻量级高性能微服务框架。
项目地址:
https://gitee.com/buru/sardine
7、项目名称:基于微服务的权限系统 Pig
项目简介: Pig 是基于 Spring Cloud、JWT 的微服务权限系统。
项目地址:
/
REVIEW往期精彩
提升物联网开发效率必看的 6 个开源项目 | 码云周刊第 47 期