仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1603|回复: 19
打印 上一主题 下一主题

[学习教程] JAVA网站制作之Java数据网格标准:JSR-347仓酷云

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:29:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
net网页编程程序员的大部门代码都靠控件拖拽完成的,虽然java也有,但是无论从美观和速度上都没发和.net网页编程比。java程序员都是代码完成的,所以java程序员常戏称.net网页编程程序员是操作员,呵呵。JSR-347是数据网格标准。和JSR-107(JCache)比拟,这个JSR的使用场景生来就有争议,简单被搅浑。InfoQ有幸采访了ManikSurtani,懂得了他对JSR-347和JSR-107的意见,和他对缓存、NoSQL、数据网格、Infinispan及相干主题所持的概念。
Manik是JSR-347标准的向导者,并临时介入JBossCache和JBossInfinispan的开辟和保护,这两个项目分离是抢先、开源的Java缓存完成和数据网格完成。Infinispan数据网格项目入手下手于2009年4月,公布入手下手之前,Manik最少消费了四个月工夫往完成数据网格的原型。Infinispan遭到了JSR-347的启示,Infinispan里的良多功效特征都是JSR-347今朝所倡议的。
InfoQ:JSR-347要到达甚么方针?这些方针和JSR-107比拟有何分歧?
JSR-347也称为针对Java平台的数据网格,人人倡议JSR-347能一致API、编程模子,散布式的预期举动,另有容错的内存键值存储。它在良多方面都和JSR-107(针对Java平台的一时缓存)有所分歧:

  • 数据耐久性。JSR-347想借助它固有的散布式特征纪录存储,从而供应历久性。JSR-107则假定存储起来的数据是一时而长久的。
  • 散布式。JSR-107同意完成能够是散布的,JSR-347则请求完成必需散布。因而,尺度能够为用户供应更丰厚的API,以便用户更好天时用数据存储。好比说,只要晓得完成是散布式的时分,表露那些能把持数据在网格里存储地位的API,异步和非堵塞的API,另有那些终极撑持相容完成的API才成心义。
  • Map/Reduce和散布式的代码实行。当数据跨网格散布的时分,把代码移到数据中实行偶然候要比其他体例更成心义。JSR-347也会为这些功效供应尺度的API。
