0

我们正在部署一种在 .Net 核心中开发的微服务,并将部署在 Azure WebApp 中

这些 WebApp 之间会有大量的通信。

现在,由于 WebApp 是面向 Internet 的,它们之间的所有调用都将通过 Internet,这将对性能产生影响。

除了 ASE(App Service Enviornment),我们还有什么办法可以做到这一点?

4

2 回答 2

2

是的,你可以这样做Access Restriction

az webapp config access-restriction add --resource-group ResourceGroup --name AppName \
   --rule-name 'IP example rule' --action Allow --ip-address 122.133.144.0/24 --priority 100

https://docs.microsoft.com/en-us/azure/app-service/app-service-ip-restrictions#adding-and-editing-access-restriction-rules-in-the-portal

附言。AKS 可能是微服务的更好选择;)

于 2020-02-12T14:46:01.437 回答
0

有两种方法可以在两个 Web 应用程序之间通过私有 IP 进行通信。

  1. 在一个或两个 Web 应用程序上配置区域 VNET 集成。

  2. 考虑在 Web 应用程序一之前拥有 Azure 应用程序网关,并配置访问限制以仅允许访问应用程序网关子网。 https://docs.microsoft.com/en-us/azure/app-service/app-service-ip-restrictions#set-a-service-endpoint-based-rule

其他一些用例

  1. 如果您不想将 Web 应用程序公开到 Internet,请使用 Service Fabric。
  2. 您还可以考虑将这两个应用程序都作为 API 管理的后端。 https://docs.microsoft.com/en-us/azure/api-management/api-management-using-with-internal-vnet?tabs=stv2#routing 每当您启用应用程序网关时,应用程序网关充当拦截器并转发流量,因此您的两个 Web 应用程序都可以通过私有 IP 进行通信。
于 2021-09-10T05:36:04.600 回答