Isapi过滤器 - 状态

时间:2011-02-10 20:38:34

标签: c++ isapi isapi-extension

我有一个isapi文件管理器,我想添加一个基于传入域的逻辑(我的服务器场托管许多域)。 域列表是动态的,我可以将这些域列表导出到文本文件中并从isapi中读取它,但有没有办法将此文件保存在内存中(是数组或链表)以保存IO调用。 类似于全球应用状态。

1 个答案:

答案 0 :(得分:1)

您的工作进程如何在服务器中分布?您是否有一台服务器具有一个工作进程或多个服务器?

  • 如果您有一个服务器有一个工作进程,您只需将该文件读入静态数组或字符串即可对其进行管理(只需确保考虑并发线程同时读取/修改它)

  • 如果一台服务器上只有多个工作进程,则可以使用命名共享内存。我以前在ISAPI过滤器中使用它来共享信息,并且它运行良好。它甚至应该为您处理并发问题。您可以在此处阅读更多内容:http://msdn.microsoft.com/en-us/library/aa366551%28v=vs.85%29.aspx

  • 如果您分布在多个服务器上,则可以使用像memcached这样的分布式缓存。设置起来比较复杂,但它会给你带来良好的性能。这里有一个主题:C++ api for memcache