I am assigned a task to develop a large scale social web application like Facebook, twitter etc, using ASP.net with C#
Before this my development was based on three tier architecture (i.e Presentation Layer, business logic layer, and data access layer) but for this project i am confused because its my first large scale project :(
I just want to know what are other possible architectural choices i have?
I know its difficult to answer such question, but i only want to have good resource, then i study each possible option and finally, choose one that suits my requirement. I did a little RnD over internet but didn't succeed much.
You should check out Windows Azure. it offers hosting, 3 types of scalable (but not relational) storage in the form of Blobs (or files / images / raw), Queues (for distributed communication) and Table Storage (to maintain 'entity' data in a non-relational manner).
There is also SQL Azure for relational storage and AppFabric for hybrid (on-prem/cloud) application addressibility and Access Control for Claims-based Identity Management.
It has built-in diagnostics and if you know C#/ASP.NET/ASP.NET MVC no new skills are needed to take advantage of this platform. It also works with Java and PHP.
windows.azure.com