微服务与API网关Ocelot vs Nginx

微服务与API网关Ocelot vs Nginx,nginx,api-gateway,ocelot,Nginx,Api Gateway,Ocelot,我有一个基于.net核心的微服务体系结构。 我选择ocelot作为api网关。我的前端应用程序基于vue js,托管在nginx容器上。在今天的一次讨论中,我了解到nginx已经可以用作网关。有人建议“你应该将nginx用作网关,因为你已经用于服务前端,nginx也可以部署为网关”。我搜索了互联网以比较这两个网关(我知道nginx的主要用途不是网关)但找不到任何关于其优缺点的信息,如性能、可扩展性和可用性等 使用这两种技术的人能否与我分享我应该选择哪一种技术的信息?Ocelot是.NET API

我有一个基于.net核心的微服务体系结构。 我选择ocelot作为api网关。我的前端应用程序基于vue js,托管在nginx容器上。在今天的一次讨论中,我了解到nginx已经可以用作网关。有人建议“你应该将nginx用作网关,因为你已经用于服务前端,nginx也可以部署为网关”。我搜索了互联网以比较这两个网关(我知道nginx的主要用途不是网关)但找不到任何关于其优缺点的信息,如性能、可扩展性和可用性等


使用这两种技术的人能否与我分享我应该选择哪一种技术的信息?

Ocelot是.NET API gateway,但与云无关。如中所述,它具有以下特性。它是一个免费的简单Nuget包,用于简单的安装,没有太高的功能或性能要求,但它总是在.net环境中出色地完成这项工作,并且还提供了一些功能。它轻量级、快速、可扩展,除了所有网关功能外,还提供路由和身份验证。在Azure上,Azure API管理提供了这些功能以及许多更高级的网关功能

NGinx有一个开源版本和一个plus版本

NGINX是一款高性能、可扩展、安全可靠的web服务器 和一个反向代理。NGINX支持所有主要的web加速 管理HTTP连接和流量的技术。多年来,, NGINX功能,如负载平衡、SSL终止、连接 并且请求管理、静态内容卸载和内容缓存已经实现 帮助NGINX用户快速、可靠地构建网站 效率高

NGINX还可以充当安全的应用程序网关,提供许多专门的内置接口,将流量从用户传递到应用程序。因此,正如您所看到的,NGinx不仅仅是一个API网关。通过服务器,您可以集成许多其他服务,如流量分布、策略、监控、警报、通知、自定义配置等。对于企业级应用程序,Ocelot的性能或可配置性可能有限

Nginx与Ocelot不同

如果您的公司已经在使用它,并且已经部署了它,您应该继续使用Nginx。


在正常情况下,Ocelot可能比Nginx看起来更好。但Nginx是一款成熟的软件。原因如下:a。您的公司已经拥有Nginx plus的许可证,为什么要使用其他软件进行API管理。BNginx可配置为高性能,ocelot则不是。在Ocelot中,你只能做不到的事情。它有一个网关。NGinx plus用户将获得培训和团队支持。Nginx将是所有应用程序的一个API网关(独立于技术)。Ocelot依赖于技术。考虑到优缺点,您的公司可能已经拥有Nginx plus许可证和用于多个应用程序的通用API,这就是为什么他们可能会推动它的原因。

首先,Nginx和Ocelot是非常不同的软件。 使用Nginx最终将对您的infra有好处,因为它可以用作API网关,而且它是开源的、安全的,并提供许多其他好处

从长远来看,使用Ocelot会有缺点。你需要多处理一个软件。为什么要浪费时间呢?开发人员需要同时了解这两个方面


我建议您使用Nginx,因为它已经实现了,请完成您的工作

谢谢您的回答。但我需要对性能和其他方面进行技术比较。你说的我都知道。我需要像Nginx比Ocelot快2倍或者Nginx更具可扩展性这样的信息。因为我们已经实现了ocelot。我为什么要迁移到Nginx