Table 10-1 lists the top 20 rock-solid performance development considerations this chapter covers.
| Consideration | Targeted Tier |
|---|---|
| Avoid constant use of large session objects | Web tier |
| Invalidate HTTP sessions when they aren't required | Web tier |
| Use the init() servlet method if doGet() and doPost() aren't required | Web tier |
| Use <jsp: usebean ()> carefully | Web tier |
| Don't use the single-threaded model with servlets | Web tier |
| Reuse EJB homes where possible | Business tier |
| Consider Pass-by-Reference rather than Pass-by-Value | Business tier |
| Use a multithreaded logger instead of system.out.println() | Business tier |
| Use container threading services and avoid manually spawning threads | Business tier |
| Avoid lazy initialization of objects | Business tier |
| Avoid overusing Java niceties | Business tier |
| Avoid stateful EJBs where possible | Business tier |
| Use constants | Business tier |
| Assume remote objects, but write for local | Business tier |
| Use Abstraction | Business tier |
| Use WebSphere data sources | Data tier |
| Release JDBC resources when you've finished with them | Data tier |
| Use container-managed persistence only for high-read database access | Data tier |
| Use Data Access Objects for general database access | Data tier |
| Use prepared SQL statements where possible | Data tier |
Let's now take a look at each consideration in more detail. Considerations appear under the appropriate tier.