分类: 实战项目
K8S的集群搭建与入门操作
搭建k8s集群
1.vagrant up创建三个虚拟机
Vagrantfile文件如下:
Vagrant.configure("2") do |config|
(1..3).each do |i|
config.vm.define "k8……
商城:Sleuth+Zipkin 链路追踪与可视化
SpringCloud:分布式请求链路跟踪-Sleuth
docker安装zipkin服务器
docker run -d -p 9411:9411 openzipkin/zipkin
商城添加链路追踪
1.引入依赖(注意引入alib……
商城:Sentinel 流控
Sentinel:
SpringCloud:Sentinel实现熔断与限流(1)
使用Sentinel
整合springboot/cloud: https://github.com/alibaba/spring-cloud-alibaba/wiki/Sentinel
……
商城:订单服务-订单与RabbitMQ相关
创建业务交换机-队列
监听库存解锁
库存解锁的场景:
(1).下订单成功,库存过期没有支付被系统自动取消,被用户手动取消,都要解锁库存
(2).下单成……
本地事务,分布式事务
本地事务在分布下的问题
@Transactional 本地事务,此方法虽然已经添加该注解,但仍会产生一些问题:
1.第四步,远程服务其实成功了。但由于网络问题故障等问……
商城:订单服务-接口幂等性与订单业务
问题:
如果一个用户提交订单的时候网络卡顿,一直不停的点击"提交订单",那么会不会生成多个成功订单,扣除多次款项
什么是幂等性
接口幂等性就是用户对于同……
商城:订单服务-订单确认页confirm
页面搭建
等待付款-订单详情页-静态文件:order/detail 首页:detail.html
订单页-订单列表-静态问价:order/list 首页:list.html
结算页-订单确认-静态问价:……
商城:RabbitMQ
RabbitMQ:https://www.tinstu.com/category/notes/rabbitmq
docker安装RabbitMQ
docker run -d --name rabbitmq
-p 5671:5671
-p 5672:5672
-p 4369:4369……
商城:商城业务-购物车
环境搭建
新建product-cart
template下放入 两个关于购物车的html页面以及代码中静态文件的路径
Nginx下方静态文件
修改 host文件 Nginx的配置文件 网关路由
……
认证服务-社交登录/分布式session
社交登录
账号密码完成登录
拿到前端传来的用户名或手机号 / 密码
远程调用product-member中方法
MemberServiceImpl中的login方法,对传来的信息,与数据库中……
大型商城:认证服务-注册相关
环境搭建
1.新建一个moudle gulimall-auth-server
2.将登录注册页的静态文件放到Nginx中
3.登录注册页的html修改相应的静态文件链接
4.修改host文件 auth.mal……
大型商城:商品详细
环境搭建
1.修改host文件 :item.mall.com
2.静态文件放到Nginx中
3.item.html文件放入gulimall-product的template下
4.修改 list.html和item.html中的href和s……
大型商城:商城业务-异步&线程池
线程回顾
1.初始化线程的四种方式
1)、继承 Thread
2)、实现 Runnable 接口
3)、实现 Callable 接口 + FutureTask (可以拿到返回结果,可以处理异常)
4)……
大型商城:检索服务
搭建检索服务的页面
引入thymeleaf依赖
首页index放入gulimall-search中template中,并修改静态资源的路径
修改网关,host:search.mall.com指向gulimall-sear……
大型商城:缓存 - SpringCache
springcache简介
每次都那样写缓存太麻烦了,spring从3.1开始定义了Cache、CacheManager接口来统一不同的缓存技术。并支持使用JCache(JSR-107)注解简化我们的……