架构技术要义
架构技术要点
架构技术要点
SOA
SOA架构 SOA: Service Oriented Architecture, 面向服务的架构,
分布式调用跟踪,(Zipkin,淘宝的鹰眼,新浪的watchman,京东的Hydra,google的Dapper)
应对高并发、大流量的常规手段:
扩容、动静分离、缓存、服务降级、限流
限流,就是牺牲一部分人不能及时访问不保证整体系统的安全,不致于压跨整个系统。
池化资源技术,如连接池已经固定了最大连接数,超过这个阀值就不能申请到了(基于计数型算法),还有就是每秒能处理请求的限流
令牌桶算法,桶的容量是一定的,桶满了新的令牌就会被丢弃。
漏桶算法,流入桶的是任意的,按照固定速率流出水滴
Guava
nginx也可以实现限流
在业务上进行,如分时段进行秒杀,验证码拉长下单请求
MQ实现对数据写的限流作用
扩容,就是集群
动静分离,就是应用CDN
缓存,使用缓存
服务降级,
分布式配置管理
zookeeper(订阅、监听),淘宝的Diamond,百度disconf(基于zookeeper)
MYSQL Sharding:cobar,mycat,shark
订单业务冗余表,就是通过异步的方式以sellerId和buyer_id进行数据(分表分库)落盘。
架构技术要点
SOA
SOA架构 SOA: Service Oriented Architecture, 面向服务的架构,
分布式调用跟踪,(Zipkin,淘宝的鹰眼,新浪的watchman,京东的Hydra,google的Dapper)
应对高并发、大流量的常规手段:
扩容、动静分离、缓存、服务降级、限流
限流,就是牺牲一部分人不能及时访问不保证整体系统的安全,不致于压跨整个系统。
池化资源技术,如连接池已经固定了最大连接数,超过这个阀值就不能申请到了(基于计数型算法),还有就是每秒能处理请求的限流
令牌桶算法,桶的容量是一定的,桶满了新的令牌就会被丢弃。
漏桶算法,流入桶的是任意的,按照固定速率流出水滴
Guava
nginx也可以实现限流
在业务上进行,如分时段进行秒杀,验证码拉长下单请求
MQ实现对数据写的限流作用
扩容,就是集群
动静分离,就是应用CDN
缓存,使用缓存
服务降级,
分布式配置管理
zookeeper(订阅、监听),淘宝的Diamond,百度disconf(基于zookeeper)
MYSQL Sharding:cobar,mycat,shark
订单业务冗余表,就是通过异步的方式以sellerId和buyer_id进行数据(分表分库)落盘。