1、微服务架构和单体应用架构有什么区别?
- 微服务架构和单体应用架构的最大区别在于应用的拆分方式。单体应用是将所有功能模块都打包在一起,而微服务架构则是将一个巨大的单体应用拆分为很多小的互相连接的微服务(比如项目中,将整个服务拆分为北向服务:bcc、mgw等,南向服务:各个协议的dag等,媒体服务:stream、record、vcmd、vsms等)。
- 每个微服务都是一个独立的应用,可以独立部署、独立扩展(扩缩容的需求)和独立维护。这种架构方式可以提高应用的可伸缩性、可维护性和可靠性。
- 微服务架构还可以使团队更加敏捷,我们有媒体模块的团队,有dag模块的团队,有北向模块的团队。
2、微服务架构和容器化有什么关系?
- 容器化是指将应用程序及其所有依赖项打包到一个可移植的容器中,以便在不同的环境中运行。而微服务架构的核心理念之一就是将应用程序拆分成小的、自治的服务,每个服务都可以独立部署和扩展。
- 使用容器化技术可以更方便地部署和管理这些微服务,因为每个服务都可以打包成一个容器,并在不同的环境中运行。容器化还可以提供更好的隔离性和安全性,因为每个容器都运行在自己的虚拟环境中,不会影响其他容器或主机。
- 因此,微服务架构和容器化是一对天生的伴侣,它们可以共同帮助开发人员更轻松地构建、部署和管理分布式应用程序。
- 一句话总结:微服务架构核心理念之一是将应用程序拆分成小的服务,每个服务可以独立部署和扩展,而容器化技术可以更方便的部署和管理这些微服务,提供隔离性、安全性。但是我们项目没用,出于容器化会降低项目性能的考虑。
3、什么是微服务架构,跟其他架构的区别是什么,有什么优势
- 微服务架构是一种将应用程序拆分成小型、独立的服务单元的架构风格。每个服务单元都可以独立部署、扩展和维护,服务之间通过轻量级的通信机制进行交互。与传统的SOA架构相比,微服务架构更加注重服务的独立性和自治性,同时也更加灵活和可扩展。微服务架构的优势包括:
服务的独立性和自治性,可以更加灵活地进行部署、扩展和维护。
更好的可扩展性和容错性,可以更加容易地应对高并发和故障。
更好的团队协作和开发效率,可以更加快速地进行开发和部署。
更好的技术选型和创新性,可以更加灵活地选择和应用新的技术和框架。
更好的业务可理解性和可维护性,可以更加清晰地表达业务逻辑和进行系统维护。
- 与传统的单体式应用相比,微服务架构更加注重服务的独立性和自治性,同时也更加灵活和可扩展。微服务架构的服务单元更加小型、独立,可以更加灵活地进行部署、扩展和维护。同时,微服务架构也更加注重团队协作和开发效率,可以更加快速地进行开发和部署。