Cherami: Uber Engineering’s durable and scalable task queue in #golang

Cherami is a distributed, scalable, durable, and highly available message queue system developed at Uber Engineering to transport asynchronous tasks, developed in Go ( #golang )

Cherami is a competing-consumer messaging queue that is durable, fault-tolerant, highly available and scalable. Cherami achieve durability and fault-tolerance by replicating messages across storage hosts, and high availability by leveraging the append-only property of messaging queues and choosing eventual consistency as our basic model. Cherami is also scalable, as the design does not have single bottleneck.