1

我对整个网络编程的东西相当陌生,并且有以下问题:

我有 2 个 webapps,一个是轴 web 服务,另一个是 spring 应用程序。两者都应该从包含内存中数据的库中获取一组数据。该数据很大,因此无法为每个应用复制数据。

到目前为止,我所做的是开发在静态容器中加载和包含数据的库。计划是,两个应用程序都将包含容器的类实例化并可以访问数据。

可悲的是,这不起作用。我得到一个例外,我想使用的对象在不同的​​类加载器中。

我的问题是:如何为 tomcat 7 中的两个库提供这样的容器提供程序?

顺便说一句:数据库是没有选择的,因为它很慢。

编辑:我应该清楚数据。数据是存储在主题地图引擎中的主题地图。(见http://www.isotopicmaps.org)。引擎用于访问数据,因此是数据的访问点。我们有一个自己的引擎,它将数据保存在内存中,比数据库后端更快。

我想要一个 servlet,它提供主题图的配置和加载,然后上面的两个 servlet 应该能够读取和修改主题图。这就是为什么我需要一种对引擎的共享访问点。

4

2 回答 2

1

这就是分布式缓存、键值存储、文档存储和 noSql 数据库的构建目的。每天都有很多选择和新的选择。免费和开源选项可能会满足您的需求,并为您提供所需的尽可能多的支持。目前我最喜欢的是membase

于 2010-11-16T17:49:43.103 回答
1

So you want a distributed in-memory cache for a server cluster. You can use among others Terracotta for this. You can find here a nice introduction to Terracotta.


Update: I actually disagree the argument that a database is "too slow". If it's slow, then the datamodel and/or data access code is simply badly designed.

于 2010-11-16T17:43:17.600 回答