少年游

欲买桂花同载酒,终不似,少年游。

0%

流式数据处理kafka

Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。
我想它应该很适合按热度进行新闻推荐和网易云音乐排行,常用地模型等。最近遇到这些问题,还没解决。。。

CENTOS

  • 基本命令
  1. 包管理

    1
    2
    3
    $$ yum install [package]
    $$ yum install net-tools
    $$ yum install wget
  2. 下载命令

    1
    2
    $$ wget [link]
    $$ wget http://www.slf4j.org/dist/slf4j-1.7.6.zip
  3. 进程查找

    1
    2
    $$ ps -ef|grep [name]
    $$ ps -ef|grep kafka
  4. 进程杀死

    1
    2
    $$ kill [pid]
    $$ kill 5043
  5. 重命名/移动命令

    1
    2
    $$ mv a/c b    # 将c移动到b目录下
    $$ mv kafka /usr/local
  6. 删除文件

    1
    2
    $$ rm [file] 
    $$ rm -rf [folder]
  7. 创建软连接

    1
    2
    $$ ln -s a b  # 如同windows下的快捷方式
    $$ rm -rf b # 删除软连接
  8. 建立硬链接

    1
    2
    $$ ln a b
    $$ ln /usr/local/kafka-0.8.1.1-src kafka
  9. 查看全部路径

    1
    $$ pwd
  10. 解压

    1
    $$ unzip slf4j-1.7.6.zip
  11. 解压

    1
    $$ tar zcvf zzz.tar.gz

zookeeper

首先安装zookeeper

1
2
3
# 启动并开启端口服务
[root@localhost zookeeper-3.4.6]# bin/zkServer.sh start
[root@localhost zookeeper-3.4.6]# bin/zkCli.sh -server 10.0.2.15:2181

kafka

  • 首先kafka安装

    1
    2
    3
    4
    5
    6
    7
    # 后台启动
    [root@localhost kafka-0.8.1.1-src]# nohup bin/zookeeper-server-start.sh config/zookeeper.properties &
    [root@localhost kafka-0.8.1.1-src]# nohup bin/kafka-server-start.sh config/server.properties &
    # 创建主题
    [root@localhost kafka-0.8.1.1-src]# bin/kafka-topics.sh --create --zookeeper 10.0.2.15:2181 --replication-factor 1 --partitions 1 --topic LJ200
    ## 查看现有主题
    [root@localhost kafka-0.8.1.1-src]# bin/kafka-topics.sh --list --zookeeper 10.0.2.15:2181
  • 生产者

    1
    2
    [root@localhost kafka-0.8.1.1-src]# bin/kafka-console-producer.sh --broker-list 10.0.2.15:9092 --topic test
    # 然后输入一些数据如hello world
  • 消费者
    1
    2
    3
    # 再开一个终端
    [root@localhost kafka-0.8.1.1-src]# bin/kafka-console-consumer.sh --zookeeper 10.0.2.15:2181 --topic test --from-beginning
    # 自动打印出生产者的数据,从头开始打印

暂时进展到这里!敬请期待!

REFERENCE

[1]. kafka入门
[2]. zookeeper