代码之家  ›  专栏  ›  技术社区  ›  Rob Levine

能否将IIS7配置为在应用程序池启动/回收时自动启动Windows进程激活服务(WAS)应用程序?

  •  5
  • Rob Levine  · 技术社区  · 15 年前

    iis7.5引入了自动启动提供程序的概念,它允许您在应用程序池启动时自动加载应用程序或程序集。

    IIS7能否实现类似的功能?

    基本上,我们有一个在WAS下运行的应用程序,它有一个内存中的数据缓存。当应用程序池回收发生时,我的WAS部署的应用程序实际上不会被激活,直到收到它的第一个命中。这意味着当接收到第一次命中时,缓存是冷的。一旦应用程序池被回收,就可以预先启动应用程序。

    我们考虑的其他选项包括:

    • 将应用程序部署为Windows服务,这样它就不会重新循环(这会起作用,但除了此问题之外,IIS/WAS的应用程序生命周期管理是一件有用的事情)

    然而,最好的办法是让IIS7/为我们这样做。

    2 回复  |  直到 8 年前
        1
  •  4
  •   Michel van Engelen    15 年前

    在Windows2008中,您可以记录应用程序池上发生的事件,因此可以记录回收事件。 您可以将事件查看器配置为在记录指定消息后启动程序。您可以调用您的服务或加载该程序中的程序集。

    这对你来说是可行的解决方案吗?

    当做,

        2
  •  1
  •   Emmanuel    15 年前

    在应用程序池的高级设置中,将应用程序池设置为每次回收时生成回收事件日志条目;我认为这个选项是“特定时间”。然后,您可以使用Windows任务调度器,创建一个脚本或一些您希望它运行的东西,它将击中您的网站,以便它可以初始化。将任务的触发器设置为偶数,将要触发任务的事件筛选器设置为偶数。

    推荐文章