商城项目划分微服务器,微服务商城项目
商城简介
项目由业务集群系统+后台管理系统构成,打通了分布式开发及全栈开发技能,包含前后分离全栈开发、Restful接口、数据校验、网关、注册发现、配置中心、熔断、限流、降级、链路追踪、性能监控、压力测试、系统预警、集群部署、持续集成、持续部署…
一个完整的电商项目,采用现阶段流行的技术来实现,是一个非常好的练手项目,工作中或平时积累的技术的一次完美融合
持续更新中
分布式基础_全栈开发篇
使用SpringBoot+Vue+element-ui+逆向工程搭建全套后台管理系统,基于Docker环境,通过前后分离方式,以商品系统为例,进行全栈开发
分布式高级_微服务架构篇
开发整个商城系统,掌握微服务的全套方案。使用SpringBoot+SpringCloud并配套SpringCloud Alibaba系列,引入全套微服务治理方案:Nacos注册中心/配置中心、Sentinel流量保护系统、Seata分布式事务&RabbitMQ柔性事务方案、SpringCloud-Gateway网关、Feign远程调用、Sleuth+Zipkin链路追踪系统、Spring Cache缓存、SpringSession跨子域Session同步方案、基于ElasticSearch7全文检索、异步编排与线程池、压力测试调优、Redisson分布式锁、分布式信号量等
高可用集群_架构提升篇
基于kubernetes集群,整合kubesphere可视化界面,搭建全套系统环境。使用集群化部署,包括Redis Cluster集群,MySQL主从与分库分表(使用ShardingSphere完成)集群,RabbitMQ镜像队列集群,ElasticSearch高可用集群。基于kubesphere整合Jenkins全可视化CICD,全套Pipeline流水线编写,参数化构建+手动确认模式保证
组织架构
项目组织
touch-air-mall
├── doc 项目相关资料
├── img -- 图片样例
├── markdown -- 项目笔记
├── nacos -- nacos相关配置导出
├── nginx -- nginx相关配置
├── sql -- 数据库文件
├── tool -- 开发常用工具
├── mall-auth-server -- 认证服务
├── mall-cart -- 购物车服务
├── mall-common -- 工具类及通用代码
├── mall-coupon -- 优惠卷服务
├── mall-gateway -- 统一配置网关
├── mall-member -- 会员服务
├── mall-order -- 订单服务
├── mall-product -- 商品服务
├── mall-search -- 检索服务
├── mall-seckill --秒杀服务
├── mall-test-sso-client -- 单点登录客户端1
├── mall-test-sso-client2 -- 单点登录客户端2
├── mall-test-sso-server -- 单点登录服务端
├── mall-third-part -- 第三方服务
├── mall-ware -- 仓储服务
├── renren-generator -- 人人开源项目的代码生成器
├── renren-fast -- 人人admin管理后台
├── Jenkinsfile -- jenkins配置文件
└── renren-fast -- 人人admin管理后台
复制代码
部分功能演示
商品服务
三级分类
树形展示
树形拖拽保存
品牌管理
整合oss
属性分组
父子组件交互
级联选择器
商品新增发布
新增商品,保存spu、sku等基本信息,发布商品,数据同步到Es中,后续检索服务使用
查看ES中是否成功写入
商城业务
商城首页
nginx 域名访问--负载均衡到网关
动静分离--静态资源直接存放在nginx中
缓存--优化三级分类获取
商城检索
两种方式进入
第一种:进入商城首页 点击分类--手机
检索条件
1、全文检索:skuTitle -> keyword
2、排序:saleCount(销量)、hotScore(热度评分)、skuPrice(价格)
3、过滤:hasStock(是否有货)、skuPrice(价格区间)、brandId(品牌id 可以多选)、catalogId
4、聚合:attrs(属性)
5、面包屑导航
6、条件删除&条件筛选联动
商品详情
商品详情
社交登录
社交登录
单点登录
单点登录效果演示
购物车
购物车效果演示
订单业务
订单创建、验证令牌、验价、锁定库存
分布式事务
可靠消息模式
支付
沙箱环境演示:
提交订单,等待一分钟不支付,消息过期,关闭订单,解锁库存
预期结果:支付宝自动收单,交易超时无法支付
提交订单立马支付,支付成功,异步通知
预期结果:订单状态:已付款,库存锁定
秒杀服务
商品秒杀演示:校验合法性、信号量扣减、幂等性设置、MQ削峰
Sleuth+Zipkin服务链路追踪
效果演示
流水线构建微服务
流水线演示
技术选型
后端技术
架构图
系统架构图
业务架构图
商城项目划分微服务器,微服务商城项目相关推荐
- 项目部署到服务器需要做什么,项目部署到服务器。
一.先构建需要部署的项目 image.png 二.找到对应项目,复制pull更新命令(更新镜像) image.png 三.在Xshellell中输入pull命令 [root@test28-nginx ...
- 多模块项目微服务器,springboot多模块项目(微服务项目)正确打包(jar)方式...
大致步骤 新建一个springboot项目名称为父亲 添加父快捷方式.新建子模块,子模块同时插入新建springboot的项目,依次创建enty和web模块(关键是并配置好pom文件) web模块依赖 ...
- 微信商城用什么样的服务器,开通微信商城需要哪些资料?
原标题:开通微信商城需要哪些资料? 企业开通自己的微信商城,可以更好的向用户展示自己的产品,也能让用户有更好的购物体验,不过很多商家在此前还没有接触过相关的微信商城的内容,也就对开通的方式不太了解.那 ...
- 项目有多少个服务器,创业者说:项目需要多少服务器之“用户访问模型”
原标题:创业者说:项目需要多少服务器之"用户访问模型" 创业是一个永恒的话题,本文分享"3N技术创投"董事长兼创始人.常盈网络创始人.一块去旅游网创始人兼CTO ...
- 项目怎么放到服务器里,如何把项目放到服务器上
如何把项目放到服务器上 内容精选 换一换 欢迎使用华为云开发者工具套件(Python SDK).Python SDK让您轻松编程即可访问云服务.本教程介绍如何安装和使用Python SDK,并提供示例 ...
- 如何将python项目部署到服务器_部署python项目到linux服务器
第一步:安装Python3环境 1.首先安装编译环境(后续需要从python官网获取Python3的源码自己编译python) 1 yum install zlib-devel bzip2-devel ...
- 如何将本地python项目部署到服务器上_如何将本地的Django项目部署到云服务器
如何将本地的Django项目部署到云服务器 开发环境 开发语言: Python 后台框架:Django 前端框架:bootstrap web服务器:nginx wsgi服务器:uwsgi 查看本地项目 ...
- 如何将本地django项目部署到服务器,Django本地项目部署到云服务器
开发环境 开发语言: Python 后台框架:Django web 服务器:nginx wsgi 服务器:uwsgi 云服务器系统:Ubuntu 查看本地项目 Django 和 Python 版本: ...
- egg项目部署到服务器
egg项目部署到服务器 一.购买服务器 我这以阿里云服务器为例子 直接进入阿里云官网进行查看相关服务器,选择适合自己的购买 可在阿里云查看服务器状态,账号密码就是购买服务器时注册的账号密码 进入服务器 ...
最新文章
- devServer proxy跨域 设置代理 proxy
- 调试内存_C/C++程序调试和内存检测
- 通用权限管理系统组件中简易员工档案管理模块参考
- GIT项目管理工具(part6)--放弃工作区文件修改及从仓库区恢复文件
- Java ObjectOutputStream flush()方法与示例
- window mysql集群视频_windows7实现mysql集群cluster-mysql簇
- 数据仓库ETL(二)基本概念
- python3导入模块原理_python模块导入原理
- EDA技术与市场分析
- 软件著作权申请需要哪些材料?
- 实用的图片批量压缩优化工具
- 线性回归分析步骤总结
- 植物2 IOS 怎么实名认证_植物大战僵尸2未来世界22天困难怎么过关 植物阵容推荐...
- 解决mysql级联删除时不会启动delete触发器
- 微信发布的辟谣小程序
- 外设驱动库开发笔记47:ADS111x系列ADC驱动
- python打开zip文件_Python ZIP 文件创建与读取
- IP地址,子网掩码以及子网掩码的划分
- 技术丨说一说微信第三方平台的初步集成
- vue-cli 登录注册的实现