Giter Club home page Giter Club logo

seneca-kafka-transport's Introduction

seneca-kafka-transport

Kafka transport module for seneca. To run the example code:

download the latest Kafka build from http://kafka.apache.org/downloads.html (tested against 0.8.1)

unpack and follow the build instructions to create Kafka binaries for your system

cd to the kafka directory

cd kafka-0.8.1-src/kafka

start zookeeper

nohup bin/zookeeper-server-start.sh config/zookeeper.properties >zk.log 2>&1 &

start kafka

nohup bin/kafka-server-start.sh config/server.properties >kafka1.log 2>&1 &

create a request topic

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 3 --topic request

create a reponse topic

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 3 --topic response

cd into the module test folder

cd seneca-kafka-transport/test

initialize the zookeeper configuration

node setConfig.js

run the server

node server.js

and the client

node client.js

Support

If you're using this module, feel free to contact me on twitter if you have any questions! :) @rjrodger

Current Version: 0.1.1

Tested on: node 0.10.24

seneca-kafka-transport's People

Contributors

mmalecki avatar pelger avatar rjrodger avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

seneca-kafka-transport's Issues

issue with type: 'queue' in seneca transport

Evaluating seneca-kafka-transport by running through the examples in the repo. We keep hitting the error below. Tried bumping to the latest version of seneca to no avail. It appears seneca-tranport is failing based on the action definition within the kafka transport.

seneca.add({role:'transport',hook:'listen',type:'queue'}, hookListenQueue);
seneca.add({role:'transport',hook:'client',type:'queue'}, hookClientQueue);

This is the line that is responding.
https://github.com/rjrodger/seneca-transport/blob/master/transport.js#L157

Is there a workaround for this? Any proposed fixes? Willing to help out if so.

steps

  1. clone repo
  2. step through examples of creating request/response topics
  3. set config
  4. node server.js

env

  • node - 0.10.38
  • kafka - 0.8.2.1
  • zookeeper - 3.4.6_1

Seneca Fatal Error

Message: Seneca/0.5.21/3yg7c3tq7yj4/1437161526709/-: plugin-needed: [ 'plugin-needed', { name: 'seneca-beanstalkd-transport' } ]

Code: transport_listen

Stack:
at Seneca.fail (/Users/robb/sites/eLab Solutions/phelix/dev/seneca-kafka-transport/node_modules/seneca/lib/seneca.js:1882:15)
at handle_legacy_types (/Users/robb/sites/eLab Solutions/phelix/dev/seneca-kafka-transport/node_modules/seneca/node_modules/seneca-transport/transport.js:138:19)
at Seneca.cmd_listen (/Users/robb/sites/eLab Solutions/phelix/dev/seneca-kafka-transport/node_modules/seneca/node_modules/seneca-transport/transport.js:107:9)
at Object.execspec.fn (/Users/robb/sites/eLab Solutions/phelix/dev/seneca-kafka-transport/node_modules/seneca/lib/seneca.js:1442:24)
at Object._onImmediate (/Users/robb/sites/eLab Solutions/phelix/dev/seneca-kafka-transport/node_modules/seneca/lib/executor.js:93:14)
at processImmediate as _immediateCallback

Instance: Seneca/0.5.21/3yg7c3tq7yj4/1437161526709/-

When: 2015-07-17T19:32:07.092Z

Log: [sys,seneca,0.5.21,3yg7c3tq7yj4/1437161526709/-,transport_listen,Seneca/0.5.21/3yg7c3tq7yj4/1437161526709/-: plugin-needed: [ 'plugin-needed', { name: 'seneca-beanstalkd-transport' } ],[{type=queue,msgprefix=seneca_,callmax=111111,msgidlen=12}]]

Node: { http_parser: '1.0', node: '0.10.38', v8: '3.14.5.9', ares: '1.9.0-DEV', uv: '0.10.36', zlib: '1.2.8', modules: '11', openssl: '1.0.1m' }

params undefined when starting client

hi,

I've tried the new version of the transport. server.js starts perfectly.
But when trying to run the client.js I'm getting the following error. i am using server and client fomr /test/ folder of the kafka transport. and setConfig to initialize the topics in kafka.

C:\Projects\Playground\EventBus\test1\EventBusTest1\EventBusTest1>node client.js
2014-04-29T21:03:41.810Z INFO hello Seneca/0.5.17/khkkeq
2014-04-29T21:03:42.619Z INFO plugin kafka-transport - ren96c client pubsub localhost 11300 Seneca/0.5.17/khkkeq

C:\Projects\Playground\EventBus\test1\EventBusTest1\EventBusTest1\node_modules\seneca-kafka-transport\node_modules\kafkaesque\lib\kafkaesque
.js:48
return params.host + '_' + params.port;
^
TypeError: Cannot read property 'host' of undefined
at _makeBrokerKey (C:\Projects\Playground\EventBus\test1\EventBusTest1\EventBusTest1\node_modules\seneca-kafka-transport\node_modules\ka
fkaesque\lib\kafkaesque.js:48:18)
at C:\Projects\Playground\EventBus\test1\EventBusTest1\EventBusTest1\node_modules\seneca-kafka-transport\node_modules\kafkaesque\lib\kaf
kaesque.js:121:23
at Object.callback (C:\Projects\Playground\EventBus\test1\EventBusTest1\EventBusTest1\node_modules\seneca-kafka-transport\node_modules\k
afkaesque\lib\kafkaesque.js:56:85)
at Socket. (C:\Projects\Playground\EventBus\test1\EventBusTest1\EventBusTest1\node_modules\seneca-kafka-transport\node_module
s\kafkaesque\lib\api.js:246:17)
at Socket.EventEmitter.emit (events.js:95:17)
at Socket. (stream_readable.js:746:14)
at Socket.EventEmitter.emit (events.js:92:17)
at emitReadable
(_stream_readable.js:408:10)
at emitReadable (_stream_readable.js:404:5)
at readableAddChunk (_stream_readable.js:165:9)

thanks,
Roman

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.