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