我有一个架构问题 - 与我的基于RavendB的设置有关。

我有以下内容:

RAVENDB-> WCF服务 - >(Web/iPhone/Android)

Web/iPhone/Android级别实际上(目前 - 这正在增长)与7个WCF服务的连接

目前,7个服务与同一ravendb进行了交谈 - 这很可能会在未来的重构闪电战中进行细分,因为它们不需要在同一实例上 - 如果没有的话,模型的交叉都很少。

我的问题是:

我正在考虑使用Memcached-在哪些方面(我几乎没有经验设置)我可以 /应该使用Memcached吗?

在Ravendb和WCF之间?在WCF和(Web/iPhone/Android)之间?

之间?

我可能会遇到过时的数据问题吗?这是照顾的还是我过度简化了事情?

有帮助吗?

解决方案

正如许多人会告诉您的那样:过早的优化是所有邪恶的根源(他们都在引用唐纳德·诺斯(Donald Knuth)的话)。因此,等待在做任何事情之前遇到性能问题时(您不需要等待系统压碎。等到您看到90%的资源利用率)

话虽这么说,当您期望在缓存数据无效之前使用后,您应该使用Memcached(或任何类型的缓存)时(改进因素将在许多其他因素上发生变化:操作成本和频率在数据访问)

要回答您的“位置”问题,这些问题实际上取决于您将在哪里节省资源,并且它确实是专门针对应用程序的,并且无法在此处回答。

其他提示

作为另一个指针,RavendB REST接口使用ETAG来支持基于HTTP的酸酸能力。如果您的HTTP客户端使用这些机制很好地发挥作用,您将获得一些不错的缓存。

我不确定WCF堆栈的玩法如何

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top