Javashop电商系统7.0发布

阅读更多

Javashop是国内基于Java开发的企业级电商平台,现推出7.0版本,更新内容如下:

 

1、采用Spring boot。

2、restful 化(无状态、跨域,三端支撑)。

3、前后端分离。

4、认证采用token式。

5、三端分离部署(买家、卖家、平台)。

6、订单事务优化,采用Redis执行lua脚本扣减库存,进一步提升性能。

7、完整的单元测试(覆盖所有controller及复杂的业务类)。

8、完整的Swagger API文档。

9、数据模型规范:DO/DTO/VO。

 

 

官网:http://www.javamall.com.cn/

 

架构概览

 Javashop电商系统7.0发布_第1张图片

Javashop使用Spring Boot做为基础架构,使用spring mvc实现Rest API,并通过Swagger提供了完整的API可实现化文档,使用Spring security做为安全机制,采用token式验权(使用jwt),使用spring cloud的config server做为统一的配置中心,使用druid做为数据库连接池。

 

 

订单流程架构

Javashop电商系统7.0发布_第2张图片

电商业务中一大难点就是订单的库存扣减,为了防止超卖如果采用行级锁或分布式锁都会导致性能低下,Javashop 采用REDIS+LUA脚本、分段提交策略,实现了一套补偿式分布式事务解决方案,在保证高可用的同时,确保数据一致性。

 

 

静态页生成及展示

  Javashop电商系统7.0发布_第3张图片

电商系统中有一些高频访问、但变化性很小的页面,如首页、商品详情页。Javashop将这些页面生成在Redis集群中,再通过lua脚本直接输出给浏览器,实现了这些页面的高性能、高可用。

当这些页面变化时,如首页楼层被装修、或商品数据被改变时,会发送消息到amqp,消费者会重新生成相关页面,以此保证数据的一致性。

 

部署概览

Javashop电商系统7.0发布_第4张图片
 

 

Javashop基础设施的部署有:Mysql集群、Redis 集群、RabbitMq集群、Elasticsearch集群和XXL-Job(任务调度集群)。支持基于Docker的自动化运维。

 

界面展示

 

  

    Javashop电商系统7.0发布_第5张图片

  

Javashop电商系统7.0发布_第6张图片
 

产品技术栈

后端

核心框架:Spring Boot

MVC框架:Spring MVC

持久框架:Spring JDBC Template

程序构建:Maven

数据库:Mysql

消息中间件AMQP:RabbitMQ

缓存:Redis

搜索引擎:Elasticsearch

安全框架:Spring Security

数据库连接池:Druid

定时任务:xxl-job

负载均衡:Nginx

静态资源分发:Oss,FastDFS

日志处理:Log4j

Session处理:Spring Session Redis

代码检查:alibaba/p3c

接口规范:RESTful

 

前端

构建工具:webpack

JS版本:ES6

基础JS框架:Vue.js

辅助JS库:jQuery

路由管理:Vue Router

状态管理:Vuex

基础UI库:Element UI

UI界面基于:vue-element-admin

网络请求:Axios

CSS预处理:Scss

代码检查:ESLint

服务端渲染:Nuxt.js

报表系统:ECharts

富文本编辑器:百度 UEditor

图片上传插件:百度 Web Uploader

 

 

 

官网:http://www.javamall.com.cn/

 

 

  • Javashop电商系统7.0发布_第7张图片
  • 大小: 40.7 KB
  • Javashop电商系统7.0发布_第8张图片
  • 大小: 56.9 KB
  • Javashop电商系统7.0发布_第9张图片
  • 大小: 15 KB
  • Javashop电商系统7.0发布_第10张图片
  • 大小: 117.9 KB
  • Javashop电商系统7.0发布_第11张图片
  • 大小: 1.7 MB
  • Javashop电商系统7.0发布_第12张图片
  • 大小: 143.2 KB
  • Javashop电商系统7.0发布_第13张图片
  • 大小: 99.8 KB
  • 查看图片附件

你可能感兴趣的:(spring,redis,框架)