日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Apache Ignite变得简单:第一个Java应用程序

發布時間:2023/12/3 java 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Apache Ignite变得简单:第一个Java应用程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在本文中,我們將更進一步,讓您完成第一個Ignite應用程序的創建,以從分布式緩存中進行讀寫操作。 作為第一個示例,我們將盡可能簡單地向您展示如何用Java編寫用于處理Apache Ignite集群數據的應用程序。

可從GitHub存儲庫(第二章)中獲得本節中顯示的應用程序。 您可以從GitHub克隆或下載項目,使用Maven編譯應用程序并在工作站中運行它。 但是,如果您想手動輸入程序,則可以隨意輸入。 在這種情況下,您必須使用文本編輯器而不是文字處理器將程序輸入到計算機中。

您遵循以下三個步驟:

1.啟動您的Ignite節點。
2.創建一個mvn項目或輸入程序。
3.編譯程序。 4.運行程序。 步驟1 。 如果尚未啟動Apache Ignite單節點集群,請啟動它。 在您喜歡的終端中使用以下命令。

$ IGNITE_HOME/bin/ignite.sh

第二步 。
使用以下命令創建一個maven項目。 如果從GitHub下載項目,請跳過此步驟。

mvn archetype:generate -DartifactId=chapter-two -DgroupId=com.blu.imdg -DarchetypeArtifac\ tId=maven-archetype-quickstart -DinteractiveMode=false

上面的命令將創建一個目錄,該目錄具有與artifactId相同的名稱。 切換到第二章目錄。 在此目錄下,您將找到以下標準項目結構。

src / main / java目錄包含項目源代碼,src / test / java目錄包含測試源,而pom.xml是項目的項目對象模型或POM。 pom.xml文件是Maven中項目配置的核心。 它是一個配置文件,其中包含編譯和運行Java程序的所有必需信息。 pom.file可能很復雜,但是沒有必要了解所有復雜性才能有效地使用它。

第三步 。
將以下Ignite Maven依賴項添加到pom.xml文件中。

<dependency> <groupId>org.apache.ignite</groupId> <artifactId>ignite-core</artifactId> <version>${ignite.version}</version> </dependency>

另外,將項目屬性部分添加到pom.xml文件中,如下所示。

<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <ignite.version>2.4.0</ignite.version> </properties>

您可以使用Maven從命令行運行該應用程序。 另外,您可以構建一個包含所有必需的依賴項,類和資源的單個可執行JAR文件,然后運行該應用程序。 這使得在整個開發生命周期中,跨不同環境等等的情況下,可以輕松地將服務作為應用程序進行發布,版本控制和部署。 在pom.xml的plugin部分中再添加兩個插件,以創建一個
胖的可執行jar,用于有效運行應用程序。

<build> <plugins> <plugin> <groupId>com.jolira</groupId> <artifactId>onejar-maven-plugin</artifactId> <version>1.4.4</version> <executions> <execution> <id>build-query</id> <configuration> <mainClass>com.blu.imdg.HelloIgnite</mainClass> <attachToBuild>true</attachToBuild> <classifier>onejar</classifier> <filename>HelloIgnite-runnable.jar</filename> </configuration> <goals> <goal>one-jar</goal> </goals> </execution> </executions> </plugin> </plugins> </build>

第四步。
在src / main / java / com / blu / imdg目錄中,您可以添加所需的任何Java類。

為了與本指南的其余部分保持一致,請創建以下Java類:這些目錄中的HelloIgnite。

package com.blu.imdg; public class HelloIgnite { }

步驟5 。
在package語句之后添加以下所有庫。

import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCache; import org.apache.ignite.Ignition; import org.apache.ignite.configuration.IgniteConfiguration; import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi; import org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder

步驟6 。
現在您已經有了一個Java類,將以下代碼行復制到該類中。

