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部分相关推荐

  1. hazelcast入门教程_Hazelcast入门指南第4部分

    hazelcast入门教程 这是我的Hazelcast系列的第四部分. 如果一个人没有看到其他三个人,我建议一个人去看第1 部分 , 第2 部分和第3部分 . 记录中 日志记录是任何应用程序的重要功能 ...

  2. hazelcast入门教程_Hazelcast入门指南第3部分

    hazelcast入门教程 这是从初学者的角度来看一系列有关如何使用Hazelcast的文章的延续. 如果您还没有阅读最后两个,我鼓励阅读它们: Hazelcast入门指南第1部分 Hazelcast ...

  3. hazelcast入门教程_Hazelcast入门指南第7部分

    hazelcast入门教程 这是解释如何使用Hazelcast的系列文章的续篇. 如果一个人没有阅读其他六个帖子,请转到目录并阅读其他帖子. 不同的地图种类 Hazelcast的MultiMap打破了 ...

  4. hazelcast入门教程_Hazelcast入门指南第5部分

    hazelcast入门教程 这是我撰写的有关Hazelcast的一系列文章的延续. 我强烈建议您阅读其他内容: 第1 部分 , 第2 部分 , 第3 部分和第4部分 . 一气呵成的东西 这篇文章中没有 ...

  5. hazelcast入门教程_Hazelcast入门指南第2部分

    hazelcast入门教程 本文是我开始使用Hazelcast (分布式内存数据库)的系列文章的继续. 如果尚未阅读第一篇文章,请单击此处 . 分布式馆藏 Hazelcast具有许多可用于存储数据的分 ...

  6. hazelcast入门教程_Hazelcast入门

    hazelcast入门教程 7月,我写了一个博客向Java开发人员介绍erlang,重点介绍了这两种语言之间的一些异同. erlang虚拟机具有许多令人印象深刻的内置功能,其中之一是它们独立于位置且可 ...

  7. 基金投资入门教程-----基金入门

    基金投资入门教程-----基金入门 基金投资入门教程-----基金入门 1.基金入门 什么是基金 基金的三大优势 基金的风险 基金投资入门教程-----基金入门 1.基金入门 什么是基金 基金的三大优 ...

  8. 计算机linux入门教程,Turbolinux入门教程1

    原标题:Turbolinux入门教程1 第一课:什么是Linux 简单地说, Linux 是一套免费使用和自由传播的类 Unix 操作系统,它主要用于基于 Intel x86 系列 CPU 的计算机上 ...

  9. python入门教程pdf-Python入门教程详解.pdf

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbspPython Python入门教程详解.pdf132页 本文档一 ...

最新文章

  1. python 实现延迟的操作
  2. Oracle10g OEM乱码解决
  3. C语言实验——打印金字塔_JAVA
  4. 你一定不知道的 Linux 使用技巧
  5. 职工考勤管理信息系统数据库课设_数据库课程设计--职工考勤管理信息系统
  6. Matlab线性/非线性规划优化算法(7)
  7. 【回归预测】基于matlab麻雀算法SSA优化混合核极限学习机KELM回归预测【含Matlab源码 1646期】
  8. Scala学习数组/映射/元组
  9. kali linux下的嗅探工具介绍
  10. 2021布吉高级中学高考成绩查询,2021北京市地区高考成绩排名查询,北京市高考各高中成绩喜报榜单...
  11. 【Love2d从青铜到王者】第十五篇:Love2d之角度和距离(Angles and distance)
  12. Mac实现ts文件转为mp4文件
  13. 广告条幅制作html,一种广告设计用的条幅收卷装置的制作方法
  14. word文档怎么在左侧显示目录?
  15. Java学习笔记<2.3>面向对象
  16. python 两幅图片融合成一张图片
  17. re正则表达式必备基础知识
  18. 【软件测试】翻了下招聘APP只会点点点,很慌......测试业务?技术?
  19. 应用层协议的设计与实现
  20. java 时区 edt_JAVA TimeZone发行EDT对EST

热门文章

  1. nssl1437-逮虾户【二分答案】
  2. hdu5115-Dire Wolf【区间dp】
  3. P2522-[HAOI2011]Problem b【莫比乌斯反演】
  4. Normal Data Structure Tricks
  5. codeforces1485 F. Copy or Prefix Sum(dp)
  6. 【DP】小明游天界(zjoj 2149)
  7. 操作系统复习笔记 07 Process Synchronization 进程同步
  8. codeforces 877F F. Ann and Books hash+莫队算法
  9. 读上瘾-让用户养成习惯
  10. JavaScript Function.arguments 属性详解