Technology stack for Highly Scalable REST Web Service implementation

General Tech Technology & Software 2 years ago

0 2 0 0 0 tuteeHUB earn credit +10 pts

5 Star Rating 1 Rating

Posted on 16 Aug 2022, this text provides information on Technology & Software related to General Tech. Please note that while accuracy is prioritized, the data presented might not be entirely correct or up-to-date. This information is offered for general knowledge and informational purposes only, and should not be considered as a substitute for professional advice.

Take Quiz To Earn Credits!

Turn Your Knowledge into Earnings.

tuteehub_quiz

Answers (2)

Post Answer
profilepic.png
manpreet Tuteehub forum best answer Best Answer 2 years ago

 

We need to come up with a REST based web service implementation returning JSON from a Data Store that needs to be highly scalable. The primary design requirement is high scalability because this service is going to be hit by hundreds of thousands of client apps(C++) at a predefined polling interval.

We are asked to propose the technology stack for the Web Service and the Database.

Initially we thought about ASP.NET MVC 3 for the REST API and SQL Server 2008 for the database. But the client is asking us whether this is scalable enough.

Since we are a Microsoft group, we are more inclined towards MS technologies but we want to be unbiased and propose a couple of best fits in this scenario. If some other technology stack is better suited to handle the load and scale, then we would like to present that to the client rather than trying to bag the project for ourselves.

We are just not sure how to go about coming up with a comparison since there are so many frameworks and available technologies to implement REST. We were also trying to figure out if a NoSQL based solution would help the scalability as there is no real reason to use a relational data model as the database will just be used as a data store.

Does any body have any suggestions around the choice of technologies that is best suited to handle the above requirement.

profilepic.png
manpreet 2 years ago

 

Any of the mature web technologies (.net, java, php, etc) can be used to create a scalable REST api. If you application is data intensive, then I would go on to say that more than the web technology, it is the data store that would matter more.

To decide on the data-store, you should first check if the app is read intensive or write intensive. If its read intensive, a RDBMS with a caching solution (EhCache, Memcache, etc) should serve you well.

If its write intensive, you may want some sort of write sharding - you may be better off using a NoSQL solution like Cassandra/ MongoDB, etc.

Also consider licensing costs. With SQL Server most of the scalability features (partitioning, etc) are Enterprise features. With MSSQL 2012, license is per logical core and not per physical processor. If this is an issue, you may seriously want to consider MySQL instead of MSSQL.


0 views   0 shares

No matter what stage you're at in your education or career, TuteeHub will help you reach the next level that you're aiming for. Simply,Choose a subject/topic and get started in self-paced practice sessions to improve your knowledge and scores.