本文首发自“Docker公司”公众号(ID:docker-cn)
编译丨小东
每周一、三、五 与您不见不散!
将整体应用程序迁移到现代化的云架构上可能会十分困难,而且对于开发人员来说往往需要花费额外的精力来开展这项工作。但是,当使用 Docker EE 时,开发人员就可以在整个的迁移过程中,享受 Docker 所带来的可移植性、安全性和高效性,并且无需花费额外的精力来修改代码。
系列视频的第三部分将开始现代化改造进程。我将介绍当前应用程序的一个方面,并将它迁移到微服务。如果直接将消息写入数据库,则很容易被大量请求压垮应用程序。
一种解决方案是执行消息队列。和第二部分内容一样,我将遵循以下四条准则:
- 保留现有代码;
- 将新代码设计为独立、可复用的应用程序;
- 使用 Docker EE 在本地部署微服务;
- 测试代码;
在进行现代化改造这一部分中,如上图所示,我添加了一个由 REST 接口组成的消息队列,该接口将消息写入到 Redis。用户数据保存在 Redis 中,直到这些数据被 worker 服务器请求写入到数据库。消息队列使用 Spring Boot 来实现 REST 接口和 Redis 数据库功能。我之所以选择 Redis 数据库是因为它有一种方法可以在没有连续轮询的情况下提取数据,从而创建一个高效的消息队列。详情请从以下渠道观看完整视频: