Windows Azure 云服务中的全局变量

Global variables in windows azure cloud service

本文关键字:全局变量 服务 Azure Windows      更新时间:2023-09-26

我们的应用程序有一些全局变量和隐藏字段,就像任何其他 asp.net 应用程序一样。

我们对Windows Azure云服务有疑问,因为Azure有多个实例,所以如果javascript的全局变量在代码的中间位置被分配一个值。

那么,如果由于负载平衡而导致实例偏移,该全局变量是否保持相同的值。

此外,我们将大型 html 文本保存在服务器上的指定文件夹中,并根据用户选择在一段时间后检索相同的文本。(这是一个大型PDF文档)如果实例移动,这会产生问题吗?

Windows Azure的负载平衡标准对我来说不是很清楚。如果有人能对此有所了解,我们将不胜感激。

我们倾向于创建 4 个实例。

我们的应用程序有一些全局变量和隐藏字段,就像任何 其他 asp.net 应用。

我们对Windows Azure云服务有疑问,因为 Azure 有多个实例,因此如果 JavaScript 的全局变量是 在代码中间的某处分配了一个值。

那么,如果存在 由于负载均衡而导致的实例移位。

由于 JavaScript 是一种客户端技术(至少以您使用的形式),因此您必须使用一些服务器端代码填充 JS 变量。问题是你如何存储填充服务器上JS变量的变量。如果它们存储在特定服务器中(使用静态变量或进程内会话变量),那么您肯定会遇到问题,因为它们在您的角色的其他实例上不可用。

解决此问题的一种方法是将这些变量存储在某个地方(在分布式缓存、持久存储等中),以便可以在所有实例中访问它们。如果它们不包含任何敏感信息,您也可以将它们保存在 cookie 中。

此外,我们将大型html文本保存在服务器上的指定文件夹中 并根据用户选择在一段时间后检索相同的内容。(其 一个大的PDF文档)如果实例会产生问题吗 转变。

哦,是的!这肯定会给你带来问题。建议的方法是将这些文件保存在 Blob 存储中,而不是 VM 的本地存储中。

Windows Azure的负载平衡标准不是很清楚 对我来说。如果有人能对此有所了解,我们将非常 感谢。

简而言之,Windows Azure 云服务使用Round Robin Load Balancing方案,该方案实质上要求你从会话角度让你的服务无状态。

如果您真的不需要 Windows Azure 云服务提供的所有功能,您可能需要查看 Windows Azure 网站。如果您所做的只是托管一个网站,那么Windows Azure网站可能不是一个糟糕的选择。