2.1 网关微服务

功能需求
用户在确认收货后可以对商品进行评价 , 每个用户对订单中的商品只能发布一次顶级评论 , 可以追评 , 也可以回复别人的评论 。当用户确认收货后没有进行手动评价时 , 3天后自动五星好评
表结构设计
和字段是用来实现评论嵌套的 。
实现
使用存储评论 , 基本的CRUD 。
2.5 配置中心微服务
需求
在分布式系统中 , 由于服务数量巨多 , 为了方便服务配置文件统一管理 , 实时更新 , 所以需要分布式配置中心组件 。在 Cloud中 , 有分布式配置中心组件 , 它支持配置服务放在配置服务的内存中(即本地) , 也支持放在远程Git仓库中 。
使用来实现配置的自动更新 。
组成结构
在 cloud组件中 , 分两个角色 , 一是  , 二是。
是一个可横向扩展、集中式的配置服务器 , 它用于集中管理应用程序各个环境下的配置 , 默认使用Git存储配置文件内容 , 也可以使用SVN存储 , 或者是本地文件存存储
是 的客户端 , 用于操作存储在 中的配置内容 。微服务在启动时会请求 获取配置文件的内容 , 请求到后再启动容器
实现
创建配置中心 , 对 进行配置 , 然后在其它微服务中配置。最后使用上的进行配置的动态刷新 , 所以还要使用内网穿透工具 , 同时要在配置中心中添加过滤器 , 因为使用提交请求时会加上一段 , 而本地是无法解析这个的 , 所以要将它过滤掉 。
2.6 页面静态化微服务
商品详情浏览量比较大 , 并发高 , 所以单独开启一个微服务用来展示商品详情 , 并且对其进行静态化处理 , 保存为静态html文件 。在用户访问商品详情页面时 , 让nginx对商品请求进行监听 , 指向本地静态页面 , 如果本地没找到 , 才反向代理到页面详情微服务端口 。
2.7 后台管理微服务
主要是对商品分类、品牌、商品的规格参数以及商品的CRUD , 为后台管理提供各种接口 。
2.8 订单微服务
主要接口有:
2.9 注册中心
基本架构
主要功能就是对各种服务进行管理 。
2.10 搜索微服务
主要是对的应用 , 将所有商品数据封装好后添加到的索引库中 , 然后进行搜索过滤 , 查询相应的商品信息 。
2.11 秒杀微服务
主要接口有:
秒杀的实现及其优化:
前端:秒杀地址的隐藏、使用图形验证码
后端:接口限流 , 使用消息队列 , 调用订单微服务执行下单操作 。
TODO:需要改进~~~~~~~~~~~~~!!!!!!!!!!!!!
2.12 短信微服务
因为系统中不止注册一个地方需要短信发送 , 因此将短信发送抽取为微服务:leyou-sms- , 凡是需要的地方都可以使用 。
另外 , 因为短信发送API调用时长的不确定性 , 为了提高程序的响应速度 , 短信发送我们都将采用异步发送方式 , 即:
2.13 文件上传微服务
使用分布式文件系统实现图片上传 。
架构
两个主要的角色:和。
上传流程
通过 查找可用的。向返回一台可用的 的IP地址和端口号 。直接通过 返回的IP地址和端口与其中一台 建立连接并进行文件上传 。上传完成 ,  返回一个文件ID , 文件上传结束 。