我有一个 WCF 服务,它通过 TCP/IP、HTTP 或命名管道提供标准 SOAP 接口。该服务计算和缓存一个大型、复杂的关系数据集,并通过高级服务操作向客户端提供有关它的视图。它运行良好。
我还有一个单独的自定义 OData 服务,它以更“原始”的形式提供基础数据。该服务与第一个服务共享一些管道,即加载和缓存大型、复杂的关系数据集,但在其他方面是一个独立的服务,可以与第一个服务分开托管。
我目前正在使用 Windows Process Activation Services 在 IIS 中托管标准 SOAP 服务,并且我确信我可以将 OData 服务作为一个单独的端点做同样的事情。
如果我想将它们一起托管在同一个 IIS 主机进程中,我有哪些选项可以允许这两个服务共享底层缓存数据集,以节省加载时间和内存消耗?