In Memory based message broker: RabitMQ, Active MQ, Amazon SQS

All the message are stored in memory Once message are sent to the consumer after consumer ACK message are deleted from the memeory All message to send to consumer are Round robin based which provides more throughput,but there is no ordering insurance

Uses: if high throughput and ordering do not matter as it read from memory ex: posting video to youtube for encoding, order does not matter. Ex: user post tweet and delivering message to all the followers, order does not matter

Log based message broker: Kafka, Amazon kinesis

message are kept in disk in sequential and read are also sequential, which provide faster read All message are read in the order in which it was inserted Any slow message can cause slow processing for other messages too messages are durable, do not delete after consumer read. its deleted after given expiration time

Uses Sensor matrix, where we want to take average of last 20 messages, order matter here. Each write from data base has to be send to elastic search as an update, order of data updates needs to be preserved