我有一个使用 WCF 创建的数据服务,它在内部使用 nHibernate。此 WCF 数据服务由使用 Tcp 通道部署在 Web 服务器上的 Asp.Net 应用程序使用。
为了提高 nHibernate 数据服务的性能,我想实现 nHibernate 二级缓存。在这个场景中哪个二级缓存提供者会很好?由于 SysCache 使用 Asp.net 缓存,我可能无法在 WCF 服务中使用它?
上述 WCF 数据服务可以在不同的服务器上有多个实例,以提高应用程序的可扩展性。
我有一个使用 WCF 创建的数据服务,它在内部使用 nHibernate。此 WCF 数据服务由使用 Tcp 通道部署在 Web 服务器上的 Asp.Net 应用程序使用。
为了提高 nHibernate 数据服务的性能,我想实现 nHibernate 二级缓存。在这个场景中哪个二级缓存提供者会很好?由于 SysCache 使用 Asp.net 缓存,我可能无法在 WCF 服务中使用它?
上述 WCF 数据服务可以在不同的服务器上有多个实例,以提高应用程序的可扩展性。
ASP.NET 的缓存在ASP.NET 之外工作,因此也可以在 SysCache 和 SysCache2 之外工作。
但是,由于您要将服务分发到多个服务器上,因此最好使用进程外缓存,例如memcached、Velocity或SharedCache(所有这些都有相应的 NHibernate.Cache 实现)