Apache Ignite高性能分布式網(wǎng)格框架-初探
Apache Ignite初步認(rèn)識(shí)
今年4月開(kāi)始倒騰openfire,過(guò)程中經(jīng)歷了許多,更學(xué)到了許多。特別是在集群方面有了很多的認(rèn)識(shí),真正開(kāi)始認(rèn)識(shí)到集群的概念及應(yīng)用方法。
在openfire中使用的集群解決方案是代理+分布式內(nèi)存。所謂代理便是通過(guò)一個(gè)入口轉(zhuǎn)發(fā)請(qǐng)求到多個(gè)服務(wù)實(shí)例。而分布式內(nèi)存就是解決服務(wù)實(shí)例間數(shù)據(jù)共享問(wèn)題。通過(guò)這兩步就可以搭建出一套水平擴(kuò)展的集群系統(tǒng)。
openfire使用的分布式內(nèi)存計(jì)算框架是hazelcast,并不了解它,大概只知道它是分布式網(wǎng)格內(nèi)存計(jì)算框架。聽(tīng)許多openfire開(kāi)發(fā)者都吐槽hazelcast有許多問(wèn)題,集群效果上不太好,也因此意外間的發(fā)現(xiàn)了Ignite。
Ignite是apache基金的一個(gè)開(kāi)源項(xiàng)目,功能與hazelcast非常類(lèi)似:
Apache Ignite內(nèi)存數(shù)據(jù)組織是高性能的、集成化的以及分布式的內(nèi)存平臺(tái),他可以實(shí)時(shí)地在大數(shù)據(jù)集中執(zhí)行事務(wù)和計(jì)算,和傳統(tǒng)的基于磁盤(pán)或者閃存的技術(shù)相比,性能有數(shù)量級(jí)的提升。
特性:
可以將Ignite視為一個(gè)獨(dú)立的、易于集成的內(nèi)存組件的集合,目的是改進(jìn)應(yīng)用程序的性能和可擴(kuò)展性,部分組件包括:
- 高級(jí)的集群化
- 數(shù)據(jù)網(wǎng)格(JCache)
- 流計(jì)算和CEP
- 計(jì)算網(wǎng)格
- 服務(wù)網(wǎng)格
- Ignite文件系統(tǒng)
- 分布式數(shù)據(jù)結(jié)構(gòu)
- 分布式消息
- 分布式事件
- Hadoop加速器
- Spark共享RDD
已經(jīng)有國(guó)內(nèi)的大神做了翻譯,可以看看這個(gè)鏈接:https://www.zybuluo.com/liyuj/note/481591
這里面有Ignite的手冊(cè),介紹的還是比較清楚的。
啟動(dòng)一個(gè)Ignite吧
只要少量的代碼我們就可以將Ignite應(yīng)用到自己的系統(tǒng)中,比如我需要做一個(gè)緩存。
-
在工程中通過(guò)Maven引入
Ignte的最小引入包就是一個(gè)ignite-core.jar包依賴(lài)
<dependency> <groupId>org.apache.ignitegroupId> <artifactId>ignite-core