InfoQ:已签订协定往完成JSR-347的供给商有哪些?Gemfire和Coherence为何还没介入到JSR-347里呢?
到今朝为止,专家组包含RedHat、Gigaspaces和GridGain。Oracle和IBM经由过程功令审批后才会正式签订协定,不外他们都暗示有乐趣。
Manik接着说,他但愿Oracle的Coherence团队能介入到JSR-347里来,Coherence团队已暗示有乐趣了,如今正在走外部流程,然后才会正式签订协定。他还说,JSR-347团队已接洽了Gemfire,但Gemfire还没有反应。
InfoQ:JBossCache是如何演进的?JBossCache怎样演化成了Infinispan?
JBossCache是我们搭建JBoss使用服务器集群的工具包。我们用它来完成HTTP和EJB会话的集群,另有一个具有事件特征的Hibernate/JPA二级缓存。
Manik注释说,开辟职员接着把JBossCache看成具有永世存储功效的数据网格来用。因为JBossCache并非计划成数据网格的,以是才创立了Infinispan。Infinispan既能替换JBossCache作为集群工具包,也能供应加倍壮大的数据网格功效。
InfoQ:假定JBoss使用服务器的用户默许用Infinispan做会话复制,那有几JBoss用户会真正利用Infinispan一切的数据网格功效呢?假设JSR还没有针对缓存或散布式缓存的尺度接口,又有几JBoss用户会真正用Infinispan往做散布式缓存或数据网格呢?
这很难说。JBoss使用服务器和Infinispan都是开源项目,我们已明白辨别了社区所作的事变,另有他们如何和Infinispan交互。假如用户论坛和IRC上的成绩能作为根据,我看年夜部分人的成绩是怎样在JBoss使用服务上部署的Web使用或EJB里间接利用Infinispan的API。不外发问的也只要这些人。
InfoQ:甚么能界说数据网格办理计划?是查询、事件、从缓存读、写进缓存、数据分片、数据复制仍是Map/Reduce等其他内容呢?数据网格必需撑持哪些功效?
我的回覆天然有些客观,但我以为数据网格必要供应事件、读取、写进、某些情势的分片或分区,另有监听器。查询和Map/Reduce是更初级的功效,不外人人很快就会希冀数据网格能具有这两个功效,以是我们以为它们也该增加到功效列内外。
InfoQ:你怎样界说Infinispan的Map/Reduce?为何它对Java开辟职员来讲很主要?
在处置跨大批服务器的散布式数据时,Map/Reduce自己就是个很主要的观点,由于它有更高的CPU和内核使用率,同时能削减收集流量。
Infinispan的Map/Reduce在观点上和Google最后的观点十分靠近,但在完成上,我们遵守流利API、人类易读和直不雅接口的准绳,另有古代JavaAPI计划的通用最好理论。因而,和Hadoop等其他JavaMap/Reduce完成分歧,我们以为Infinispan的完成要更加直不雅、对开辟职员加倍友爱。
InfoQ:Infinispan会成为JSR-347的参考完成吗?
不会。参考完成必要Apache的允许,而Infinispan则利用了LGPL允许。
InfoQ:我发明Infinispan撑持Memcached的文本Wire协定,这是为何呢?
我们撑持Memcached的Wire协定,最后是想让非Java平台承受我们。Memcached有十分多的客户端库,几近针对一切的平台。撑持Memcached的Wire协定就意味着差未几一切体系都能利用Infinispan。
随后我们计划并完成了HotRod,用它来交换Memcached的Wire协定,编写完这个“可参考的”Java客户端后,我们就发明社区为Python和Ruby构建了HotRod客户端。
Manik接着注释说,Memcached的协定对数据网格办理计划来讲太甚复杂,由于它利用哀求/呼应体例,完整是客户端/服务器形式。相反,HotRod同意服务器毗连客户端,把后端拓扑布局的变更推送给客户端,这对弹性来讲相当主要,能够在运转时增添新的数据网格节点。HotRod今后的版本会增加事务处置,Manik说这会启示一个充斥时机的天下。只管Memcached的Wire协定针对散布式缓存,但HotRod仿佛能日新月异,成为现实上的数据网格尺度Wire协定。
InfoQ:和OracleCoherence、EnterpriseEhCache、VMWareGemfire的特征比拟,JSR-347或Infinispan的功效怎样?
方才说起的产物已撑持了为JSR-347计划的年夜部分功效。次要区分在于特定API自己。固然这其实不周全,有些产物大概不具有某些功效,好比Map/Reduce,但他们大概有能增加缺掉功效的组件。
InfoQ:JSR-347是个NoSQL办理计划标准么?响应的,Infinispan是否是NoSQL办理计划?不管是或与否,缘故原由又是甚么呢?要成为一个NoSQL标准,JSR-347还短少哪些功效?
JSR-347是个尺度。它不是个NoSQL尺度,只是个数据网格尺度。Infinispan会完成JSR-347,以是它只是个数据网格,不外Infinispan也在不休开展,会增加更多NoSQL的特征。照今朝的情形看,NoSQL和数据网格之间的差异很小;Infinispan只是进一步往减少这类差异。
Manik接着注释说,JSR-347是个成熟的NoSQL标准,并且分歧平常的是,它是存眷Java的先行者。
最年夜的区分在于平台自力性。JSR-347仍旧是个Java标准,而良多NoSQL数据库则超出了Java平台。
InfoQ:查询是JSR-347的一部分吗?
这必要专家组往决意。
InfoQ:你是如何界定命据网格、NoSQL、对象缓存的?
我以为对象缓存是把对象临时存储在内存里,检索或盘算会很费力。数据网格把这类做法深切了一步,借助其有弹性、散布式的特征,数据网格供应了必定水平的历久性。NoSQL则接纳了另外一种做法,NoSQL一般用磁盘存储作为次要的存储引擎,但供应了弹性和可伸缩性,最少在散布式NoSQL引擎的情形下是如许的。
InfoQ:对NoSQL完成来讲,最主要的特征是甚么?
在我看来,最主要的特征是可伸缩的弹性。不然的话,你还不如利用RDBMS,究竟你早熟习了它的安装和利用。
InfoQ:从计划来讲,Inifinispan和合作敌手(Coherence、EnterpriseEhCache、GemFire)有甚么区分?
我不晓得专利产物外部是怎样计划的。
InfoQ:能形貌下Inifinispan的计划理念么?
可插拔和可扩大性是关头。我们希冀人们能用Infinispan往做任何事变,而不单单成为按我们形貌的利用形式往操纵的终极用户。用户在某些情形下能够静态增加拦阻器、命令和举动。作为开源软件,代码和计划都是通明的,如许人们就很简单往扩大Infinispan。
Manik接着先容了进修Infinispan和JSR-347的一些体例。Infinispan的下一个版本5.1.0比来会公布测试版本。要看JSR-347是怎样停顿的,JSR-347的Wiki是个好去向。另有一些关于Inifinispan和CDI集成的视频,Inifinispan和CDI的集成是标准开始做的一部分。他注释说,你可使用Infinispan的Maven原型疾速入手下手一个项目,并看看JSR-347是甚么模样。
检察英文原文:JavaDataGridSpecification:JSR-347
译者王丽娟分歧处置JavaEE两头件和JavaEE企业使用的开辟,存眷软件架构手艺,有志发展为一位优异的架构师。

