Roses 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Roses 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议: Apache
开发语言: Java
操作系统: 跨平台
收录时间: 2018-06-20
提 交 者: stylefeng

Roses基于Spring Boot, 是开源项目 Guns 的升级版本,致力做更简洁的分布式服务化解决方案,Roses提供基于Spring Cloud的分布式框架,整合了springmvc + mybatis-plus + eureka + zuul + feign + ribbon + hystrix等等,提供Roses独有的高效率的开发体验,提供可靠消息最终一致性分布式事务解决方案,提供基于调用链的服务治理,提供可靠的服务异常定位方案(Log + Trace),一个分布式框架不仅需要构建高效稳定的底层开发框架,更需要解决分布式带来的种种挑战。

在几年前,刚工作的时候就开始接触分布式,并且使用分布式编写业务,那时候还很菜(现在也菜),只觉得微服务很牛逼,殊不知其中的艰难险阻,踩过很多坑,也走过弯路,Roses是根据自己积攒的经验编写出来的,完全开源,目的就是想让新接触微服务,搞分布式开发的同学能够快速上手。Roses在编写的时候有两个核心思想,第一个是注重解决分布式带来的种种挑战第二个是注重提高开发人员的效率

Roses的一些特点:

1. 网关实现统一鉴权,资源权限过滤(鉴权机制)

2. 网关生成唯一请求号(RequestNoGenerateFilter)(主要为了定位问题)

3. 分布式事务解决方案(可靠消息最终一致性)

 4. 分布式配置中心roses-config(统一管理项目配置,好维护)

5. 一切请求基于RequestData和ResponseData(简化开发)

6. 独创基于BeanPostProcessor的资源扫描器(多服务之间的资源搜集,集中管理)

7. 独特的Feign错误解码器(继承Guns的开发思想,极大提高了开发效率)

8. Log + Trace日志记录(定位问题更便捷)

9. 统一的文件日志记录格式(日志记录的规范)

快速开发微服务的秘籍 roses-core

在roses-core模块的com.stylefeng.roses.core.config包下整合了大量开发常用到的配置,其中包含默认异常拦截,登陆用户的上下文获取,默认缓存配置,默认fastjson的配置,默认mybatis-plus的配置,默认的swagger的配置,默认的web配置等等等等,使得在新业务开发中,只要pom引入roses-core这个模块,即可很方便的注入这些特性,直接上手开编写业务,大大减少了新业务,新模块的配置,调试,各种框架集成拼接的时间,因为这些在Roses中已经为您提供好了,利用Spring Boot的自动配置机制,同样的,这些配置在项目启动的时候会默认加载,因为在roses-core模块下的META-INF/spring.factories中配有这些类,当然,如果您不需要某些特性(自动配置类)您可以在@SpringBootApplication注解上增加exclude参数来排除这些自动配置。

更多详情,请点击:https://gitee.com/naan1993/roses

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

Roses 的相关博客

Introducing Deep Learning Pipelines for Apache Spark

Introducing Deep Learning Pipelines for Apache Spark Deep Learning Pipelines is a new library published by Databricks...

Markdown内嵌Html语言

概述   Markdown是内嵌Html语言的,这使得我们可以在Markdown文档里面实现很多有趣的东西。现在记录在此,供自己以后参考,...

名言

Instead of complaining that the rosebush is full of thorns, be happy that the thorn bush has roses. 与其抱怨玫瑰丛长满...

PHP 打印函数之 print print_r

##print ###说明 >int print ( string $arg ) 输出 arg print 实际上不是一个函数(它是一个语言结构),因此你可以不必使用圆...

毕业设计之「测试实验及结果分析」(二)

阅读本文大概需要 8 分钟。 基于AlexNet完成五种花的训练和识别 花分类数据集获取及项目简介 在本例中,我们将使用通过Pytho...

基于tensorflow的花卉识别

一、思路 二、进程 三、参考 1.denny的学习专栏 这位大佬的博客里有关于tensorflow的很多内容,并且有花卉识别项目的源代码和...

汉明重量(Hamming Weight)

1,汉明重量是一串符号中非零符号的个数 2,汉明距离是 两个等长字符串 对应位置的不同字符的个数 就是将一个字符串变换成另外...

Roses 的相关问答

还没有任何问答,马上提问

评论 (3)

加载中
感谢
2018/07/24 13:17
回复
举报
打分: 力荐
目前用guns,刚好在考虑怎么升级,准备入坑roses
2018/06/25 15:03
回复
举报
stylefeng软件作者
打分: 力荐
分布式脚手架,提高开发效率的利器
2018/06/21 08:41
回复
举报
更多评论
3 评论
151 收藏
分享
返回顶部
顶部