`
zk_chs
  • 浏览: 212973 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
文章列表
在学习笔记(一)中,讲解了kafka的安装、部署、以及bash下进行的一些简单操作,而这次将学习kafka的java客户端代码。   1、jar包。 在maven上,我们有两种apache kafka提供的jar包: <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>0.9.0.1</version> </dependency> & ...
kafka是一个高吞吐量的分布式消息系统,整体设计为典型的发布与订阅模式。kafka内部采用zookeeper来解决配置管理、通知/协调、集群管理、master选举等问题,所以建议先对zookeeper有个基本的了解,可以看下我的zookeeper笔记(一)。   这次对于kafka只介绍一下命令行下的安装部署等操作,其它的,比如kafka在zookeeper中的存储结构、配置详解、java客户端代码等,将在后续的讲解中进行介绍。   1、首先我们下载kafka,这里选择最新版本0.9.0.1,下载并解压,同样采取与zookeeper笔记中类似的目录结构,使用单机模拟集群: /Us ...
很多大型系统基本都需要一个无单点问题的分布式框架,zookeeper便满足这一需求。这次的博客,我们先进行一个最基本的安装、部署、连接。   1、首先下载zookeeper,解压,我这里选择最新的稳定版3.4.8,然后我们使用单机模拟集群,可以专门建立一个文件夹,用来放置你的zookeeper,比如: /Users/zk_chs/something/hadoop/zookeeper-3.4.8-001 /Users/zk_chs/something/hadoop/zookeeper-3.4.8-002 /Users/zk_chs/something/hadoop/zooke ...
上一篇redis中,讲解了redis cluster集群,但是却没有涉及到客户端代码,这次就一起来看下如何通过jedis使用redis cluster。   在此之前,需要说一个坑,上一篇中,我们将cluster中每个节点的ip:port配置成了如127.0.0.1:7000这样的形式。 但是,由于集群内部存取时,需要确定key所在的slot,一旦不是在我们登录的节点上,就会有内部转发,如下: 127.0.0.1:7000> set a 10 -> Redirected to slot [15495] located at 127.0.0.1:7003 OK 127 ...
这次带来的是spring boot + redis 实现session共享的教程。   在spring boot的文档中,告诉我们添加@EnableRedisHttpSession来开启spring session支持,配置如下: @Configuration @EnableRedisHttpSession public class RedisSessionConfig { } 而@EnableRedisHttpSession这个注解是由spring-session-data-redis提供的,所以在pom.xml文件中添加: <dependency> ...
这次给大家说一下自己对websocket + spring boot结合使用的一些经验   首先websocket是一个持久化的协议,实现了浏览器与服务器的全双工通信。不再像http那样,只有在浏览器发出request之后才有response,websocket能实现服务器主动向浏览器发出消息。   下面我们用spring boot来实现一下: 在spring boot的文档中,介绍了我们需要配置的文件 // pom.xml <dependency> <groupId>org.springframework.boot</g ...
这次给大家带来的是redis cluster集群搭建。   1、首先,我们先根据文档建立6个文件夹,可以将目录cluster-test(文件夹名称及位置随意)建立在编译完成的redis根目录下,然后cd进入clustert-test,再创建7000-7005共6个文件夹, mkdir cluster-test cd cluster-test mkdir 7000 7001 7002 7003 7004 7005 再为每个文件夹添加一个redis.conf文件,redis.conf文件从我们的redis根目录获取即可。   2、然后我们需要在redis.conf中对应的代码修改 ...
上篇博客带来的是spring boot + redis实现session共享的文章,这次给大家带来的是spring boot + activemq。   首先,我在github上找到了一个不错的demo,这里放给大家一起看下: https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-activemq   确实可以实现功能,但是当我在8161默认的admin端口进行queue查询时,发现并没有我们的github-queue,虽然不太清楚具体的原因 ...
这次的博客给大家带来点lambda中groupBy分组语法的使用   首先我们新建一个对象,通过这个对象的集合来进行学习: @Data @Builder public class Person (){ private int grade; private boolean isBoy; }  很简单的一个类,grade表示年级,isBoy表示性别,男为true; @Data、@Builder为lombok插件的注解,帮助我们生成get/set/equals/toString/Builder等方法   下面我们建立测试类: public clas ...
最近项目中使用到了spring boot,这次带来点关于spring boot中properties文件的使用方法   首先你可以定义一个properties文件,如下所示: // 文件名可以自行定义,这里名为uploaddefine.properties upload.image[JPG]=.jpg upload.image[PNG]=.png upload.office[CSV]=.csv upload.office[EXCEL]=.excel upload.text[txt]=.txt upload.text[epub]=.epub 在这个文件中,我们定义了三个大类 ...
这次的博客带来的是关于ThreadLocal<T>的理解   什么是ThreadLocal呢?根据名称来看,ThreadLocal即线程本地的意思。另外它还是一个范型类,这个范型T,就是threadLocal.set(T)的参数,也是threadLocal.get()、threadLocal.initialValue()的返回值。 public class ThreadLocal<T> { omitted ...... }   那么ThreadLocal又是如何区分不同线程的呢? 在ThreadLocal类内,还有一个静态内部类Thread ...
目前所有的spring文章一律使用spring 4.2.4,包括前面的三篇   在前一篇中,代码里有一些@PointCut、@Before等的基本应用代码,而这次,我们将一起学习一下aop中的参数绑定、在此之前,我们先定义一个最基本的bean @Component public ...
之前在网上找的的资料是这样的 yum install -y mysql-server mysql mysql-devel   但是发现在我的linux上无法进行安装,我的版本信息: LSB Version:    :core-4.1-amd64:core-4.1-noarchDistributor ID:    CentOSDescription:    CentOS Linux release 7.0.1406 (Core) Release:    7.0.1406Codename:    Core   下面说一下我的解决方法,首先 wget http://repo.mysq ...
 这次的博客一样采用全注解进行配置,东西也比较简单     首先说明,SpringAop需要有aspectjweaver这个依赖,要先加入到maven中; <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.8.8</version> </dependency>   其次,对于进行增强的方法,需要将其所在类加入到ioc容器中,如下: ...
这次的博客比较Spring中@PostConstruct、@PreDestroy、InitializingBean、DisposableBean、initMethod、destoryMethod的执行顺序,顺便会将construct以及与注入顺序一并比较   为了方便起见,这次不使用xml文件定义bean,完全采用注解配置,共3个类,都放在annotations包下 下面是定义的两个bean,Bean2直接加上@Conponent注解,加入到ioc容器 而Bean1,有1个注入属性、1个普通属性、1个构造器、3个初始化方法、3个销毁方法 public class Bean1 imp ...
Global site tag (gtag.js) - Google Analytics