0

We built our 'pilot' on C# and now seems like in 6 months we will reach the amount of users and data with which our system cannot handle. We are trying to figure out how to build scalable highly loaded architecture on C#/.net which can also work with big data. What we've got so far is the diagram

What we need

  1. to get an expert opinion about our solution
  2. what Load Balancer usually uses for .net
  3. any suggestions about database we use (pros and cons). we want to choose between MongoDB and CassandraDB, but maybe we have to look on another solutions
  4. what tool do we need to add. For example, we are thinking about ZooKeeper

Updated:

  1. we are going to use several servers for MongoDb and 2 clusters for MSSQL
  2. oauth (bearer) for authentication

Thanks.

Community
  • 1
  • 1
AntonS
  • 341
  • 1
  • 8
  • Before adding more, perhaps look at what you can strip away? Why are you using Redis in front of the database? The message queue is already going to buffer the traffic. – Chris Patterson Jul 30 '15 at 15:06
  • @ChrisPatterson, thank you for your answer. It's first time when I use MassTransit. Do I understand correct that MassTransit support buffering messages from the box? Actually, I cannot find info about that. – AntonS Jul 30 '15 at 18:26

1 Answers1

0

From the diagram I know almost nothing... there are so many thing to take in consideration for implementing a good scalability....

  • One thing that always come into mind is: user data state, are you using sessions? if yes, how? and where are you storing it?

  • Are you also "splinting" the database in multiple servers or just one Main DB server? Configuration used??

  • Redis and other cache layer, are connected to the previous points of the DB settings.... you might even be caching non correct data and bring it back to the front end (but only you can figure out how critical that can be or not at all).

  • Load balancing - by physical machine/s or software?

Dryadwoods
  • 2,875
  • 5
  • 42
  • 72
  • Thank for your answer. I updated my answer a little bit. About session, as I got from this post http://stackoverflow.com/a/11479021/5100673 it's a bad idea to use session for RESTful API. About LB, we actually don't know what we need to use (pros and cons) because it is our first highly loaded system. – AntonS Jul 30 '15 at 07:02