因为能用到多少功能就用多少,不能用就不用!总的来说:要简单要性能好,可以不用框架。你说java复杂,就是因为你把java(j2ee)与这些框架混在了一起。
沙发
发表于 2015-1-21 07:53:09 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
再见西城 该用户已被删除
板凳
发表于 2015-1-26 11:03:15 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
飘飘悠悠 该用户已被删除
地板
发表于 2015-2-4 13:49:09 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
因胸联盟 该用户已被删除
5#
发表于 2015-2-7 13:40:13 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
小女巫 该用户已被删除
6#
发表于 2015-2-22 02:49:55 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
变相怪杰 该用户已被删除
7#
发表于 2015-3-6 22:36:44 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
山那边是海 该用户已被删除
8#
发表于 2015-3-11 05:52:16 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
若相依 该用户已被删除
9#
发表于 2015-3-11 18:10:16 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
再现理想 该用户已被删除
10#
发表于 2015-3-19 06:12:28 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
莫相离 该用户已被删除
11#
发表于 2015-3-27 09:09:43 | 只看该作者
是一种为 Internet发展的计算机语言
冷月葬花魂 该用户已被删除
12#
发表于 2015-3-27 09:09:43 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
柔情似水 该用户已被删除
13#
发表于 2015-3-27 09:09:44 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
admin 该用户已被删除
14#
发表于 2015-3-30 13:43:27 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
分手快乐 该用户已被删除
15#
发表于 2015-3-31 03:24:37 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
若天明 该用户已被删除
16#
发表于 2015-3-31 04:33:38 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
老尸 该用户已被删除
17#
发表于 2015-4-18 10:34:53 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
小妖女 该用户已被删除
18#
发表于 2015-4-19 16:22:54 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
活着的死人 该用户已被删除
19#
发表于 2015-4-22 20:34:42 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
蒙在股里 该用户已被删除
20#
发表于 2015-5-1 00:11:22 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-16 01:55

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表