Categories

See More
Popular Forum

MBA (4887) B.Tech (1769) Engineering (1486) Class 12 (1030) Study Abroad (1004) Computer Science and Engineering (988) Business Management Studies (865) BBA (846) Diploma (746) CAT (651) B.Com (648) B.Sc (643) JEE Mains (618) Mechanical Engineering (574) Exam (525) India (462) Career (452) All Time Q&A (439) Mass Communication (427) BCA (417) Science (384) Computers & IT (Non-Engg) (383) Medicine & Health Sciences (381) Hotel Management (373) Civil Engineering (353) MCA (349) Tuteehub Top Questions (348) Distance (340) Colleges in India (334)
See More

Technology stack for Highly Scalable REST Web Service implementation

General Tech Technology & Software

Max. 2000 characters
Replies

usr_profile.png

User

( 3 months 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.

usr_profile.png

User

( 3 months 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.

what's your interest


forum_ban8_5d8c5fd7cf6f7.gif