关键词:
前几天有粉丝留言,正在学习微服务,想让我推荐一个微服务学习项目。这次我拿出了压箱底的收藏了,一个宝藏级微服务开源项目,炸裂!
前言
zheng项目不仅仅是一个开发架构,而是努力打造一套从 前端模板 - 基础框架 - 分布式架构 - 开源项目 - 持续集成 - 自动化部署 - 系统监测 - 无缝升级 的全方位J2EE企业级开发解决方案。
项目介绍
基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构,提供整套公共微服务服务模块:内容管理、支付中心、用户管理(包括第三方)、微信平台、存储系统、配置中心、日志分析、任务和通知等,支持服务治理、监控和追踪,努力为中小型企业打造全方位J2EE企业级开发解决方案。推荐整理好的100期Java开源项目:视频教程+源码笔记
组织结构
zheng
├── zheng-common -- SSM框架公共模块
├── zheng-admin -- 后台管理模板
├── zheng-ui -- 前台thymeleaf模板[端口:1000]
├── zheng-config -- 配置中心[端口:1001]
├── zheng-upms -- 用户权限管理系统
| ├── zheng-upms-common -- upms系统公共模块
| ├── zheng-upms-dao -- 代码生成模块,无需开发
| ├── zheng-upms-client -- 集成upms依赖包,提供单点认证、授权、统一会话管理
| ├── zheng-upms-rpc-api -- rpc接口包
| ├── zheng-upms-rpc-service -- rpc服务提供者
| └── zheng-upms-server -- 用户权限系统及SSO服务端[端口:1111]
├── zheng-cms -- 内容管理系统
| ├── zheng-cms-common -- cms系统公共模块
| ├── zheng-cms-dao -- 代码生成模块,无需开发
| ├── zheng-cms-rpc-api -- rpc接口包
| ├── zheng-cms-rpc-service -- rpc服务提供者
| ├── zheng-cms-search -- 搜索服务[端口:2221]
| ├── zheng-cms-admin -- 后台管理[端口:2222]
| ├── zheng-cms-job -- 消息队列、任务调度等[端口:2223]
| └── zheng-cms-web -- 网站前台[端口:2224]
├── zheng-pay -- 支付系统
| ├── zheng-pay-common -- pay系统公共模块
| ├── zheng-pay-dao -- 代码生成模块,无需开发
| ├── zheng-pay-rpc-api -- rpc接口包
| ├── zheng-pay-rpc-service -- rpc服务提供者
| ├── zheng-pay-sdk -- 开发工具包
| ├── zheng-pay-admin -- 后台管理[端口:3331]
| └── zheng-pay-web -- 演示示例[端口:3332]
├── zheng-ucenter -- 用户系统(包括第三方登录)
| ├── zheng-ucenter-common -- ucenter系统公共模块
| ├── zheng-ucenter-dao -- 代码生成模块,无需开发
| ├── zheng-ucenter-rpc-api -- rpc接口包
| ├── zheng-ucenter-rpc-service -- rpc服务提供者
| └── zheng-ucenter-web -- 网站前台[端口:4441]
├── zheng-wechat -- 微信系统
| ├── zheng-wechat-mp -- 微信公众号管理系统
| | ├── zheng-wechat-mp-dao -- 代码生成模块,无需开发
| | ├── zheng-wechat-mp-service -- 业务逻辑
| | └── zheng-wechat-mp-admin -- 后台管理[端口:5551]
| └── zheng-ucenter-app -- 微信小程序后台
├── zheng-api -- API接口总线系统
| ├── zheng-api-common -- api系统公共模块
| ├── zheng-api-rpc-api -- rpc接口包
| ├── zheng-api-rpc-service -- rpc服务提供者
| └── zheng-api-server -- api系统服务端[端口:6666]
├── zheng-oss -- 对象存储系统
| ├── zheng-oss-sdk -- 开发工具包
| ├── zheng-oss-web -- 前台接口[端口:7771]
| └── zheng-oss-admin -- 后台管理[端口:7772]
├── zheng-message -- 实时通知系统
| ├── zheng-message-sdk -- 开发工具包
| ├── zheng-message-server -- 服务端[端口:8881,SocketIO端口:8882]
| └── zheng-message-client -- 客户端
├── zheng-shop -- 电子商务系统
└── zheng-demo -- 示例模块(包含一些示例代码等)
├── zheng-demo-rpc-api -- rpc接口包
├── zheng-demo-rpc-service -- rpc服务提供者
└── zheng-demo-web -- 演示示例[端口:9999]
架构图
模块依赖
环境搭建
开发工具:
- MySql: 数据库
- jetty: 开发服务器
- Tomcat: 应用服务器
- SVN|Git: 版本管理
- Nginx: 反向代理服务器
- Varnish: HTTP加速器
- IntelliJ IDEA: 开发IDE
- PowerDesigner: 建模工具
- Navicat for MySQL: 数据库客户端
开发环境
- Jdk7+
- Mysql5.5+
- Redis
- Zookeeper
- ActiveMQ
- Dubbo-admin
- Dubbo-monitor
演示地址
演示地址:http://upms.zhangshuzheng.cn/[1]
预览图
数据模型
拓扑图
项目地址
码云:https : //gitee.com/shuzheng/zheng
压箱底分享,吐血分享。开源100个项目!!!
...完了。最终孟哥撸完了50个项目:我给大家整理了50个开源的Java项目上次的小伙伴,呼声太高了,为了回馈大家。这次不顾身体健康 查看详情
宝藏网站集合
...片压缩,pdf合并等等,使用起来十分方便3、学吧导航 一个学术导航网站,在这里可以找到各种学习平台入口快捷进入Videosites1、555 压箱底的宝藏视频网站,不仅速度快,画质好,2、白胡子Musicwebsites1、music 也是非常不错... 查看详情
宝藏网站集合
...使用起来十分方便3、优品PPT免费ppt模板下载4、学吧导航一个学术导航网站,在这里可以找到各种学习平台入口快捷进入5、pdf转换工具把PDF转成Office,iWork以及其他格式Videosites1、555压箱底的宝藏视频网站,不仅速度快,画质好... 查看详情
几个压箱底的tips,python提速不是一点点(代码片段)
...优化细节之前,需要了解一些代码优化基本原则。第一个基本原则是不要过早优化。很多人一开始写代码就奔着性能优化的目标,“让正确的程序更快要比让快速的程序正确容易得多”。因此 查看详情
几个压箱底的tips,python提速不是一点点(代码片段)
...优化细节之前,需要了解一些代码优化基本原则。第一个基本原则是不要过早优化。很多人一开始写代码就奔着性能优化的目标,“让正确的程序更快要比让快速的程序正确容易得多”。因此 查看详情
内存泄露?腾讯工程师2个压箱底的方法和工具(代码片段)
导读|遭受内存泄露往往是令开发者头疼的问题,传统分析工具gdb、Valgrind在解决内存泄露问题上效率较低。本文特别邀请到了腾讯后台开发工程师邢孟棒以TDSQL实际生产中mysql-proxy内存泄露问题作为分析对象,分享其... 查看详情
go开源宝藏go-doc自动生成项目结构目录(代码片段)
目录写在前面1.下载2.运行3.查看写在前面这个是可以自动生成项目的结构目录,方便后续开发人员的开发查看。1.下载goget-v-ugolang.org/x/tools/cmd/godoc2.运行在根目录下执行godoc-http=:60603.查看在浏览器中输入地址http://localhost:60... 查看详情
springboot入门第一个项目(代码片段)
...注,是下一代框架微服务的入门级微服务框架 2、第一个springboot应用C:UsersAdministrator>java-versionja 查看详情
x100个项目彻底精通java!开源
...们的宇哥~分享的这100个项目,涉及JSP、SSM、SpringBoot、微服务、中间件、设计模式,可以说是非常详细,包含 查看详情
go开源宝藏cors跨域与csrf攻击|中间件(代码片段)
...SRF攻击2.1CSRF说明2.1原理3.CORS3.1简介3.2引用1.什么是跨域当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域当前页面url被请求页面url是否跨域原因http://www.test.com/http://www.test.com/index.html否同源(协... 查看详情
go开源宝藏十分强大的日志库logrus(代码片段)
....简单例子3.HOOKS4.嵌入中间件1.写在前面这次所介绍的库是一个日志库github.com/sirupsen/logrus,是我们在web开发中,经常需要的库,因为我们的应用部署到线上出现问题的话,就需要用日志来进行排查。2.简单例子其实... 查看详情
go开源宝藏十分强大的日志库logrus(代码片段)
....简单例子3.HOOKS4.嵌入中间件1.写在前面这次所介绍的库是一个日志库github.com/sirupsen/logrus,是我们在web开发中,经常需要的库,因为我们的应用部署到线上出现问题的话,就需要用日志来进行排查。2.简单例子其实... 查看详情
go开源宝藏go-cron定时任务(代码片段)
...系统约个时间,在几点几分几秒或者每隔一段时间跑一个任务(job),就那么简单。1.2cron详细语法结构以下的结构来自维基百科:#┌─────────────minu 查看详情
go开源宝藏web框架gin专场(含思维导图)|持续更新(代码片段)
写在前面本人只是一个Go语言的初学者,这篇总结只是把我平常经常用到的都总结起来而已。具体详细的内容建议到去GIN的中文文档查看。当然这篇文章也会持续更新,记录我的Web框架操练过程这篇文章也会持续更新哒思... 查看详情
go开源宝藏基于golang语法的性能调优技巧(字符串拼接)(代码片段)
...用string.Builder使用bytes.Builder使用byte进行拼接我们先来写一个benchmark去测试每一种字符串拼接的情况。//1.直接拼接funcBenchmarkString(b*testing.B) 查看详情
go开源宝藏gorm专场(含思维导图)|持续更新(代码片段)
写在前面本人只是一个Go语言的初学者,这篇文只是把我平常经常用到的都总结起来而已。具体详细的内容建议到去GORM的中文文档查看。当然这篇文章也会持续更新,记录我的CURD打磨过程这篇文章也会持续更新哒思维导... 查看详情
p3959宝藏状压dp(代码片段)
...方法是错的。。。并不知道哪错了,但是就不写了,找了一个正解。正解的区别在于状态,(树高是啥意思),每次都是从当前状态的子集转移过来。这里用到了快速枚举子集的操作,很值得写一下。题干:题目描述参与考古挖... 查看详情
go开源宝藏golang爬虫|整点新花样(代码片段)
写在前面Python爬虫可能大家都玩腻了,那就玩一下Golang的爬虫吧!这篇文章会持续更新哒!思维导图想获取原图或是.xmind格式可在文末扫描并回复Go爬虫目录写在前面思维导图1.发送请求2.解析网页2.1CSS选择器2.2Xpath语... 查看详情