|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
java主要分三块,j2se:java的基础核心语言。j2me:java的微型模块,专门针对内存小,没有持续电源等小型设备。j2ee:java的企业模块,专门针对企业数据库服务器的连接维护。Space4J是一个复杂的数据库体系,它使你能够在内存中与Java汇合协同事情。因为内存对数据的随机会见速率要比磁盘快几个数目级,以是Space4J为功能关头的“及时”Web使用和体系供应了更好的可伸缩性。
经由过程利用Space4J,假如想从数据库表中掏出一个User,开辟者就无需实行SQLSELECT语句了,而只需会见一个usersmap(java.util.Map),然后挪用users.get(id)。由于一切的数据都保留在JVM所办理的内存中,以是就无需分外的数据库使用、socket毗连、JDBC驱动、SQL语句大概任何ORM工具等。数据就在那儿,在对象中,在Javamaps中。假如你想修正数据,那末你必要创立一个Command对象,然后将其序列化并保留到磁盘上的一个日记文件中。当重启时,前次的commands就会从日记文件中被读取出去并被再次利用,然后天生与体系溃散前一样的数据集。
使用会不时地将一切数据的快照存储到磁盘上以避免日记文件变得过年夜。Space4J将一切数据都保留在Space对象中。当举行快照时,全部Space对象会被序列化并存储到磁盘上。因而当重启时,只要前次快照后的commands而不是全体必要从头使用。快照的巨细取决于使用。除非利用了Space4J集群,不然体系必需进进只读形式才干将快照保留到磁盘上。这方面的一个例子就是处于负载均衡下的Web使用,这时候每一个Web服务器都必要有一个Space4J节点。
与Space4J一同公布的另有一个完美的索引框架,该框架撑持4种分歧的索引范例从而便利以多种体例来搜刮数据。它也可用在一般的数据库中以举行离线处置、数据堆栈、报表等等。
Space4J利用了Java1.6的并发数据布局来处置对数据的并发读/写会见,因而写只会堵塞写、而读则不会堵塞其他操纵,也不会被其他操纵堵塞。这意味着一次只能举行一个修正操纵,但读操纵就能够并发实行而不会抛出ConcurrentModification非常!
你能够下载最新版(0.9.1)大概检察源代码堆栈。
假如你想进一步懂得关于将数据会见从磁盘转换到内存中,以失掉更好的功能及其他数据会见的话题,请浏览InfoQ上StevenRobbins所写的文章——“RAM是新的硬盘”。
检察英文原文:JavaIn-MemoryPersistencewithSpace4J
来自:http://www.infoq.com/cn/news/2008/10/space4j
你希望java的IDE整合。这个是没有必要的,重要的是你理解java有多深以及怎么组织你的代码,即使没有IDE,代码照样能够编译运行的。 |
|