问题标签 [distributed-caching]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
233 浏览

.net - 同步访问存储在分布式缓存 (SharedCache) 中的密钥

在我的项目中,我使用SharedCache作为分布式缓存机制。在 webfarm 中部署了多个服务实例,这些实例可以访问这些缓存数据。缓存的数据是瞬态的,可以有更新。我想知道是否有任何方法可以在两个或多个服务之间同步对数据的访问?

举个例子,这里是一个场景,假设有 2 个服务实例正在运行。两个实例都在访问共享缓存。如果一项服务从缓存中提取一些数据进行处理,我希望另一项服务不要选择相同的信息。为此,我需要用一些状态更新缓存,说不可用。但是,当我更新状态时,可能会发生第二个服务也可能会选择相同的数据。

共享缓存文档线程安全表明数据是全局可用的并且不是线程安全的。有没有办法在不更改 SharedCache 的源代码的情况下使其线程安全?

0 投票
1 回答
47 浏览

.net - NorthscaleClient 没有一致地设置值

我正在使用NorthscaleClientEnyim Memcached客户端库将对象存储在Northscale Memcached Server中。下面的工作不一致,断言大部分时间都失败了。我做错什么了吗?

0 投票
0 回答
305 浏览

asp.net - 在服务器上缓存分布式应用程序

我有一个将分布在 2 台服务器上的 Web 应用程序,并且数据库将位于 2 台服务器之外的服务器上。所以每台服务器上的应用程序将访问另一台服务器中存在的数据库。我在应用程序中使用缓存,当数据更改时,缓存被清除,现在的问题是每台服务器对另一台服务器上的缓存更改有何感受?

我之前尝试过 SQLCache 依赖项,并且听说过 Memcached、Velocity 和 Enterprise 缓存,那么对于这种情况,哪一个更有效和最佳?我有另一种解决方案来在每个应用程序上创建 webservice 方法,当在一个应用程序中清除缓存时,它将请求另一个应用程序上的 webservice 方法清除那里的缓存。

哪种技术在性能和安全性方面更有效和最优?并且 SQLCache 依赖关系仅与 SQL 数据库相关,还是可以适用于 Oracle 等其他数据库?

注意:我正在使用负载均衡器在 2 个服务器之间分配应用程序的请求

提前致谢

0 投票
2 回答
342 浏览

asp.net - 在 ASP.NET 中缓存所有用户

我正在使用 ASP.NET/C# 开发一个 Web 应用程序,该应用程序需要可扩展以处理高用户负载(可能会在 Web 场中运行)。由于它将迎合大量用户,大约 100 万以上,但在线用户数量将在 30K-50K 左右。我打算使用缓存(基于提供程序),并且想知道:

  1. 缓存所有用户以提高性能是个好主意吗?我计划缓存所有其他通用数据,例如设置等,但是将所有用户缓存在内存中的效率如何?如果用户更改了他/她的个人资料,我将仅在缓存中重新加载该特定用户(拥有所有用户的集合)。对这种方法有什么建议吗?

  2. 使用上述用户缓存时,我是否需要担心锁定?只有一个编辑配置文件的人是用户自己,这将是一个原子操作,尽管在不同的线程中会有多个读取操作。因此,在从缓存中获取用户或更新特定用户时,我应该使用锁吗?

谢谢

阿西夫

0 投票
4 回答
1852 浏览

java - 分布式缓存技术

我对满足以下要求的开源消息传递和/或分布式缓存技术感兴趣。

  • Java Web 应用程序的多个负载平衡实例(可能在 Amazon EC2 上)
    • 实例数量可能会随着时间的推移而变化以进行扩展。
  • 当请求带有 id FOO时,该事件会在内存中缓存一段时间。
    • 缓存事件的持续时间在请求有效负载中指定,并且因请求而异。
    • 持续时间相对较短(大约几分钟)。
    • 不需要持久性。在极少数情况下发生戏剧性事件并且必须重新启动服务器,它可以忘记过去的事件。
  • 有关请求的信息需要传播到所有服务器实例
    • 信息的传播不得显着影响服务器的性能,尤其是响应延迟。它应该与请求处理异步。但是,它应该相当快并且可以扩展到大量请求。
    • 不同的服务器实例不同步是可以的。即,在某个短时间段内(大约几秒),服务器实例 2 不知道FOO发生在服务器实例 1 上,直到该信息传播给它是可以接受的。

