Is Data Base the Bottle Neck of Web Service?
One of most common knowledge of many web developers is the assumption the data base is the bottle neck of their web services. Indeed, if the search in the database takes , it is probably the one that should take most of the time because most of other processing should take .
However, the complexity theory tells one important thing... should should be sufficiently big. How much is that? 1GB, 1,000GB, 1,000,000GB or even more?
So let's take as an example on of the biggest web projects: Wikipedia, or Wikimedia's Server Farm.
The facts:
- WikiMedia's Server Farm includes about 300 servers.
- The main web page path includes:
- 95 Squids servers --- the upstream cachers that are responsible on 78% of performance (the hit ratio)
- 144 Apache+PHP servers that create the rest 22% of pages.
- 20 MySQL Master Slave servers.
- Other servers are used for other various purposes like search, static files, images rescaling and more.
- Memcached improves by additional 7% of hit ratio for the apache servers.
So, how the SQL servers can be the bottle neck of the system when they are about less then 10% of the server farm? Assuming balanced system, it is obvious that Apache and PHP consume most of computation resources of WikiMedia server farm.
So:
Is Data Base is the Bottle Neck of Web Service?
Definitly not.
Would switch to CppCMS server side technology would improve the performance
Definitly yes.
Comments
Might maybe gain more supporters if you were more definite instead of defiant. :)
Thanks, Fixed...
May be u r right? But what about the C++ database wrappers u r providing? I suppose that php virtually requires less than 20% coding when compared with plain C++. I am a certain supporter of C++. Does your cppCMS provide anything better than what is currently available for C++ developers with MySQL?
CppCMS is web orineted and not ORM oriented, at this point there are lots of tools for working with SQL... So any database is relevant.
Also, CppCMS provides very powerful caching system allowing reduce number of SQL queries... Making lower loads on DB.
When you use CppCMS you have all tools to write good web applications, so same code in PHP or written with CppCMS in C++ would be much simpler in C++ because CppCMS is full MVC framework, when PHP is not.
a few months ago I wrote a few cgi's (simple old school cgi - not fastcgi, etc) in c and yes people did think I was crazy but the speed was astonishing!
it left everything else for dead!
I will download CppCMS and give it a try - It might save me some time re-inventing the wheel! (and will help me become more familiar with c++ concepts - which would be useful for some offline projects I have in mind too)
Notice Staff will be giving in a try for a service project am working on. and compare it to an existing php service already running
Add Comment:
You must enable JavaScript in order to post comments.