Kafka安装

(1)从官方(http://kafka.apache.org/downloads)下载安装包。kafka安装包和一般安装包的命名方式不一样,我们看一个kafka包命名:kafka_2.12-2.1.1.tgz,其中2.12是scala的版本,2.1.1才是kafka的版本。官方强烈建议scala版本和服务器上的scala版本保持一致,避免引发一些不可预知的问题。

(2)执行如下命令解压安装包:

bash-4.1$ tar -xzf kafka_2.12-2.1.1.tgz

(3)kafka依赖zookeeper,zookeeper集群可以自己搭建,也可以用kafka安装包中内置的shell脚本启动zookeeper。我们必须先启动zookeeper(default port: 2181)再启动kafka(default port: 9092)

#!/bin/bash
cd /home/me/kafka_2.12-2.1.1
nohup bin/zookeeper-server-start.sh config/zookeeper.properties > /dev/null 2>&1 &
nohup bin/kafka-server-start.sh config/server.properties > /dev/null 2>&1 &
echo "Success to start zookeeper and kafka!"

(4)使用命令发送和接收消息

## 创建topic
bash-4.1$ bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic TEST-TOPIC
Created topic "TEST-TOPIC".
## 查看所有创建的topic集合
bash-4.1$ bin/kafka-topics.sh --list --zookeeper localhost:2181
TEST-TOPIC
## 选择一个topic并发送消息
bash-4.1$ bin/kafka-console-producer.sh --broker-list localhost:9092 --topic TEST-TOPIC
>Hello! I'm Tom.
>Nice to meet you!
## 同时打开另一个终端接收消息
bash-4.1$ bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic TEST-TOPIC --from-beginning
Hello! I'm Tom.
Nice to meet you!

(5)关闭kafka和zookeeper

#!/bin/bash
cd /home/me/kafka_2.12-2.1.1
sh bin/kafka-server-stop.sh
sh bin/zookeeper-server-stop.sh
echo "Success to stop kafka and zookeeper!"

(6)集群安装

主要是修改配置文件,再通过不同的配置文件启动。这里先省略,等有时间再补上。这里为了演示只使用单机。但是在高可用的情况下应该配置集群。

Redis安装

(1)从官方(https://redis.io/download)下载安装包。

(2)执行如下命令解压安装包:

bash-4.1$ tar xzf redis-5.0.3.tar.gz
bash-4.1$ cd redis-5.0.3
bash-4.1$ make

(3)修改redis配置文件

redis默认只和本机connect。如果要远程连接,可以在redis.conf加一行'bind <self hostname | self ipaddress>',或注释掉bind 127.0.0.1并且改protected mode为no。

(4)启动redis服务(在redis-5.0.3目录下)

bash-4.1$ src/redis-server redis.conf

(5)启动redis客户端程序redis-cli(在redis-5.0.3目录下)

bash-4.1$ src/redis-cli
127.0.0.1:6379> set mykey myvalue
OK
127.0.0.1:6379> get mykey
"myvalue"

(6)关闭Redis

#!/bin/bash
PROJECTNAME=Redis
APP_NAME="redis-server"
pid=`ps -ef|grep ${APP_NAME}|grep -v grep|grep -v /bin/bash|awk '{print $2}'`
if [ -z "${pid}" ]; then
echo "${PROJECTNAME} is not running."
else
echo "${PROJECTNAME} is running and pid=${pid}."
kill -9 $pid
echo "Sucess to stop ${PROJECTNAME}."
fi

(7)集群安装

这里先省略,等有时间再补上。这里为了演示只使用单机。但是在高可用的情况下应该配置集群。

Spring Cloud(7.1):安装Kafka和Redis的更多相关文章

  1. Spring Cloud(中文版)

    原文链接:Spring Cloud I.云原生应用 Spring Cloud上下文:应用上下文服务 2.1.Bootstrap应用程序上下文 2.2.应用程序上下文层次结构 2.3.更改Bootstr ...

  2. Spring Cloud(0):目录

    Spring Cloud(1):概览 Spring Cloud(2):服务发现(Eureka) Spring Cloud(3):配置服务(Config) Spring Cloud(4):断路器(Hys ...

  3. Spring Cloud 开门见山

    Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,为开发者提供了在分布式系统(配置管理,服务发现,熔断,路由,微代理,控制总线,一次性toke ...

  4. 1 Spring Cloud Eureka服务治理

    注:此随笔为读书笔记.<Spring Cloud微服务实战> 什么是微服务? 微服务是将一个原本独立的系统拆分成若干个小型服务(一般按照功能模块拆分),这些小型服务都在各自独立的进程中运行 ...

  5. 微服务架构-选择Spring Cloud,放弃Dubbo

    Spring Cloud 在国内中小型公司能用起来吗?从 2016 年初一直到现在,我们在这条路上已经走了一年多. 在使用 Spring Cloud 之前,我们对微服务实践是没有太多的体会和经验的.从 ...

  6. 干货|基于 Spring Cloud 的微服务落地

    转自 微服务架构模式的核心在于如何识别服务的边界,设计出合理的微服务.但如果要将微服务架构运用到生产项目上,并且能够发挥该架构模式的重要作用,则需要微服务框架的支持. 在Java生态圈,目前使用较多的 ...

  7. 放弃Dubbo,选择最流行的Spring Cloud微服务架构实践与经验总结

    http://developer.51cto.com/art/201710/554633.htm Spring Cloud 在国内中小型公司能用起来吗?从 2016 年初一直到现在,我们在这条路上已经 ...

  8. 基于Spring Cloud的微服务落地

    微服务架构模式的核心在于如何识别服务的边界,设计出合理的微服务.但如果要将微服务架构运用到生产项目上,并且能够发挥该架构模式的重要作用,则需要微服务框架的支持. 在Java生态圈,目前使用较多的微服务 ...

  9. Spring Cloud微服务实战阅读笔记(一) 基础知识

    本文系<Spring Cloud微服务实战>作者:翟永超,一书的阅读笔记. 一:基础知识   1:什么是微服务架构     是一种架构设计风格,主旨是将一个原本独立的系统拆分成多个小型服务 ...

随机推荐

  1. Hibernate初探之单表映射——Hibernate概念及插件的安装

    什么是ORM ORM(Object/Relationship Mapping):对象/关系映射 为什么要有ORM? 利用面向对象思想编写的数据库应用程序最终都是把对象信息保存在关系型数据库中,于是要编 ...

  2. Mybatis之foreach批量插入

    1接口 public boolean insertMembersBatch(@Param("memberList") List<Members> members); @ ...

  3. mysql双主模式方案

    MySQL双主(主主)架构方案   在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动.因此,如果 ...

  4. jquery头部高亮显示方法

    做网站都有头部导航栏,但导航栏的高亮显示一般都是后台技术人员做传参判断来显示高亮样式,今天来教大家一个用jquery来显示 废话不多说,直接上代码 第一步,在需要的页面中写入 <input ty ...

  5. python 装饰器之应用示例

    import time import hashlib import pickle import threading #装饰函数缓存应用 cache ={} def is_obsolete(entry, ...

  6. NodeJS事件环

    1. 执行顺序说明 1. 清空主执行栈 2. 清空微任务队列 3. 运行一个timer队列的回调函数,询问微任务队列,如果有回调函数,清空. 4. 循环第3步,直到清空timer队列 5. 进入pol ...

  7. 一些VMware vCenter Appliance的默认用户名和密码

    一些VMware vCenter Appliance的默认用户名和密码 2014-03-30 17:30:03 flowershade_21 阅读数 13367更多 分类专栏: vmware   VM ...

  8. Oracle 10g和11g中的自动统计任务

    1)  先来看下oracle 10g中的自动统计任务的问题. 从Oracle Database 10g开始,Oracle在建库后就默认创建了一个名为GATHER_STATS_JOB的定时任务,用于自动 ...

  9. Linux分区格式化

    格式化(format)是指对磁盘或磁盘中的分区(partition)进行初始化的一种操作,这种操作通常会导致现有的磁盘或分区中所有的文件被清除.格式化通常分为低级格式化和高级格式化.如果没有特别指明, ...

  10. luogu4208

    P4208 [JSOI2008]最小生成树计数 题目描述 现在给出了一个简单无向加权图.你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树.(如果两颗最小生成树中至少有一条边 ...