任何想法,将不胜感激。如果任何解决方案需要特定的配置/定制来满足要求,请提及我需要做什么。

编辑我并不是要暗示当前的答案不相关,但我的问题并没有明确。请不要只指向太阳下的每个 MQ 和 JSR-107 库。只有你有理由相信的那些才能满足我的要求。

0 投票
1 回答
316 浏览

java - DDS DataReader 缓存中断并且不再可访问

在 i386 上使用 dds 库操作,尝试反复提取样本。我明确地' reading'而不是' takeing'样本,所以它们永远不会过期或被删除。

  • 启动两个黑板应用程序,(1) 和 (2)
  • 在两个应用程序中执行读取。这将返回“缓存为空”。
  • 从 (1) 写入,传感器 ID:1,事件 ID:1,值:1。
  • 从 (1) 读取,确认值
  • 从 (2) 中读取,确认值
  • 从 (2) 写入,传感器 ID:1,事件 ID:1,值:2。
  • 从 (2) 中读取,“缓存为空”
  • 从 (1) 中读取,“缓存为空”

好像我“打破”了它!我相信样本的生命周期应该是无限的(或者我已经理解......但无法确认!) - 但我无法明确设置它。topicQos.lifespan.duration是类型Duration_t,但我不能将其设置为“新Duration_t(Duration_t.DURATION_INFINITY_SEC,Duration_t.DURATION_INFINITY_NSEC)”,因为它已经完成?

0 投票
1 回答
226 浏览

language-agnostic - 不同网站缓存架构的权衡

是否有任何好的文章或博客文章来探索不同网站缓存架构的权衡?

例如,为每个网站主机使用单独的缓存与使用一致的哈希在每个网站主机之间共享缓存与使用专用缓存主机的优缺点是什么?对需要非常一致的数据使用一种模式,对大量但不一定需要一致的数据使用另一种模式呢?

行业是否已针对大多数用例确定了通用模式?

0 投票
1 回答
14533 浏览

caching - memcache、redis和ehcache作为分布式缓存框架的比较

我需要做出的决定之一是在我的系统中使用什么缓存框架。有这么多可供选择,我目前正在研究redis、ehcache和memcached。

谁能指出这三个特定框架的性能基准?还概述了它们的功能-我对缺点特别感兴趣,即。您会使用其中一种的情况。

0 投票
1 回答
1194 浏览

.net - 外部应用程序更新后刷新企业库缓存

在断断续续地搜索了几个月后,我终于决定把这个贴出来。

我们有一个使用企业库缓存项目的 ASP.NET MVC 应用程序。我们还使用 Windows 服务,该服务经常更新这些缓存项目。问题是当windows服务更新缓存项时,mvc网站是看不到更新的缓存项,直到我们重置IIS。我们曾考虑在服务中添加一些代码来重新启动 IIS 服务,但认为必须有更好的方法。似乎还有一篇关于从外部应用程序中删除项目的帖子,但还远远不够。

我们认为这与缓存管理器的每个实例的本地内存版本有关,但根本找不到将它们组合在一起的方法。

0 投票
3 回答
3357 浏览

java - Ehcache 多个 JVM - 开源?

嘿,我目前正在tomcat中使用spring运行ehcache。我有几个 web 服务器运行他们自己的 ehcache 实例,我现在想将其移动到共享/分布式缓存。在我们对它的性能感到满意并且在我们向外扩展时需要更多正式的支持之前,我还不打算使用商业许可证。

让我感到困惑的是 ehcache/teracotta 网站。所有文档似乎都适用于使用 teracotta 服务器运行 ehcache 缓存,然后我可以通过更新我的 ehcache 配置文件让我的网络服务器连接到该服务器......但是看起来这些说明是针对使用商业版本的?

我现在真的不需要集群(并且可以理解这是否是企业许可证的一部分),但我认为我可以设置一个开源分布式缓存实例?有没有人有任何链接到如何?或者只是关于如何从嵌入式实例移动到共享实例的一般说明?