1

What happens if multiple users try to access the same data in a web application. (e.g. 500 or 1000 users will the application crash.

What would be the best solution for designing an application that n number of users can simultaneously access.

What are distributed databases?

Sunny R Gupta
  • 5,026
  • 1
  • 31
  • 40
user3300517
  • 11
  • 1
  • 3

1 Answers1

0

Answer to your first question: (From here.)

Two important mechanisms to allow many users at the same time, would be Web caching and load balancing. As described in these Wikipedia articles:

http://en.wikipedia.org/wiki/Web_cache http://en.wikipedia.org/wiki/Load_balancing_(computing)

Application only crashes if the number of threads available to handle requests are exceeded and there is excessive memory usage on the server.

Your second query is a very simple question that we as web developers face on a day-to-day basis, but I'm afraid there is no single step that ensures high availability of web applications. To answer the question, I'd recommend you first understand the concept of Scaling (applications.)

You can find more info about scalability of web applications by having a look at this SlideShare presentation. It gives a very clear picture of the problems and possible solutions.

With regards to your third query, distributed database is system where most of the data is stored on separate disks (either divided into different physical disks - Fragmentation or copied for redundancy - Replication). The database management system takes care of accessing the correct disk for any specific information.

Mostly same data is put on different disks to make sure large number of requests do not result in a bottleneck.

But, even if this sounds simple, actual implementation is a lot more complicated when the sizes of the database increase, (e.g. Twitter's DB or FB's DB). Whenever a new info is added, the database management system needs to take care of making sure it is updated across all other disks. (Replication).

A simpler (and slower) way to do this is to copy all disks occasionally (duplication).

Distributed database management systems are further divided into two major sub-classes:

  1. Homogeneous DDBMS
  2. Heterogeneous DDBMS

Read more about Distributed Databases here.

Community
  • 1
  • 1
Sunny R Gupta
  • 5,026
  • 1
  • 31
  • 40