系统架构
文章平均质量分 90
系统构架是对已确定的需求的技术实现构架、作好规划,运用成套、完整的工具,在规划的步骤下去完成任务。
原飞木
Java开发工程师
展开
-
MySQL二进制日志
文章目录mysql复制功能解决了什么问题mysql二进制日志二进制日志二进制日志的格式(段)二进制日志的格式(行)二进制日志的格式(混合)mysql二进制日志格式对复制的影响基于SQL语名的复制( SBR )优点缺点基于行的复制( RBR )优点缺点混合模式mysql复制工作方式基于日志点的复制基于日志点的复制配置步骤实际操作(yum安装的mysql 5.7)优点缺点基于GTID的复制基于GTID的配置步骤案例操作优点缺点选择复制模式要考虑的问题复制架构一主多从的架构拥有备库的主-主复制拓扑Mysql复制常原创 2021-06-13 09:25:35 · 1201 阅读 · 1 评论 -
接口幂等性设计
接口幂等性 在系统中,一个接口运行多次,与运行一次的效果是一致的 什么情况下需要幂等性 重复提交、接口重试、前端操作抖动等 业务场景:用户多次点击提交订单,后台应只生成一个订单 业务场景:支付时,由于网络问题重发,应该只扣一次钱 并不是所有的接口都要求幂等性,要根据业务而定 幂等性的核心思想:通过唯一的业务单号保证幂等 非并发情况下,查询业务单号有没有操作过,没有则执行操作 并发的情况下,整个操作过程加锁 Select操作:不会对业务数据有影响,天然幂等 Delete操作:第一次已经删除,第二次也原创 2020-11-22 20:58:35 · 1877 阅读 · 1 评论 -
秒杀系统优化方案
秒杀接口的简单流程 1.用户是否登陆,没有登陆返回失败 2.用户是否有收货地址 3.库存是否充足,没有库存返回失败 4.用户是否重复秒杀,秒杀过了返回 5.减库存,库存是否改变,没有改变返回失败 6.下订单,写入秒杀订单 7.秒杀成功进行支付 页面优化技术 1.页面缓存+ URL缓存+对象缓存 2.页面静态化,前后端分离 3.静态资源优化 4.CDN优化 页面缓存 如前端页面使用的是Thy...原创 2020-02-16 00:22:20 · 1827 阅读 · 0 评论 -
Keepalived+Nginx高可用架构
Nginx架构 在系统设计中,可以利用Nginx的反向代理和负载均衡实现后端应用的高可用性,同时我们还需要考虑Nginx的单点故障。如果Nginx所在服务器宕机,或者Nginx服务不可用就会造成整个系统的不可用。为了解决这个问题可以使用Keepalived解决单点故障的问题。 keepalived它是一个基于VRRP协议来实现的WEB服务高可用方案,可以利用其来避免单点故障。一个WEB服务至少会有2台服务器运行Keepalived,一台为主服务器(MASTER),一台为备份服务器(BACKUP),但是对外表原创 2020-08-22 16:43:26 · 1524 阅读 · 1 评论