低延迟、高可用性的java分布式缓存

标签 java caching dht trading

我从未使用过分布式缓存/DHT,如 memcached、jboss 缓存、ehcache 等。我想知道哪个(如果有的话)适合我使用。

首先,我不做 Web 应用程序(因为这些项目中的大多数似乎都面向 Web 应用程序)。我为金融交易公司编写服务器(实际上是订单管理系统)。服务器本身并不太复杂。他们需要接收信息(市场数据、订单、执行等),然后将其发送到目的地,同时可能会转换其中的一些消息。

我正在寻找这些产品来解决以下问题:

  • 服务器状态的安全存储库。我宁愿将我的应用程序的逻辑构建为一堆转换器(类似于 Apache Camel)并将状态存储在“安全”的地方

  • 这个存储库应该是分布式的:万一这些数据存储中的一个崩溃了,应该再增加一两个,我应该能够无缝切换到它们

  • 这个存储库应该。单位毫秒计算在这里,换句话说,消费/处理这些数据的系统是自动化系统,而不是人类点击链接。该系统需要具有高吞吐量低延迟。通过将数据发送到进程之外,我必然会降低性能,但我正在尝试平衡绝对原始速度和数据的绝对保护。

  • 这个存储库应该是安全的。类似于多次在线备份的观点,这个系统需要将数据写入磁盘(可能不止一个磁盘)。

我真的很想停止编写自己的“事务服务器”。我在研究诸如 jboss 缓存、ehcache 等项目是否正确?

谢谢

最佳答案

Hazelcast是用于 Java 的开源、事务性、分布式缓存解决方案。非常适合金融应用。它是在 Apache 许可下发布的。

Hazelcast 实际上不仅仅是一个分布式缓存;它是Java的队列、主题、映射、多映射、锁、执行器服务的分布式实现。

关于低延迟、高可用性的java分布式缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/649398/

相关文章:

java - 如何创建一组字符串,其中每个字符串有 1000 个要在 Oracle 查询表达式中使用的客户 ID

python - 哪种 Python 2.x DHT 实现最容易移植到 Python 3.x?

networking - 如何连接到DHT引导节点?

java - 使用java读取文本文件,eclipse开普勒

java - 在随机时间段使用 Java Google App Engine Standard 的内存缓存中出现服务错误

java - 如何使用 Hibernate 连接 SQL Server 2000?

routing - 在 torrent kademlia 路由表上实现查找节点

java - 企业 Web 应用程序中的缓存

c# - 使用 OWIN 静态文件时配置客户端缓存

android - 缓存目录不存在