我最接近找到实际差异的是article。
但我不明白是什么让我选择一个而不是另一个如果微服务也可以使用REST API并通过http进行通信。
我主要不明白什么是微服务,是否可以代替网络服务,而不是
的目的将大型软件应用程序分解为松散耦合的模块
答案 0 :(得分:13)
microservice是一种软件架构,可以通过Web服务实现。
webservice只是一种技术(众多之一),用于提供超过" web"或HTTP。
答案 1 :(得分:7)
重点是:网络服务是(正如名称所宣布的那样)您希望"交易"使用HTTP - 换句话说,它在全球 web 的上下文中执行某些操作。
微服务不受WWW上下文的影响。微软服务的核心应该是提供一种特定服务 - 但是对于http协议没有限制。例如。
微服务通常会实现一个宁静的网络服务" - 但它不一定要那样!
除此之外,微服务通常被称为计数器模型到一个巨大的单片应用程序,它可以提供许多不同类型的请求。
答案 2 :(得分:5)
我得到的简单回答here表示: 微服务是一种新的软件架构。它基于Web服务。但它可以是作为独立功能实现的任何服务,它具有自己的数据库并且可以独立部署。
微服务是一种体系结构,其中系统的所有组件都放入单独的组件中,可以单独构建,部署和扩展。
答案 3 :(得分:1)
微服务:-
微服务是一种可以与Web服务一起使用的软件体系结构。此方法涉及将大型软件应用程序拆分为解耦的模块,微服务在其中运行唯一的进程并通过API进行通信。它的开发可以通过使用消息传递,事件驱动的API或使用非HTTP支持的RPC机制来实现。
微服务架构可以节省大型应用程序发生故障或停机的时间。如果特定服务的通信失败,则单个模块的故障不会影响整个应用程序。可以将Java,C#,Python和移动软件开发语言中的微服务结合起来。可以将其独立部署在业务域的服务模型中。
网络服务:-
Web服务只是可以通过“ Web”或HTTP提供服务的几种技术之一。 Web服务作为一种特定类型的面向服务的体系结构(SOA),代表了Web应用程序的功能。
它通过使用标准HTTP协议和通用的数据表示格式(例如XML,JSON等)来定义API与主要代码之间的交互机制。这允许使用不同技术开发的软件应用程序相互通信。
Web服务不参与前端开发。它们未连接到任何开发语言或用户设备软件平台。如果使用不同的语言和针对不同的操作系统(如微服务)编写,则也可以将不同的Web服务组合为一个。
答案 4 :(得分:0)
微服务是Web服务的扩展。