public static void main(String[] args) { System.out.println("Hello Ignite"); // create a new instance of TCP Discovery SPI TcpDiscoverySpi spi = new TcpDiscoverySpi(); // create a new instance of tcp discovery multicast ip finder TcpDiscoveryMulticastIpFinder tcMp = new TcpDiscoveryMulticastIpFinder(); tcMp.setAddresses(Arrays.asList("localhost")); // change your IP address here // set the multi cast ip finder for spi spi.setIpFinder(tcMp); // create new ignite configuration IgniteConfiguration cfg = new IgniteConfiguration(); cfg.setClientMode(true); // set the discovery spi to ignite configuration cfg.setDiscoverySpi(spi); // Start ignite Ignite ignite = Ignition.start(cfg); // get or create cache IgniteCache < Integer, String > cache = ignite.getOrCreateCache("HelloWorld"); // put some cache elements for (int i = 1; i <= 100; i++) { cache.put(i, Integer.toString(i)); } // get them from the cache and write to the console for (int i = 1; i <= 100; i++) { System.out.println("Cache get:" + cache.get(i)); } // close ignite instance ignite.close(); }

對Java有一定編程經驗的人都應該熟悉該程序。 讓我們仔細檢查程序的每個部分。 它具有main()方法,程序將在該方法處開始執行。 所有Java程序都通過調用main()方法開始執行。 main()方法中的代碼的下一行輸出字符串Hello Ignite。 接下來,我們創建了一個TCP Discovery SPI實例,并在其上設置了多播IP查找程序實例。

稍后,我們為SPI設置了多播IP查找程序。 當TCP發現開始時,此查找器將發送多播請求,并在其他節點用包含其地址的消息答復此請求時等待一段時間。 然后,我們創建了一個Ignite配置實例,并將發現SPI設置為該配置。

啟動Ignite實例后,它與現有的Ignite群集一起作為客戶端加入。 接下來,我們創建了一個名稱為“ HelloWorld”的緩存,并將100個條目放入其中。 在for-each循環中,我們從緩存中讀取了這100個條目并在控制臺上打印。 最后,我們停止了Ignite客戶端實例。

現在,您已經可以使用Maven構建一個項目,下一步就是構建和運行該應用程序。

步驟7 。
要嘗試構建,請在命令行中發出以下命令。

$ mvn clean install

這將運行Maven,告訴它執行安裝目標。 此目標將編譯,測試和打包您的項目代碼,然后將其復制到本地依賴項存儲庫中。 第一次構建過程需要幾分鐘才能完成,成功編譯后,將在目標目錄中創建一個可執行jar。

步驟8 。
通過鍵入以下命令來運行應用程序。

$ java -jar .\target\HelloIgnite-runnable.jar

您應該在終端中看到很多日志。 首先,將創建一個新的Ignite客戶端實例,它將連接到群集中的隨機節點(在我們的示例中,只有一個單節點)。 在Ignite服務器節點控制臺中,您應該看到如下所示的日志:

圖1

另一方面,Apache Ignite客戶端節點控制臺按1到100打印緩存條目。

圖2

讓我們使用Ignite visor管理員控制臺檢查緩存條目。 Apache Ignite visor命令行工具為Ignite群集提供監視和管理功能。 使用以下命令對遮陽板工具進行午餐。

$ IGNITE_HOME/bin/ignitevisorcmd.sh

向visor命令工具發出以下命令。

cache -a

它將返回您的緩存“ HelloWorld”的緩存統計信息的詳細信息,如下圖所示。

圖3

您會注意到總緩存大小為100,而Offheap大小也為100。從版本2.0.1開始,默認情況下,Apache Ignite將緩存條目存儲到Offheap內存中。 在后面的章節中,我們將詳細介紹Offheap內存以及Onheap和Offheap內存之間的區別。 還要注意,為了使示例盡可能簡單,我們在此程序中未使用任何與彈簧相關的配置。

翻譯自: https://www.javacodegeeks.com/2018/10/apache-ignite-easy-java-application.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的Apache Ignite变得简单:第一个Java应用程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。