Skip to content

IIC2173-2016-2/kafka-test

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Apache Kafka Test

Requerimientos

  • Java 8
  • Python 3

Configurar Kafka

Descargar y descomprimir Apache Kafka versión 2.11-0.10.1.0 desde el link otorgado.

  • Correr Zookeeper
$ cd kafka_2.11-0.10.1.0
$ bin/zookeeper-server-start.sh config/zookeeper.properties
  • Correr el servidor de Kafka
$ bin/kafka-server-start.sh config/server.properties
  • Crear un topic para poder generar el pub-sub de mensajes.
$ bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

Configurar kafka-test

  • Clonar este repositorio, y entrar a la carpeta principal.
$ cd kafka-test
  • Editar en Producer el host por donde se publicara el sream de datos. Por default esta en localhost.
def get_kafka_client():
    return KafkaClient(hosts='127.0.0.1:9092')

Puedes poner más de un host, separandolos por coma.

  • Correr desde la carpeta kafka-test el siguiente comando para ejecutar el microservicio.
$ python[3] Producer

Si se tiene configurado Python 3 como default, correr solo python, en caso contrario, correr python3

Se ejecutara en el puerto 5000 el productor. Este recibirá requests del tipo POST, de la forma:

[POST] http://127.00.1:5000/post/test?message="This is a text pusblished"
  • Editar en Consumer el host de manera similar.
def get_kafka_client():
    return KafkaClient(hosts='127.0.0.1:9092')
  • Correr desde la carpeta kafka-test el siguiente comando para ejecutar el microservicio.
$ python[3] Client

Si se tiene configurado Python 3 como default, correr solo python, en caso contrario, correr python3

Abrir en el navegador la dirección en el puerto 5001. Se mostraran los mensajes recientes recibidor por el topic test.

About

Apache Kafka IIC2173 - Arquitectura de Software

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 53.3%
  • Python 38.9%
  • JavaScript 7.8%