基于容器优先设计的应用现代化实践
1. Docker镜像仓库与私有仓库使用
镜像仓库在Docker中扮演着重要的角色,它用于存储和管理Docker镜像。通过仓库名称和镜像标签,可以清晰地识别应用程序的版本或平台变体。
使用私有仓库是Docker使用过程中较早会涉及的操作。在将现有应用程序容器化并尝试新的软件栈时,通过快速的本地网络推送和拉取镜像十分有用;若本地存储空间有限,也可以使用Docker Cloud。随着对Docker的使用深入并进入生产环境,可能会考虑升级到具有丰富安全功能的支持型注册表,如DTR。
2. 容器优先解决方案设计的优势
采用Docker作为应用程序平台具有明显的运营优势。容器作为比虚拟机更轻量级的计算单元,同样能提供隔离性,这使得可以在更少的硬件上运行更多的工作负载。而且,所有工作负载在Docker中的形态相同,运维团队可以用相同的方式管理.NET、Java、Go和Node.js等应用程序。
容器优先的解决方案设计在应用架构方面也有好处。主要体现在两个方面:
- 网络和服务发现功能使应用程序可以分布在多个组件中,每个组件运行在独立的容器中,可独立移动、扩展和升级。
- Docker Hub和Docker Store上丰富的生产级软件,使得可以使用现成的软件来实现许多通用服务,并以与自身组件相同的方式进行管理,从而在设计解决方案时不受基础设施或技术的限制。
3. 传统.NET应用NerdDinner的问题与挑战
NerdDinner是一个传统的.NET应用程序,采用单体设计,组件之间紧密耦合,所有通信都是同步的,并且缺乏单元测试、集成测试和端到端测试。
容器优先设计应用现代化实践
超级会员免费看
订阅专栏 解锁全文
1123

被折叠的 条评论
为什么被折叠?



