分布式消息系统 Hurricane
Hurricane 是一个使用 Erlang 编写的可伸缩的、可扩展的分布式消息系统。
同时也提供包括 Java、Ruby、PHP、Python、C++、Go 和 JavaScript 的 API。
特性:
Performance
Built for speed, Hurricane can send and receive as many as the network can handle. Hurricane is so fast that it can do an entire process-to-process round-trip in 60 microseconds.
Clustering
Clustering is provided out of the box with the distribution manager. Even in huge clusters, each node only needs to be configure to talk to one other node—the rest is magic.
Scatter-Gather
Hurricane ships first-class support for the powerful Scatter-Gather pattern of service communication. Give each message a unique tag and the responses are guaranteed to arrive in-order.
Concurrency
Hurricane acts as your concurrency framework. With Scatter-Gather support, easily distribute work over any number of processes. Suddenly, parallelism is easy and bug-free.
Rails and Django
Really any WSGI or Rack enabled framework. Drivers and handlers are provided so that your Favorite™ Python or Ruby Framework can be hooked up to Hurricane to serve HTTP requests.
Language Support
The Hurricane project current ships drivers for Ruby, Python, PHP, and Java. Interested in support for your language? Please contribute—your help makes a difference!
Fault Tolerance
Out of the box, messaging works over TCP and over Standard I/O. With Standard I/O-based messaging, Hurricane will manage and restart broken processes automatically.
Extensibility
At startup, Hurricane loads and compiles each piece of itself. Any number of "after-factory" modules can be added simply by configuring a path for each custom module.
Open Source
Hurricane is created, developed, and shared with the world under the New BSD License. Go ahead and do something great with it, and while you're at it, please contribute—your help makes Hurricane better.