rockethook

Fire off webhooks with rocket speeds.

alt tag

Rockethook is a microservice dedicated to delivering webhooks. Backed by the Crystal Language and Redis, Rockethook can achieve unmatched speeds with little effort. And it all compiles to a small executable that is easy to setup and deploy.

Some features of Rockethook include:

  • Ability to add context and event info to each webhook via headers.
  • Automatically generates HMAC headers for source verification.
  • Support for max attempts and retry schedules.
  • Fast HTTP requests with Keep-Alive headers.
  • Client support for Ruby and Crystal.
  • Support for blacklisting failed hosts.
  • Ops center provides insight into your Rockethook service.

Rough benchmarks on Ubuntu 16.04:

Runtime RSS Time Throughput
Crystal 0.19.2 15MB 5.2 20,800 webhooks/sec

Installation

Prerequisites:

  • The latest version of crystal (> 0.19.0).
  1. Clone the repo:

    $ git clone https://github.com/nsweeting/rockethook.git
    
  2. Switch to the repo directory:

    $ cd rockethook
    
  3. Build:

    $ make install
    
  4. Add /user/local/bin to your $PATH for access to Rockethoook from the command-line.

    $ echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile
    

    Ubuntu Desktop note: Modify your ~/.bashrc instead of ~/.bash_profile.

    Zsh note: Modify your ~/.zshrc file instead of ~/.bash_profile.

Usage

TODO: Write usage instructions here

Development

TODO: Write development instructions here

Contributing

  1. Fork it ( https://github.com/nsweeting/rockethook/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • nsweeting Nicholas Sweeting - creator, maintainer
Repository

rockethook

Owner
Statistic
  • 1
  • 0
  • 0
  • 0
  • 2
  • almost 9 years ago
  • November 6, 2016
License

MIT License

Links
Synced at

Tue, 02 Sep 2025 06:52:41 GMT

Languages