We develop on a small model 170. The JDBC calls -- from a PC back to the iSeries -- are terribly slow. Similar calls to a Windows backend or Linux are extremely fast. Are there any optimizations we need to make sure are done to run SQL/JDBC on an iSeries?
In addition, a few Java programs on the iSeries take almost two and a half minutes just to start the JVM. Can this be improved?
First, have you compared the processor power of your iSeries server with that of the PC & Linux servers to see if this a valid performance comparison?
Another common mistake is not tuning your application and database for DB2 UDB for iSeries. Every database server is different in terms of how it optimizes & implements JDBC request. Here a couple of URLs with good DB2 performance information: DB2 education (see SQL Performance Basics & Coding for SQL Performance) and DB2 UDB education/white papers (see Indexing & Statistics Strategy)
You may want to look at using JDBC Connection Pooling & Extended Dynamic performance to improve JDBC performance. This website, Technical resources -- The Java programming language, has some good information, including a link to a Redbook on iSeries Java performance titled: "Java & WebSphere Performance on IBM eServer iSeries Server"
MORE INFORMATION ON THIS TOPIC
Check out this Search400.com Featured Topic: Database issues resolved
Search400.com's targeted search engine: Get relevant information on DB2/400.
The Best Web Links: Tips, tutorials and more.
Dig Deeper on DB2 UDB (universal databases)
Related Q&A from Kent Milligan
Create a host variable of the where in statement on the fly with dynamic SQL. Continue Reading
To solve the SQL error -321 on IBM i6.1, use the new values statement to overcome the error. If you are using an older release, declare a cursor ... Continue Reading
When working with DB2 files with columns that have both short and long names, there is no option choose which column names are returned via ODBC ... Continue Reading