Performance Tips
Planning
A web site that exists for database access should be planned around the database. First, decide what sort of load the database will have to handle, and then choose web server software and hardware based on that load. The database will probably have to do much more work than the web server, so the database will be the bottleneck.
If you can afford to cache the whole database in RAM, a technique known as supercaching , do it. Also, if you know something about the kinds of SQL statements that will be executed, you can be ready for them with the correct amount of memory. Complicated joins take a lot of RAM and may even use all of your virtual memory if you’re not careful.
Database vendors have a natural advantage in providing the fastest drivers and connectivity for their databases, but the Java DataBase Connectivity standard ( JDBC™) does give you portability options. The best JDBC drivers talk directly to the database in the database’s native protocol. The Open DataBase Connectivity standard (ODBC) slows things down a bit.
Multiple Tiers
The browser/web server/database setup happens to be a three-tier system, but doesn’t have all the advantages of three-tier unless you plan for them. A two-tier system, where the web server is also the database, will give you better performance for small numbers of users but will not scale well. For large numbers of users, three-tier systems can reuse business objects on the web server or application server for both reading ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access