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. 企业级本地yum源配置方案详解

    因目前企业生产网络禁止联网,对于使用Linux的我们来说,非常不方便,想要使用yum源都很困难,挂dvd又不能完全满足要求,所以自建一个企业级的yum源,定时从公网同步到本地,然后生产网络直接配置在本 ...

  2. 2019牛客暑期多校训练营(第十场)Coffee Chicken——递归

    题意 $S(1) = "COFFEE", S(2)="CHICKEN"$,$S(n) = S(n-2)+S(n-1)$,请输出 $S(n)$ 中从第 $k$ 个 ...

  3. 根据参数显示类别(三级联动,需要JSON数据)

    根据参数显示类别(三级联动,需要JSON数据) Scripts/Category.js 调用方法: $(function () { BindCategory(); //默认绑定文本框中的值 BindC ...

  4. BZOJ 3749: [POI2015]Łasuchy(贪心)

    Orz大佬博客 CODE #include <bits/stdc++.h> using namespace std; typedef long long LL; char cb[1< ...

  5. Educational Codeforces Round 75 (Rated for Div. 2) D. Salary Changing

    链接: https://codeforces.com/contest/1251/problem/D 题意: You are the head of a large enterprise. n peop ...

  6. sql server 交集,差集的用法 (集合运算)

    概述 为什么使用集合运算: 在集合运算中比联接查询和EXISTS/NOT EXISTS更方便. 并集运算(UNION) 并集:两个集合的并集是一个包含集合A和B中所有元素的集合. 在T-SQL中.UN ...

  7. Postgresql 日志相关

    目录日志种类作用总结配置文件中与日志相关的配置日志种类 PostgreSQL有3种日志 pg_log(数据库运行日志)   内容可读    默认关闭的,需要设置参数启动pg_xlog(WAL 日志,即 ...

  8. QVariantMap 和 QVariant

    typedef QVariantMap Synonym for(同义词) QMap<QString, QVariant>. QVariant类型的放入和取出必须是相对应的,你放入一个int ...

  9. 51 NOD 1244 莫比乌斯函数之和(杜教筛)

    1244 莫比乌斯函数之和 基准时间限制:3 秒 空间限制:131072 KB 分值: 320 难度:7级算法题 收藏 关注 莫比乌斯函数,由德国数学家和天文学家莫比乌斯提出.梅滕斯(Mertens) ...

  10. Java常用类、集合框架类1

    A   时间日期格式转换(SDUT 2246)(SimpleDateFormat用法) 转换的df2里面时间是US,上面的df1可以是CHINA或者US. package test; import j ...