Azure网站实例究竟是什么

时间:2017-05-17 05:06:17

标签: asp.net azure azure-web-sites instances

有关实例的Azure网站清晰度,这些实例是在多台计算机上运行的,例如Web服务器场环境,其中一个客户端请求(会话)可以由服务器场中的不同服务器提供服务器。

服务器群asp.net应用程序的问题是,如果是这种情况我们可以松开会话变量,为了解决这个问题,我们在web.config中添加机器密钥,以确保客户端会话始终是同一服务器的服务器所以会话变量不会丢失。

Azure实例如何工作。这并不意味着我们可以在同一计划下拥有10个网站,让ex s1 Standard。

我在Azure上托管基于asp.net webform的网站我很困惑如何实际工作。互联网上有很多文章引起混淆。

2 个答案:

答案 0 :(得分:2)

PaaS的一个原因是你必须关心它。如果您有 statefull 网站,则可以使用 ARR Affinity 设置来确保客户端始终访问同一个实例: enter image description here

答案 1 :(得分:2)

添加到Martin Brandl的回答中。

应用服务计划可以有多个实例。这些实例运行该计划中的所有应用程序。所以它非常像一个经典的网络农场。除了它更容易管理。

有一种更好的方法可以在Web场中保留会话信息,而不是依赖ARR Affinity的粘性会话。 将会话数据放在中心位置。为此,您可以使用Azure Redis缓存或SQL数据库。有这些现成的会话状态提供程序,您只需插入ASP.NET应用程序即可。这样,您的会话状态就不会存储在实例中,因此您不必关心客户端是否访问同一服务器。

我对ARR Affinity的问题是,Azure不保证您的实例将继续运行。硬件故障可能会导致故障,并且会丢失部分会话数据。如果你使用自动缩放,同样的事情。