Skip to content

WillAbides/xqsmee

Repository files navigation

xqsmee is like smee but with an eXtra Queue.

It's for some of the same situations where you would use smee, but you don't want to miss events that are sent when you aren't watching. A side effect of using a queue is that even when multiple clients are watching, only one client will get each request.

example usage:

  • prereq: you need to have a redis server running locally
  • go get -u github.com/WillAbides/xqsmee/cmd/*
  • each in a separate shell session:
    • start the server: xqsmee
    • start the client: xqsmee-client -q "foo" -s "localhost:8000" --insecure
    • post a message: curl -d "hello world" http://localhost:8000/foo

Each post you make to http://localhost:8000/foo will cause the client to emit a json representation of the post.

$ xqsmee -h
Usage:
  xqsmee [flags]

Flags:
  -h, --help                              help for xqsmee
      --maxactive int                     max number of active redis connections (default 100)
      --redisprefix string                prefix for redis keys (default "xqsmee")
  -r, --redisurl string                   redis url (default "redis://:6379")
  -a, --tcp address to listen on string   tcp address to listen on (default ":8000")
$ xqsmee-client -h
Usage:
  xqsmee-client [flags]

Flags:
  -h, --help            help for xqsmee-client
      --ifs string      record separator (default "\n")
      --insecure        ignore ssl warnings
  -q, --queue string    xqsmee queue to watch
  -s, --server string   address of xqsmee server

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages