假期结束,都在回京的路上,手机小记一篇。
想做架构师,水平扩展方案当然是需要掌握的。
各层的水平扩展的实现,有以下几种参考方案。
针对接入层的水平扩展,我们需要解决好两个瓶颈问题:
一个是接入层的入口 VIP 瓶颈问题,我们可以针对单域名支持多 VIP 映射,并通过 DNS 轮询来进行负载均衡;
而针对业务自身的接入层服务,我们可以通过中央的“在线状态”资源,来解耦业务层的依赖,从而实现水平扩展。
针对业务层的水平扩展,我们可以进行“服务化”改造,依托“服务注册中心”和“服务自动发现”解决调用方寻址问题,实现业务层的水平扩展。
针对资源层的水平扩展,我们可以通过数据分片机制缓解主库和从库压力,还可以通过多从库提升读取能力,实现资源的水平扩展。
在链路各层的水平扩展的具体实施上,我们可以借助 Docker 等容器化技术,来屏蔽部署机器的差异。通过应用镜像的自定义部署环境,来提升链路各层水平扩展时的部署效率。
整个链路上知识应该都掌握和沉淀差不多了,下半年需要学习的当然是真正可以实现秒级扩容的docker和k8s了。