这是有关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入门指南第6部分相关推荐

  1. Hazelcast入门指南第3部分

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

  2. Hazelcast入门指南第4部分

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

  3. Hazelcast入门指南第7部分

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

  4. Hazelcast入门指南第5部分

    这是我撰写的有关Hazelcast的一系列文章的延续. 我强烈建议您阅读其他内容: 第1 部分 , 第2 部分 , 第3 部分和第4部分 . 让人一见倾心的东西? 这篇文章中将没有Hazelcast专 ...

  5. Hazelcast入门指南第1部分

    介绍 我将在Hazelcast上做一个系列. 我从Twitter了解了该产品. 他们决定跟随我,经过对他们所做工作的研究后,我决定跟随他们. 我在推特上说,Hazelcast将是分布式密码破解者的重要 ...

  6. Hazelcast入门指南第2部分

    本文是我开始以Hazelcast (分布式内存数据库)为特色的系列文章的继续. 如果尚未阅读第一篇文章,请单击此处 . 分布式馆藏 Hazelcast具有许多可用于存储数据的分布式集合. 以下是它们的 ...

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

    hazelcast入门教程 这是有关Hazelcast的一系列文章中的第六篇. 如果一个人没有看过过去的五年,请到表中的内容后 ,我创建赶上. 本地客户 在上一篇文章之后,我决定要去本地化. 是的,我 ...

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

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

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

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

最新文章

  1. 杭电 HOJ 1251 统计难题 解题报告
  2. Spring学习进阶 (三) Spring AOP
  3. 计算机社团优秀成员申请书,优秀社团的成员申请书
  4. opencv进阶学习笔记2:numpy操作图像,色彩空间,查找指定颜色范围,通道分离与合并
  5. LeetCode Algorithm 242. 有效的字母异位词
  6. Flutter Web:Shadow Root问题
  7. nuxt.js 配置后端的请求地址
  8. 浮点数在计算机中起什么作用,浮点数在计算机中的存储表示
  9. 不会和容器一起启动_一起学习docker05-docker容器
  10. [译] iOS 设计模式进阶
  11. 基于libmemcached为php扩展memcached服务
  12. mybatis学习笔记(10)-一对一查询
  13. matlab中firrcos,DMR数字集群关键技术的应用研究
  14. FastReport.Net使用:[23]图表(Chart)控件
  15. matlab 求约当阵,矩阵约当标准化的一个新方法
  16. VC++获取磁盘剩余空间(附源码)
  17. Echars 折线图 自动向右平移显示数据(数据量大的时候适应)
  18. 网站推荐:archimy.com 在线函数图象绘制
  19. 新概念二册 Lesson 34 quick work破案“神速”(复习被动语态)
  20. python 读取图片转换为一维向量_对Python中一维向量和一维向量转置相乘的方法详解...

热门文章

  1. 考研英语二大纲22年考研
  2. 2018蓝桥杯省赛---java---C---3(字母阵列)
  3. 二分查找非递归方式实现
  4. 插值查找+代码实现+注意事项
  5. java运行环境变量及自定义变量
  6. import openfire4.0.2 source code in eclipse
  7. 基于Apache POI 向xlsx写入数据
  8. 使用Git前的准备工作
  9. bootstrap样式异常_处理异常功能样式
  10. recorder_将Java Flight Recorder与OpenJDK 11一起使用