如何在工作进程 asp.net 的所有实例之间共享变量

本文关键字:实例 之间 共享变量 net 工作 进程 asp | 更新日期: 2023-09-27 18:37:25

>我不得不将预构建的asp网站从单个工作进程环境移动到云服务器上的多个工作进程环境。我有一个带有静态arraylist变量的类,该变量用于包含所有会话信息的最后2分钟以进行跟踪。管理员使用访问此数组列表以查看实时报告。但是,在将其迁移到云基础架构时,这已经分解了结果,不再正确。这取决于负载均衡器后面的服务器为页面提供服务,因此每个应用程序池有多个静态变量实例。我试图迁移到mysql,但我们需要定期刷新数据,而且它也存在性能问题。在这里,数组列表被大量处理以产生有用的数据,因此我需要内存中的东西。

请注意,以前使用不带锁的静态变量也是缺点,但这只会导致 1 或 2 条记录之间的差异,但速度非常快。

如何在工作进程 asp.net 的所有实例之间共享变量

您可以考虑通过基于 SQL 服务器的会话存储来支持会话。或者,您可以使用应用程序缓存服务器来支持它。这将允许您在多个Web服务器之间共享它。