分布式电商开发 01

互联网电商行业的特点

分布式 , 高并发 , 集群 , 海量数据 等等

那如何解决海量数据和高并发的问题呢?

1.dao 层
合理的表设计(尽量避免多表联查 , 不做主外键约束)
高频查询的数据 , 应放入缓存 Redis 中
经常模糊查询的数据放到 solr
数据库分布式部署 分库分表
2.service 层
使用面向服务的开发方式 : SOA 把服务层做成 web 项目 , 给 web 层提供服务 , 服务层之间数据交互操作消息队列MQ
3.web 层
静态页面 , 浏览器缓存 , CDN 部署方案

什么是 SOA 呢?

SOA 是 Service-Oriented Architectrue 的首字母简称,它是一种支持面向服务的架构样式 . 从服务 , 基于服务开发和服务的结果来看 , 面向服务是一种思考方式 . 其实 SOA 架构更多应用于互联网项目的开发 .

为什么要用 SOA ?

因为随着网站应用的规模不断扩大 , 常规的垂直应用架构已经无法应对 , 分布式服务架构以及流动计算架构势在必行 , 迫切需要一个治理系统确保架构有条不紊的演进 .

Dubbox

Dubbox 是一个分布式服务框架 , 前身是阿里巴巴的 Dubbo

Dubbox 是用来干什么的?

Dubbox 提供高性能和透明化的 RPC 远程服务调用方案 , 以及 SOA 服务治理方案 .
如果没有分布式的需求 , 其实是不需要使用的 .

Zookeeper

官方推荐使用 zookeeper 注册中心 . 注册中心 负责服务地址的注册于查找 , 相当于目录服务 , 服务提供者和消费之只在启动时于注册中心交互 , 注册中心不转发请求 , 压力较小 .



分布式电商开发 01_第1张图片
1.png

1.服务层注册通过 dubbo 把对象传到 zookeeper 注册中心
2.表现层通过 dubbo 从 zookeeper 注册中心 中获取对象
3.表现层使用获得的代理对象远程调用服务层方法

你可能感兴趣的:(分布式电商开发 01)