mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
* Fixed up api.md, removed Titan references. * Adding more documentation on running in production. * Update deps for ironmq.
38 lines
1.3 KiB
Markdown
38 lines
1.3 KiB
Markdown
|
|
# Message Queues
|
|
|
|
A message queue is used to coordinate asynchronous function calls that run through IronFunctions.
|
|
|
|
We currently support the following message queues and they are passed in via the `MQ` environment variable. For example:
|
|
|
|
```sh
|
|
docker run -e "MQ=redis://localhost:6379/" ...
|
|
```
|
|
|
|
## [Bolt](https://github.com/boltdb/bolt) (default)
|
|
|
|
URL: `bolt:///titan/data/functions-mq.db`
|
|
|
|
See Bolt in databases above. The Bolt database is locked at the file level, so
|
|
the file cannot be the same as the one used for the Bolt Datastore.
|
|
|
|
## [Redis](http://redis.io/)
|
|
|
|
See Redis in databases above.
|
|
|
|
## [IronMQ](https://www.iron.io/platform/ironmq/)
|
|
|
|
URL: `ironmq://project_id:token@mq-aws-us-east-1.iron.io/queue_prefix`
|
|
|
|
IronMQ is a hosted message queue service provided by [Iron.io](http://iron.io). If you're using IronFunctions in production and don't
|
|
want to manage a message queue, you should start here.
|
|
|
|
The IronMQ connector uses HTTPS by default. To use HTTP set the scheme to
|
|
`ironmq+http`. You can also use a custom port. An example URL is:
|
|
`ironmq+http://project_id:token@localhost:8090/queue_prefix`.
|
|
|
|
## What about message queue X?
|
|
|
|
We're happy to add more and we love pull requests, so feel free to add one! Copy one of the implementations above as a starting point.
|
|
|