我读过关于各种跨机器缓存机制(Redis,Velocity,nMemCached等)。他们似乎都需要一台中央机器来管理缓存。自行安装内存缓存 - 它存在吗?
是否有自我安装的缓存引擎 - 例如,如果缓存在当前子网中不存在,它将创建一个节点。如果它确实存在,它会将机器加入到缓存池中?
上下文:我有一个应用程序,通过ClickOnce在同一子网内部署约100名用户。这些用户中的每一个都通过广域网(跨越国家,在某些情况下跨越整个海洋)访问资源,这些资源执行CPU密集型计算并需要大量时间才能完成。
因此,应用感觉呆滞。我已经尽我所能通过将长时间查询放到单独的线程中来缓解这种情况。但那只是你到目前为止。我已经添加了本地缓存(通过SQL Compact DB),这很好用,但是大多数用户访问类似的信息并且一起对计算服务器施加一点压力。如果我能够通过我的应用程序发布内存中的缓存,并且能够与其他机器一起工作以创建全网络缓存机制,我认为我可以将其提升到下一个级别。
机器会不知道彼此必须知道吗?我认为这就是中央机器进来的地方。 – mellamokb 2011-05-13 16:46:24
UDP广播应该可以在子网内进行。 – CodesInChaos 2011-05-13 16:48:06
@CodeInChaos - 正确的,这是我的想法。 – AngryHacker 2011-05-13 17:02:12