- 博客(6)
- 资源 (71)
- 收藏
- 关注
原创 分布式系统解决方案(六)--配置中心的选择
常用的配置中心有:Spring Cloud Config2014年9月开源,Spring Cloud 生态组件,可以和Spring Cloud体系无缝整合。Spring Cloud Config原生不支持配置的实时推送,需要依赖Git的WebHook、Spring Cloud Bus和客户端/bus/refresh端点:1、基于Git的WebHook,配置变更触发server端refresh2、Server端接收到请求并发送给Spring Cloud Bus3、Spring Clo
2020-06-28 23:01:36 193
原创 分布式系统解决方案(五)--缓存的选择
缓存雪崩解决描述:缓存雪崩是指缓存中数据大批量到过期时间,而查询数据量巨大,引起数据库压力过大甚至down机。解决方案:1、缓存数据的过期时间设置随机,防止同一时间大量数据过期现象发生。2、如果缓存数据库是分布式部署,将热点数据均匀分布在不同搞得缓存数据库中。3、设置热点数据永远不过期。缓存穿透解决描述: 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,攻击会导致...
2020-06-20 22:22:04 132
原创 分布式系统解决方案(四)--分库分表的选择
分库分表策略1. 取余 关于取余的策略,这种方式上面已经进行了详细的介绍,主要的策略就是根据指定的字段对数据库节点数进行取余,从而将其插入到对应的数据库中,这里不再赘述。2. 按照范围分片按照范围分片,顾名思义,就是首先对整体数据进行范围划分,然后将各个范围区间分配到对应的数据库节点上,当用户插入数据时,根据指定字段的值,判断其属于哪个范围,然后将数据插入到该范围对应的数据库节点上。需要注意的是,这里会配置一个默认的范围,当用户插入的数据不再任何指定的范围内时,该数据将会被插入.
2020-06-20 22:15:02 281
原创 分布式系统解决方案(三)--分布式事务选择
本地事务事务的四大特性1、 原子性(Atomicity):操作这些指令时,要么全部执行成功,要么全部不执行。只要其中一个指令执行失败,所有的指令都执行失败,数据进行回滚,回到执行指令前的数据状态。eg:拿转账来说,假设用户A和用户B两者的钱加起来一共是20000,那么不管A和B之间如何转账,转几次账,事务结束后两个用户的钱相加起来应该还得是20000,这就是事务的一致性。2、一致性(Consistency):事务的执行使数据从一个状态转换为另一个状态,但是对于整个数据的完整性保持稳定。3
2020-06-20 21:53:50 186
原创 分布式系统解决方案(二)--分布式锁选择
分布式锁的选择方案数据库乐观锁乐观锁通常实现基于数据版本(version)的记录机制实现的,比如有一张红包表(t_bonus),有一个字段(left_count)记录礼物的剩余个数,用户每领取一个奖品,对应的left_count减1,在并发的情况下如何要保证left_count不为负数,乐观锁的实现方式为在红包表上添加一个版本号字段(version),默认为0。redis分布式锁使用1、setnx(lockkey, 1) 如果返回0,则说明占位失败;如果返回1,则说明占位成功2、e.
2020-06-20 21:41:01 217
原创 分布式系统解决方案(一)--注册中心选择
cap原则Consistency (一致性):一致性指的是所有节点在同一时间的数据完全一致Availability (可用性):可用性指服务一直可用,而且是正常响应时间Partition Tolerance (分区容错性):分区容错性指在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性和可用性的服务著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性)、A(可用性)、P(分区容错性)。由于分区容错性是在分布式系统中必须要保证的,因此我们需要在A和
2020-06-20 21:36:21 267
asp.net+java+xml+jquery+sqlserver+linq+ajax中文教程
2012-08-17
ado.net+ajax+html+css+jquery+oracle+xml+sqlserver参考手册
2012-08-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人