Hello everyone, I’m building an instant messaging app and I’m expecting 200K to 500K concurrent connections and about 100K to 300K messages sent and received, I needed a database that can handle a large number of writes and reads and a small number of updates and deletes. Currently I’m using Cassandra and it scales perfectly, we can just add nodes to scale it and it can tolerate a loss of nodes without any impact on the application. Large companies such as Netflix, Facebook and Apple have thousands of Cassandra nodes. I was going to use MongoDB in the beginning but scaling MongoDB is not a great choice, MongoDB sharding is complicated to use and not known for stability. Cassandra is perfect when it comes to scalability but it doesn’t handle deletes very well, so I’m considering another database just in case. I came across Aerospike, I looked into it and I was impressed by what it’s capable of, and some people claim that it is better than Cassandra but I’m still skeptical.
To make things clear, scalability, performance and latency are priorities, I’m looking for a database that can handle millions of messages a day and can still perform perfectly without affecting latency.
Can anyone help me with this?