Redis消息队列性能测试及知识点整理
还是Redis入门
从优化性能到应对峰值流量:微博缓存服务化的设计与实践
微博的Cache设计,开发和治理
总结一下微博的缓存架构演进过程:
- 在直接使用裸缓存资源的过程中,我们通过 Main-HA 双层结构,消除了单点问题;
- 通过热数据的多 L1 副本,可以用较低的成本即可应对高峰、突发流量;
- L1s-M-H 三层缓存结构消除了缓存层出现的带宽和 CPU 过载的情况,使整个系统的读取性都、可用性得了很大的提高。
华为内部如何实施微服务架构?基本就靠这5大原则
有关服务的拆分,开发,测试,治理和部署,拆分的粒度,开发中的协议的开发和接口的定义,依赖及Mock,治理的策略和实现,如何实现持续集成和部署,最后谈了一些实践诸如:分布式事务(最终一致性还是强一致性),性能的影响因素(I/O模型,线程调度模型和序列化方式)。
首先,需要对业务进行拆分。当业务量大了以后,特别是当不同的功能耦合在一起的时候,任何一个地方的改动都是非常困难的,必须对业务进行拆分,拆分的策略有两种:
- 横向拆分。按照不同的业务域进行拆分,例如订单、商品、库存、号卡资源等。形成独立的业务领域微服务集群。
- 纵向拆分。把一个业务功能里的不同模块或者组件进行拆分。例如把公共组件拆分成独立的原子服务,下沉到底层,形成相对独立的原子服务层。这样一纵一横,就可以实现业务的服务化拆分。
其次,要做好微服务的分层:梳理和抽取核心应用、公共应用,作为独立的服务下沉到核心和公共能力层,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。
完成服务的拆分和分层工作之后,就会涉及到分布式的部署和调用。如何透明化、高效的发现服务,需要一个服务注册中心,通过服务化和订阅、发布机制对应用调用关系解耦,支持服务的自动注册和发现。
王宝强有九套房,为什么大家知道的只有美国那一套?
美国的公开信息详尽的令人发指