分布式系统常见问题
1.分布式问题
1. 分布式session问题。
可以通过redis进行session存储,或者直接引入spring-session-redis-start插件,进行分布式session的控制,当然也可以用nginx的iphash,但是他是直接将ip绑定到某一台服务器,会造成负债不均衡。
2. 数据一致性问题。
可以通过分布式事务框架,或者是最终一致性解决方案解决。
3. 冥等性问题
在api处理业务时,一定要做表单重复处理的校验。如对相同业务的重复性处理,可以提出一个基类封装该业务的参数,其他也特定参数由继承的类封装, 然后使用aop拦截进行表单重复提交的控制。
4. 全局id问题
可以使用redis 自增实现全局的sequence。也可以使用uuid,uuid就是可读性较差,且必须是字符串存储空间比较大。
5. 分布式锁问题
可以使用zookepper,或者是redis实现分布式锁,但是个人更推荐乐观锁来进行控制。
2.高并发问题
1. 如何提高接口的qps?
①可以使用ehcache和redis 做一二级缓存,提高接口的qps。
②比如注册过后需要发送手机验证码,发送邮箱。 也可以使用队列来解耦,提高qps。
3. 高可用问题
1.巧妙的使用缓存防止请求直接穿透到数据库中。
2. 使用Hystrix防止雪崩效应。防止服务的堆积。
相关推荐
houmenghu 2020-11-17
我心似明月 2020-11-09
oraclemch 2020-11-06
ltd00 2020-09-12
康慧欣 2020-09-10
waveclouds 2020-09-04
蓝色深海 2020-09-15
jincheng 2020-09-01
思君夜未眠 2020-08-25
取个好名字真难 2020-08-06
歆萌 2020-08-03
阳光之吻 2020-08-03
婷婷小屋 2020-07-28
solarspot 2020-07-28
MLXY 2020-07-26
dxbjfu0 2020-07-26
songbinxu 2020-07-19
83520298 2020-07-06