hazelcast入门教程_Hazelcast入门指南第6部分
hazelcast入门教程
这是有关Hazelcast的一系列文章中的第六篇。 如果一个人没有看过过去的五年,请到表中的内容后 ,我创建赶上。
本地客户
在上一篇文章之后,我决定要去本地化。 是的,我将演示Hazelcast自己的Java客户端。 Java不是唯一的本地客户端语言,C ++和C#风格可用于企业版。
为什么要本地化?
这是一个好问题。 本地客户可以将其固定在一条产品线中,而不必逃脱。 Hazelcast通过以下方式奖励本地人:
- 客户端是集群的一部分。 这意味着人们可以创建存储数据的场所,并监听集群中发生的事件。 这也意味着我之前的文章中讨论的所有技巧都可以用作客户端。 此优势不可低估。
- 配置文件类似。 这意味着不必从Hazelcast配置文件转换为客户端配置文件。 一个人可以复制文件,就像魔术一样起作用。 翻译要做的越少,丢失的内容就越少。
任何客户的经验法则
Hazelcast客户是我有幸设置和使用的最简单的客户端。
例
这个简单的示例是上一篇文章开始的主题的延续,缓存了昂贵的操作。
Pom文件
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.darylmathison</groupId><artifactId>HazelcastJavaClient</artifactId><version>1.0-SNAPSHOT</version><packaging>jar</packaging><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.7</maven.compiler.source><maven.compiler.target>1.7</maven.compiler.target></properties><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>2.3.2</version><configuration><showDeprecation>true</showDeprecation></configuration></plugin><plugin><groupId>org.codehaus.mojo</groupId><artifactId>exec-maven-plugin</artifactId><version>1.3.2</version><executions><execution><goals><goal>java</goal></goals></execution></executions><configuration><mainClass>com.darylmathison.hazelcastjavaclient.Main</mainClass></configuration></plugin></plugins></build><dependencies><dependency><groupId>com.hazelcast</groupId><artifactId>hazelcast-client</artifactId><version>3.3.2</version></dependency></dependencies></project>
客户
该客户端成为集群的一部分,创建一个名为“ fibmap”的IMap。 如果以前没有计算过斐波那契结果,则将其存储在地图中。 如果运行一次客户端,则结果存储在fibmap中。 第二次运行客户端时,将显示缓存的值。
package com.darylmathison.hazelcastjavaclient;import com.hazelcast.client.HazelcastClient;
import com.hazelcast.core.HazelcastInstance;
import java.util.Map;/**** @author Daryl*/
public class Main {/*** @param args the command line arguments*/public static void main(String[] args) {HazelcastInstance instance = HazelcastClient.newHazelcastClient();Map<Long, Long> cacheMap = instance.getMap("fibmap");for(long i = 1; i <= 10L; i++) {System.out.println("value is " + fibonacci(i, cacheMap));}instance.shutdown();}private static long fibonacci(long rounds, Map<Long, Long> cacheMap) {Long cached = cacheMap.get(rounds);if(cached != null) {System.out.print("cached ");return cached;}long[] lastTwo = new long[] {1, 1};for(int i = 0; i < rounds; i++) {long last = lastTwo[1];lastTwo[1] = lastTwo[0] + lastTwo[1];lastTwo[0] = last;}cacheMap.put(rounds, lastTwo[1]);return lastTwo[1];}}
结论
在本文中,我讨论了使用Hazelcast的本机Java客户端的原因。 我还展示了一个简单的示例。 该代码可以在这里找到。
参考
当涉及到《 Hazelcast入门指南》时。 我一直在浏览www.hazelcast.com和www.hazelcast.org 。
翻译自: https://www.javacodegeeks.com/2015/02/beginners-guide-hazelcast-part-6.html
hazelcast入门教程
hazelcast入门教程_Hazelcast入门指南第6部分相关推荐
- hazelcast入门教程_Hazelcast入门指南第4部分
hazelcast入门教程 这是我的Hazelcast系列的第四部分. 如果一个人没有看到其他三个人,我建议一个人去看第1 部分 , 第2 部分和第3部分 . 记录中 日志记录是任何应用程序的重要功能 ...
- hazelcast入门教程_Hazelcast入门指南第3部分
hazelcast入门教程 这是从初学者的角度来看一系列有关如何使用Hazelcast的文章的延续. 如果您还没有阅读最后两个,我鼓励阅读它们: Hazelcast入门指南第1部分 Hazelcast ...
- hazelcast入门教程_Hazelcast入门指南第7部分
hazelcast入门教程 这是解释如何使用Hazelcast的系列文章的续篇. 如果一个人没有阅读其他六个帖子,请转到目录并阅读其他帖子. 不同的地图种类 Hazelcast的MultiMap打破了 ...
- hazelcast入门教程_Hazelcast入门指南第5部分
hazelcast入门教程 这是我撰写的有关Hazelcast的一系列文章的延续. 我强烈建议您阅读其他内容: 第1 部分 , 第2 部分 , 第3 部分和第4部分 . 一气呵成的东西 这篇文章中没有 ...
- hazelcast入门教程_Hazelcast入门指南第2部分
hazelcast入门教程 本文是我开始使用Hazelcast (分布式内存数据库)的系列文章的继续. 如果尚未阅读第一篇文章,请单击此处 . 分布式馆藏 Hazelcast具有许多可用于存储数据的分 ...
- hazelcast入门教程_Hazelcast入门
hazelcast入门教程 7月,我写了一个博客向Java开发人员介绍erlang,重点介绍了这两种语言之间的一些异同. erlang虚拟机具有许多令人印象深刻的内置功能,其中之一是它们独立于位置且可 ...
- 基金投资入门教程-----基金入门
基金投资入门教程-----基金入门 基金投资入门教程-----基金入门 1.基金入门 什么是基金 基金的三大优势 基金的风险 基金投资入门教程-----基金入门 1.基金入门 什么是基金 基金的三大优 ...
- 计算机linux入门教程,Turbolinux入门教程1
原标题:Turbolinux入门教程1 第一课:什么是Linux 简单地说, Linux 是一套免费使用和自由传播的类 Unix 操作系统,它主要用于基于 Intel x86 系列 CPU 的计算机上 ...
- python入门教程pdf-Python入门教程详解.pdf
您所在位置:网站首页 > 海量文档  > 计算机 > Python Python入门教程详解.pdf132页 本文档一 ...
最新文章
- python 实现延迟的操作
- Oracle10g OEM乱码解决
- C语言实验——打印金字塔_JAVA
- 你一定不知道的 Linux 使用技巧
- 职工考勤管理信息系统数据库课设_数据库课程设计--职工考勤管理信息系统
- Matlab线性/非线性规划优化算法(7)
- 【回归预测】基于matlab麻雀算法SSA优化混合核极限学习机KELM回归预测【含Matlab源码 1646期】
- Scala学习数组/映射/元组
- kali linux下的嗅探工具介绍
- 2021布吉高级中学高考成绩查询,2021北京市地区高考成绩排名查询,北京市高考各高中成绩喜报榜单...
- 【Love2d从青铜到王者】第十五篇:Love2d之角度和距离(Angles and distance)
- Mac实现ts文件转为mp4文件
- 广告条幅制作html,一种广告设计用的条幅收卷装置的制作方法
- word文档怎么在左侧显示目录?
- Java学习笔记<2.3>面向对象
- python 两幅图片融合成一张图片
- re正则表达式必备基础知识
- 【软件测试】翻了下招聘APP只会点点点,很慌......测试业务?技术?
- 应用层协议的设计与实现
- java 时区 edt_JAVA TimeZone发行EDT对EST
热门文章
- nssl1437-逮虾户【二分答案】
- hdu5115-Dire Wolf【区间dp】
- P2522-[HAOI2011]Problem b【莫比乌斯反演】
- Normal Data Structure Tricks
- codeforces1485 F. Copy or Prefix Sum(dp)
- 【DP】小明游天界(zjoj 2149)
- 操作系统复习笔记 07 Process Synchronization 进程同步
- codeforces 877F F. Ann and Books hash+莫队算法
- 读上瘾-让用户养成习惯
- JavaScript Function.arguments 属性详解