Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/uber-archive/cherami-server
Distributed, scalable, durable, and highly available message queue system. This project is deprecated and not maintained.
https://github.com/uber-archive/cherami-server
Last synced: 3 months ago
JSON representation
Distributed, scalable, durable, and highly available message queue system. This project is deprecated and not maintained.
- Host: GitHub
- URL: https://github.com/uber-archive/cherami-server
- Owner: uber-archive
- License: mit
- Archived: true
- Created: 2016-08-16T01:09:44.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2020-03-24T07:12:45.000Z (over 4 years ago)
- Last Synced: 2024-09-21T06:02:11.720Z (3 months ago)
- Language: Go
- Homepage: https://eng.uber.com/cherami/
- Size: 10 MB
- Stars: 1,417
- Watchers: 67
- Forks: 102
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-repositories - uber-archive/cherami-server - Distributed, scalable, durable, and highly available message queue system. This project is deprecated and not maintained. (Go)
README
cherami-server [![Build Status](https://travis-ci.org/uber/cherami-server.svg?branch=master)](https://travis-ci.org/uber/cherami-server) [![Coverage Status](https://coveralls.io/repos/uber/cherami-server/badge.svg?branch=master&service=github)](https://coveralls.io/github/uber/cherami-server?branch=master)
==============
DISCLAIMER: This project is deprecated and not maintained[Cherami](https://eng.uber.com/cherami) is a distributed, scalable, durable, and highly available message queue system we developed at Uber Engineering to transport asynchronous tasks.
This repo contains the source code of Cherami server, cross-zone replicator server, and several tools. Your application needs to use the client to interact with the server. The client can be found [here](https://github.com/uber/cherami-client-go).
Getting started
---------------
To get cherami-server:```
git clone [email protected]:uber/cherami-server.git $GOPATH/src/github.com/uber/cherami-server
```Build
-----
We use [`glide`](https://glide.sh) to manage Go dependencies. Please make sure `glide` is in your PATH before you attempt to build.* Build the `cherami-server` and other binaries (will not run test):
```
make bins
```Local Test
----------
We need a Cassandra running locally in order to run the integration tests. Please make sure `cqlsh` is in `/usr/local/bin`, and it can connect to the local Cassandra server.
```
make test
```Run Cherami locally
-------------------
* Setup the cherami keyspace for metadata:
```
RF=1 ./scripts/cherami-setup-schema
```* The service can be started as follows:
```
CHERAMI_ENVIRONMENT=local ./cherami-server start all
```Note: `cherami-server` is configured via `config/base.yaml` with some parameters overriden by `config/local.yaml`. In this config, Cherami is bound to `localhost`.
One can use the CLI to verify if Cherami is running properly:
```
./cherami-cli --env=prod --hostport=127.0.0.1:4922 create destination /test/cherami
```Deploy Cherami as a cluster
---------------------------
Documentation coming soon....Contributing
------------We'd love your help in making Cherami great. If you find a bug or need a new feature, open an issue and we will respond as fast as we can. If you want to implement new feature(s) and/or fix bug(s) yourself, open a pull request with the appropriate unit tests and we will merge it after review.
**Note:** All contributors also need to fill out the [Uber Contributor License Agreement](http://t.uber.com/cla) before we can merge in any of your changes.
Documentation
--------------Interested in learning more about Cherami? Read the blog post:
[eng.uber.com/cherami](https://eng.uber.com/cherami/)License
-------
MIT License, please see [LICENSE](https://github.com/uber/cherami-server/blob/master/LICENSE) for details.