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 保证)

项目地址:

https://gitee.com/yu120/mconf

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 的微服务权限系统。

项目地址:

https://gitee.com/log4j/pig

原文发布于微信公众号 - 码云Gitee(mayunOSC)

原文发表时间:2017-12-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java技术栈

通往Java 9之路:每年两次发布即将到来

Oracle将加速标准Java的发布,每六个月推出一个新版本的Java开发工具包(JDK),每三年更新一次长期支持的版本。因此,下个版本的Java9将在2018...

3305
来自专栏Java技术栈

干货 | 京东购物车的 Java 架构实现及原理!

3094
来自专栏小怪聊职场

架构|如何架构一个合适的企业API网关(1)API网关的介绍、应用场景、作用及常用方案

4808
来自专栏微信公众号:Java团长

做一个完整的Java Web项目需要掌握的技能

最近自己做了几个Java Web项目,有公司的商业项目,也有个人做着玩的小项目,写篇文章记录总结一下收获,列举出在做项目的整个过程中,所需要用到的技能和知识点,...

2401
来自专栏Golang语言社区

棋牌游戏服务器架构: 总体设计

首先要说明的是, 这个棋牌游戏的服务器架构参考了网狐棋牌的架构。网狐棋牌最令人印象深刻的是其稳定性和高网络负载。它的一份压力测试报告上指出:一台双核r的INTE...

7086
来自专栏java一日一条

Web Service监控教程:如何识别不良部署

你是否曾经往服务器发布更新的时候想,“一切正常,如期运行!”然后你却必须一直处理用户的抱怨:为什么你们的系统总是报错?

1592
来自专栏云计算爱好者

云计算技术原理

由于云计算分为IaaS、PaaS和SaaS三种类型,不同的厂家又提供了不同的解决方案,目前还没有一个统一的技术体系结构,对读者了解云计算的原理构成...

8419
来自专栏Golang语言社区

棋牌游戏服务器架构: 总体设计

首先要说明的是, 这个棋牌游戏的服务器架构参考了网狐棋牌的架构。网狐棋牌最令人印象深刻的是其稳定性和高网络负载。它的一份压力测试报告上指出:一台双核r的INTE...

1.3K7
来自专栏IT技术精选文摘

10个最重大的Web应用风险与攻防

先来看几个出现安全问题的例子 ? ? ? ? ? OWASP TOP10 ? 开发为什么要知道OWASP TOP10 ? TOP1-注入 ? TOP1-注入的示...

2779
来自专栏杨建荣的学习笔记

MySQL中的double write(二)(r12笔记第17天)

MySQL里的double write是InnoDB的三大闪亮特性,另外两个是insert buffer 和自适应哈希,其实还有几个比如异步IO,Flu...

3269

扫码关注云+社区

领取腾讯云代金券