工作进程是否在 AppPool 中共享其输出缓存?

2023-12-13

Summary:

我在 IIS 中有一个名为“网站”的 ASP.NET MVC 网站,使用名为“WebsiteAppPool”的应用程序池。 WebsiteAppPool 配置为允许最多 4 个工作进程,实际上创建了一个“网络花园”。该网站还通过 web.config 配置为使用 CacheProfiles 启用输出缓存。

<caching>
  <outputCacheSettings>
    <outputCacheProfiles>
      <clear />
      <add name="ControllerNameActionName" duration="43200" varyByParam="*" />
    </outputCacheProfiles>
  </outputCacheSettings>
</caching>

我的问题是 -

AppPool 的工作进程会共享输出缓存,还是每个工作进程都拥有输出缓存,从而在 AppPool 中创建 4 个缓存副本。

Note:

我主要担心的是,这会揭穿缓存输出的好处,而且我最好让一个 WorkerProcess 提供缓存输出,而不是 4 个。


From MSDN:

由于网络园支持使用多个进程,因此每个进程都将拥有自己的应用程序状态副本、进程内会话状态、缓存和静态数据。网络花园不应该用于所有应用程序,特别是当它们需要维护状态时。在决定网络花园模式是否合适之前,请务必对应用程序的性能进行基准测试。

使用网络园时,了解会话状态和循环的工作原理非常重要。考虑其他应用程序池设置如何影响应用程序也很重要

如果您正在执行进程内会话状态(无论如何您希望不是这样),网络花园尤其棘手。根据我的经验,我发现网络花园是rarely人们认为自己的好处。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

工作进程是否在 AppPool 中共享其输出缓存? 的相关文章

随机推荐

  • Java中的逻辑运算符优先级

    我对此并不满意 http docs oracle com javase specs jls se7 html jls 15 html jls 15 22 它明确规定了以下内容 如果操作数表达式没有副作用 则每个运算符都是可交换的 and 这
  • VB.net Excel.worksheet().cells().Value

    尝试在 Excel 工作表中写入信息 但有一些奇怪的问题 我在谷歌上查看了信息 但没有结果 所以请帮忙 我添加引用Microsoft excel 14 0对象库 并导入 Microsoft Office interop 我需要从特定单元格获
  • 我可以使用哪些方法通过 Spotify 应用程序进行地理定位?

    Spotify Apps API 不允许 HTML5 地理定位 显然记录的 Location api 调用不起作用 正在从文档中删除 我可以使用哪些方法来对用户进行地理定位 查找网站访问者地理位置的解决方案及其建议http freegeoi
  • 变换后的宽度/高度

    应用后如何检索宽度和高度属性transform rotate 45deg 比如 旋转后 11x11 的正方形变成 17x17 Chrome 结果 但 javascript 仍然返回原始宽度 高度 10x10 我如何获得这个 17x17 您可
  • Powershell Golf:下一个工作日

    如何使用 powershell 查找下一个工作日 好吧 我的手机允许我设置哪些日子是工作日 但 Windows NET 不允许 所以我假设是周一到周五 注意 由于问题包括 高尔夫 我正在打高尔夫球 即尝试为脚本使用尽可能少的字节 结果代码不
  • lapply 适用于数组还是单个元素?

    我对 lapply 是否适用于列表或向量有点困惑 请参阅下面的两个示例 这里 均值函数应用于数字数组 即 1 到 5 x list a 1 5 b rnorm 10 x a 1 1 2 3 4 5 b 1 0 57544290 0 5103
  • C 从管道块读取直到子进程终止

    父进程创建 N 个子进程 每个子进程都用 exec 替换自己 父进程和 exec 之间通过一系列管道进行通信 int pipelinefd N 2 The exec使用以下命令写入管道 char msg 50 sprintf msg tse
  • 让 Google Play Services 4.0.30 与 Android Studio 0.4.2 和 Gradle 0.7 配合使用

    使用 Android Studio 让 Google Play Services 运行的解决方案似乎并不缺乏 我已经尝试过其中的大多数 经过多次试验和多次错误后 我得出的结论是 为了使这些解决方案中的许多解决方案发挥作用 您必须像这些解决方
  • Python igraph:获取有向图中所有可能的路径

    我正在使用 igraph Python 希望获取有向图中两个节点之间的所有可能路径 我知道这个功能get all shortest paths 这是最短路径 但找不到通用路径 Update 我的主要目标是获取这些路径中的所有节点 以便我可以
  • Java 集的“包含任何”之类的东西?

    我有两套相同类型的 A 和 B 我必须查找 A 是否包含集合 B 中的任何元素 在不迭代集合的情况下做到这一点的最佳方法是什么 Set 库有contains object and containsAll collection 但不是cont
  • 将sequelize cli 与typescript 结合使用

    我正在尝试将sequelize 与typescript 一起使用 但不知道如何操作 我安装了一个名为sequelize cli typescript 的软件包 但它不适用于sequelize v6 我知道最好使用迁移来执行我的数据库 我怎样
  • 如何使用 JAXB 自定义 XML 导出

    出于测试目的 我使用 JAXB 从对象生成 XML 这工作正常 代码如下 package com mns mnsutilities jaxb model import java util List import javax xml bind
  • GIT - 合并后分支未关闭

    我们对使用 GIT 还很缺乏经验 实际上我们喜欢分支的想法 但不知何故 来自一个用户的所有合并都不会关闭分支 您可以在此处查看图片 http i54 tinypic com 297i14 png 有一条灰色和蓝色的线直接向前 即使在合并之后
  • 如何让用户在 MSChart 上创建注释?

    如何在运行中创建注释以及如何启用最终用户放置Annotation BeginPlacement 我尝试以多种方式做到这一点 但无法使其发挥作用 在调用 BeginPlacement 后 它应该实时呈现自身 关于这个主题的文档几乎没有 而且大
  • 将 Angular 2(快速入门应用)部署到 Google Cloud 平台

    我试图在 Google Cloud 平台上部署最简单的项目 可以找到快速启动项目here 在本地它可以正常工作 然而 让它在 Google Cloud 上运行变得更加复杂 我知道有很多其他提供商 例如 Heroku 可以一键部署 但我发现奇
  • 如何在 HIVE 中将日期 2017-sep-12 转换为 2017-09-12

    我在转换配置单元中的日期时遇到一个问题 我需要将 2017 sep 12 转换为 2017 09 12 我怎样才能在 HIVE 中实现这一目标 Use unix timestamp string date string pattern 将给
  • vb6 将静态整数初始化为什么?

    Static i as integer 什么会i在我赋值之前 它似乎只是零 0 但我想确认这一点 当程序启动时 所有 VB 数据类型的变量都会收到各自的默认值 这包括将所有数字初始化为零 并将所有其他数据类型初始化为零 vbNullStri
  • 使用 c 求数组的平均值 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 目前不接受答案 我是 C 编码新手 我试图获取数组的平均值 但由于某种原因它没有计算 它给我的结果是 0 0 我怎样才能解决这个问题 谢谢 include
  • 如何在git中维护一组分支的浅克隆

    我想维护几个分支的浅 镜像 裸克隆 我将从本地克隆不同的项目分支 例如 repo1 server1 original repo git branches A B C D E repo2 server2 shallow bare select
  • 工作进程是否在 AppPool 中共享其输出缓存?

    Summary 我在 IIS 中有一个名为 网站 的 ASP NET MVC 网站 使用名为 WebsiteAppPool 的应用程序池 WebsiteAppPool 配置为允许最多 4 个工作进程 实际上创建了一个 网络花园 该网站还通过