Infinispan相当于ehcache的copyOnRead和copyOnWrite

2023-12-04

我计划在现有的网络应用程序中实施缓存解决方案。没什么复杂的:基本上是一个支持溢出到磁盘和自动驱逐的并发映射。将来可能需要对缓存进行集群,但不是现在。

我喜欢 ehcache 的 copyOnRead 和 copyOnWrite 功能,因为这意味着我不必在修改从缓存中取出的内容之前手动克隆内容。现在我开始看无限跨度,但我还没有在那里找到任何等效的东西。它存在吗?

即,以下单元测试应该通过:

@Test
public void testCopyOnWrite() {
    Date date = new Date(0);
    cache.put(0, date);
    date.setTime(1000);
    date = cache.get(0);
    assertEquals(0, date.getTime());
}

@Test
public void testCopyOnRead() {
    Date date = new Date(0);
    cache.put(0, date);
    assertNotSame(cache.get(0), cache.get(0));
}

无限跨度does支持 copyOnRead/copyOnWrite,尽管实际格式不可插入。配置元素是惰性反序列化在 Infinispan 4.x 和存储为二进制在 Infinispan 5.x 中。对象使用可插入的 Marshaller 框架进行序列化,该框架用于所有形式的编组,包括通过网络的 RPC 调用和存储到磁盘。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Infinispan相当于ehcache的copyOnRead和copyOnWrite 的相关文章

随机推荐

  • 为什么Scala可以序列化Function但不能序列化PartialFunction?

    我有 2 个函数 其中 1 个是部分函数 在对象下定义类似 val partialFn scala PartialFunction String Int new AbstractPartialFunction String Int over
  • 访问 android.git.kernel.org 被拒绝 [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 任何人都知道为什么我可以毫无困难地访问项目http g
  • 如何让Android webview记住用户名和密码?

    这里是 Android Studio 中的代码 我还在 Android Studio 代码下方添加了 html 代码 使用 javascript 来记住 cookie 中的用户名和密码 它仅适用于某些 Android 设备 我不知道为什么
  • 添加到向量或从向量中删除后,指向向量元素的指针是否保留(在 C++ 中)

    我正在研究碰撞引擎 更具体地说 我正在尝试制作世界上相关物体的向量 为了能够访问世界上代表特定对象的主体向量中的特定主体 我需要知道哪个特定主体代表该对象 为此 当您添加新主体时 我想在主体向量中返回一个指向主体的指针 但是当我删除主体时会
  • 如何检测文件是否被包含或直接运行

    我有一个 php 文件 包含在我的 php 脚本中 但我不希望人们能够直接运行该文件 不包含在内 我怎样才能防止这种情况发生 制作包含的脚本根本无法通过 HTTP 访问 例如 通过保护子文件夹或将它们移动到文档根目录之上 如果你做不到这一点
  • PrimeFaces Extensions CKEditor:无法访问自定义配置

    我需要我的pe ckEditor加载自定义配置 但我在这件事上已经有一段时间不成功了 我将欢迎任何如何使其工作的建议 我需要它的功能 因为我有这个问题 PrimeFaces Extensions CKEditor 尝试将编码设置为 UTF
  • Silverlight 5 AccessViolationException

    我安装了 Silverlight 5 VS 2010 工具和 64 位开发人员运行时 现在当我执行特定操作时 我收到 System AccessViolationException 这些项目仍然是Silverlight 4 我还没有升级它们
  • Entrypoint的exec形式通过shell执行

    我正在构建一个基于 Windows 的 docker 镜像 FROM mcr microsoft com dotnet framework aspnet 4 8 windowsservercore ltsc2019 omitted for
  • 在标签中绑定值

    是否可以将 JavaFX 滑块中的双值绑定到标签 我想要得到这样的东西 m maxSlider new Label Right Slider Val m slider getValue1 m maxSlider textProperty b
  • Google Cloud Messaging 上的最大主题数

    我想避免在应用程序级别管理设备令牌的复杂性 一名用户在 iOS 和 Android 上使用多台设备 多个用户订阅一个应用程序组 将 1 和 2 作为 GCM 的主题显然是一个简单的解决方案 这样我只需在发送通知时处理我的应用程序 UserI
  • 文件无效:错误:转储失败,因为找不到 AndroidManifest.xml

    当我尝试在 Android 市场上传我的 Android 应用程序时 我遇到了这个问题 我去过stackoverflow 的这个问答我相信导出时我的 AndroidManifest xml 位于 apk 文件中 并且该 xml 文件的所有内
  • AJAX上传显示多个文件上传中仅文件的进度

    请帮我更改下面的代码 我有多个从 HTML 上传的文件 ajax 将所有上传的文件发布到一个 php 脚本 该脚本向进度函数发送反馈 问题是所有三个进度条只监听一个文件上传
  • 如何在 JSF 中收集 List 的提交值?

    我有一颗豆子List
  • 是否可以实现 __super 宏?

    请告诉我是否有办法手动实现微软特定的 super宏观 class Base public void func something class Derived public Base public void func Base func ju
  • 带有 Java 线性和对数滤波器的 MFCC

    我正在用Java实现MFCC算法 Java 中有三角滤波器和 MFCC 的示例代码 链接在这里 MFCC Java但是我应该遵循用 Matlab 编写的代码 MFCC MATLAB 我的问题是在 Matlab 代码中 它讨论了线性和对数滤波
  • Java 8 流是原子的吗?

    我读了一些帖子 但我仍然很困惑 我知道并行流将以利用 CPU 的并行方式执行 我相信子作业将作为原子单元执行 对吗 但是常规的 Java 8 流呢 如果我执行下一行代码 users stream map user gt user getUs
  • 在表单提交的网址中间添加问号

    当我单击表单中的提交按钮时 它会添加一个 就在 之前 因此 app pageName 更改为 app pageName 这是正常行为吗 代码只是基本的东西 angular module myApp controller MyCtrl fun
  • 如何在进入 Java 应用程序时更改光标

    我遇到了一些我无法解决的问题 我正在编写一个带有接受拖放操作的 JList 的 Swing Java 应用程序 我想在将文件或文件夹从系统拖到 Java 应用程序上时更改光标 我自己找到了 不过还是感谢克林顿的回答 这是我用过的 首先创建
  • Socket tcp C# 如何清除输入缓冲区?

    我正在为 Windows Phone 编写一个应用程序 我需要与服务器通信并传输数据 SERVER是用C 编写的 我无法修改它 客户是我必须写的 服务器被设计为客户端连接到它并传输数据 连接对于所有传输都保持打开状态 通过用 C 编写代码
  • Infinispan相当于ehcache的copyOnRead和copyOnWrite

    我计划在现有的网络应用程序中实施缓存解决方案 没什么复杂的 基本上是一个支持溢出到磁盘和自动驱逐的并发映射 将来可能需要对缓存进行集群 但不是现在 我喜欢 ehcache 的 copyOnRead 和 copyOnWrite 功能 因为这意