Javashop是基于Java开发的企业级电商平台,现推出7.0版本,更新内容如下:
官网:http://www.javamall.com.cn/
Javashop使用Spring Boot做为基础架构,使用spring mvc实现Rest API,并通过Swagger提供了完整的API可实现化文档,使用Spring security做为安全机制,采用token式验权(使用jwt),使用spring cloud的config server做为统一的配置中心,使用druid做为数据库连接池。
电商业务中一大难点就是订单的库存扣减,为了防止超卖如果采用行级锁或分布式锁都会导致性能低下,Javashop 采用REDIS+LUA脚本、分段提交策略,实现了一套补偿式分布式事务解决方案,在保证高可用的同时,确保数据一致性。
电商系统中有一些高频访问、但变化性很小的页面,如首页、商品详情页。Javashop将这些页面生成在Redis集群中,再通过lua脚本直接输出给浏览器,实现了这些页面的高性能、高可用。
当这些页面变化时,如首页楼层被装修、或商品数据被改变时,会发送消息到amqp,消费者会重新生成相关页面,以此保证数据的一致性。
Javashop基础设施的部署有:Mysql集群、Redis 集群、RabbitMq集群、Elasticsearch集群和XXL-Job(任务调度集群)。
支持基于Docker的自动化运维。
商家中心展示
平台端展示
| 后端 |
|
| 核心框架 |
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/