一个宝藏级微服务开源项目,压箱底的了(代码片段)

程序员追风 程序员追风     2023-02-19     225

关键词:

前几天有粉丝留言,正在学习微服务,想让我推荐一个微服务学习项目。这次我拿出了压箱底的收藏了,一个宝藏级微服务开源项目,炸裂!

前言

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项目上次的小伙伴,呼声太高了,为了回馈大家。这次不顾身体健康&#x 查看详情

宝藏网站集合

...片压缩,pdf合并等等,使用起来十分方便3、学吧导航​ 一个学术导航网站,在这里可以找到各种学习平台入口快捷进入Videosites1、555​ 压箱底的宝藏视频网站,不仅速度快,画质好,2、白胡子Musicwebsites1、music​ 也是非常不错... 查看详情

宝藏网站集合

...使用起来十分方便3、优品PPT免费ppt模板下载4、学吧导航一个学术导航网站,在这里可以找到各种学习平台入口快捷进入5、pdf转换工具把PDF转成Office,iWork以及其他格式Videosites1、555压箱底的宝藏视频网站,不仅速度快,画质好... 查看详情

几个压箱底的tips,python提速不是一点点(代码片段)

...优化细节之前,需要了解一些代码优化基本原则。第一个基本原则是不要过早优化。很多人一开始写代码就奔着性能优化的目标,“让正确的程序更快要比让快速的程序正确容易得多”。因此&#x 查看详情

几个压箱底的tips,python提速不是一点点(代码片段)

...优化细节之前,需要了解一些代码优化基本原则。第一个基本原则是不要过早优化。很多人一开始写代码就奔着性能优化的目标,“让正确的程序更快要比让快速的程序正确容易得多”。因此&#x 查看详情

内存泄露?腾讯工程师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语... 查看详情