高并发和分布式
文章平均质量分 90
包括高并发架构设计、分布式事务、分布式登录(即单点登录)三个内容
祖母绿宝石
程序员
展开
-
单点登录SSO(二)
文章目录一、前言二、分布式架构导致了单点登录三、单体架构的登录3.1 单体架构登录理论3.2 单体架构登录实现思路(三个函数)3.3 Demo:单体架构的登录(三个函数)四、多系统登录的问题与解决4.1 问题1:Session不共享问题4.2 问题2:Cookie跨域的问题4.3 Demo:分布式架构的单点登录(三个函数)五、CAS原理(认证中心服务)六、面试金手指(要记的东西)6.1 分布式架构导致了单点登录 + session和cookie两个不同6.2 单体架构的登录6.2.1 单体架构登录理论6原创 2020-10-07 12:52:59 · 967 阅读 · 0 评论 -
单点登录SSO(一)
一、引子问题1:什么是SSO?单点登录是什么?回答1:SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。它是目前比较流行的企业业务整合的解决方案之一。如:如图所示,图中有4个应用,分别是Application1、Applicatio...原创 2019-12-05 23:29:36 · 1694 阅读 · 1 评论 -
蝶梦,五种架构演变史
文章目录一、前言二、单体架构三、服务器集群架构四、数据库集群架构4.1 数据库读写分离、索引库搜索4.2 redis数据存储、oss文件存储4.3 大数据量分库分表五、SOA架构六、微服务架构七、小结一、前言随着互联网的不断发展,后端架构不断更新,一文带你看遍整个过程。二、单体架构早期的web程序使用的就是单体架构,如图浏览器使用域名www.baidu.com访问百度首页,但是服务端只能使用ip解析,不能对字符串解析,所以需要配合DNS服务器,将域名解析为ip地址,传递给服务器,这样服务器才可识别原创 2020-06-07 17:01:59 · 934 阅读 · 0 评论 -
暗刺,高并发五个利器
文章目录一、前言二、缓存2.1 缓存本质 + 缓存分类 + 缓存三大特征 + 三种淘汰算法 + 根据业务场景设计过期时间2.2 本地缓存(进程内缓存)2.3 分布式缓存2.4 缓存雪崩 + 缓存穿透 + 缓存击穿 + 缓存更新三、限流(服务限流,表示处理的对象是服务,包括限流四规则 + 限流四实现)3.1 限流3.2 限流四规则3.3 限流四实现四、降级(即服务降级,表示处理的对象是服务,这里指主动降级)4.1 服务降级的定义4.2 服务降级五种方式五、熔断(即服务熔断,表示处理的对象是服务,就是被动降级)原创 2020-09-18 22:34:54 · 1165 阅读 · 2 评论 -
分布式事务的七种实现方式
文章目录一、前言二、强一致性、弱一致性、最终一致性三、从事务到分布式事务3.1 从事务到分布式事务3.2 分布式事务的实现方式3.2.1 两阶段提交 实现分布式事务3.2.2 三阶段提交 实现分布式事务3.2.3 TCC(Try尝试、Confirm确认、Cancel取消)实现分布式事务3.2.4 最大努力通知 实现分布式事务(略,有单独博客)3.2.5 MySQL基于XA 实现分布式事务(略,有单独博客)3.2.6 ebay本地消息表(ebay研发出的)实现分布式事务3.2.7 半消息/最终一致性(Rock原创 2020-10-03 14:19:51 · 9626 阅读 · 0 评论 -
分布式事务架构的五大演进
文章目录一、前言二、银行转账例子:从事务到分布式事务三、五种事务演变3.1 单数据库事务(简单,一个事务包一层就处理了)3.2 基于后置提交的多数据库事务3.2.1 用户数增多,mysql集群引入3.2.2 还是使用 执行-提交 模式(一句数据不一致)3.2.3 使用先全部执行完,再全部提交,后置事务提交(先全部执行,然后全部提交,四句中一句数据不一致)3.3 基于两段提交的多数据事务(略,6种分布式中讲过了)3.4 TCC 多数据库事务3.4.1 从金币数据库、道具数据库到金币服务、道具服务(记住图,直接原创 2020-10-02 21:06:16 · 596 阅读 · 0 评论 -
分布式事务保证服务间的数据一致性:使用MQ消息通知机制实现“实时性要求不高”的最大努力通知
文章目录一、前言二、定义:什么是最大努力通知三、最大努力通知的两种解决方案四、实践:RocketMQ实现最大努力通知型事务4.1 业务说明4.2 程序组成部分4.3 创建数据库4.4 启动RocketMQ4.5 EurekaServer:discover-server4.6 导入dtx-notifymsg-demo4.6.1 导入dtx-notifymsg-demo4.6.2 父工程maven依赖说明4.6.3 配置rocketMQ4.7 dtx-notifydemo-pay4.7.1 dtx-notify原创 2020-10-02 16:26:46 · 2744 阅读 · 0 评论 -
MySQL中基于XA实现的分布式事务
文章目录一、前言二、XA基础2.1 XA基础知识2.1.1 DTP是什么?2.1.2 DTP的结构:AP TM RM2.1.3 DTP的重要概念2.2 XA事务:基于两阶段提交( 两阶段提交是一种理论,XA事务 是这种理论的实现)2.2.1 两阶段提交2.2.2 XA基于两阶段提交三、MySQL3.1 MySQL分布式事务操作3.1.1 XA事务语法3.1.2 XA事务演示3.1.3 XA事务恢复3.2 MySQL分布式事务限制3.2.1 XA事务和本地事务以及锁表操作是互斥的3.2.2 xa start之原创 2020-10-03 10:41:41 · 1929 阅读 · 0 评论 -
避免使用 二段式/三段式提交 分布式事务,ebay本地消息表登场
文章目录一、前言二、分布式事务的劣势三、方案初探四、接上面,引用消息队列,实现两数据库数据一致性五、引入消息状态表,保证幂等性六、面试金手指6.1 XA分布式事务的劣势(可用性、性能、可伸缩性)6.2 消息队列+幂等性(加一个表+数据库或后端相关逻辑)6.3 如何选用(XA分布式事务 or ebay本地消息表)6.4 黄金金手指:七种分布式事务小结(面试宝典:)七、小结一、前言二、分布式事务的劣势由于数据量的巨大,大部分Web应用都需要部署很多个数据库实例。这样,有些用户操作就可能需要去修改多个数据库原创 2020-10-03 11:38:13 · 880 阅读 · 0 评论