-
Hallo Dieter,
 Zitat von BenderD
um mit dem letzten anzufangen: doch, doch das ist ein Vergleich, das muss man von einer AS400 auch erwarten, wenn sie Konkurrenz fähig sein soll. Die 15 ms sind jedenfalls immer noch schlapp. Eine simple Datenbankoperation muss immer im Bereich von max. 2-3 ms liegen, gemessen in der Datenbank - bei dieser Gelegenheit, wie messt ihr eure Zeiten und was liegt alles im Messintervakll drin?.
Ich erwarte von der iSeries nicht unbedingt die 0 ms von MySQL. Das Teil hat sonst überhaupt nichts zu tun, läuft allerdings aber auch auf 'nem stinknormalen Büro-PC. Aber 2-3 ms für die iSeries wären schon wirklich gut :-)
Die Zeit-Messung mache ich auf dem PC und zwar nur für die tatschliche Dauer des insertRow(). Source-Code siehe weiter unten. Die aktuellen Zeiten liegen zwischen 0 und 15 ms, mit vereinzelten Ausreißern von etwa 250 ms.
Das mit den extended Metadata deutet irgendwo auf einen Treiber Bug, welchen verwendet ihr denn (Toolbox oder native, welches Jar File)? ich würde mal eine neuere Version/anderen Treiber ausprobieren.
JTOpen 4.5, mit dem "originalen" aus CA V5R2 ist's aber auch nicht wirklich anders.
Die Poolgrößen sagen nix aus, wichtig sind die Paging Raten und da insbesondere dy synchronous für Database und non Database und die CPU Auslastung; die große Differenz für Commit versus ohne Commit könnte auf Plattenengpässe hindeuten, was habt ihr für Platten an der Büchse (Typ und Anzahl)?
Ich hoffe, dies sind die gewünschten Werte:
Code:
% CPU benutzt . . . . . : 32,4
% DB-Kapazität . . . . . : 20,6
System Pool- Reserv. Max. -DB-Seiten-- --Nicht-DB--
Pool Größe(M) Größe (M) Aktiv fehl. geles fehl. geles
1 115,81 60,55 +++++ 0,0 0,0 3,2 3,2
2 834,62 0,66 124 0,7 5,2 2,0 3,8
3 52,77 <.01 26 0,0 0,0 0,1 0,1
4 10,13 0,00 8 0,0 0,0 0,0 0,0
System Pool- Reserv. Max. Aktiv-> Warten-> Aktiv->
Pool Größe(M) Größe (M) Aktiv Warten n.wählb. n.wählb.
1 115,81 60,55 +++++ 21,4 0,0 0,0
2 834,62 0,66 124 527,1 0,0 0,0
3 52,77 <.01 26 3,9 0,0 0,0
4 10,13 0,00 8 0,0 0,0 0,0
Ein- Größe %be- E/A Anford. Lese Schrb. Lesen Schrb %ver-
heit Typ (M) legt Anf. Größe(K) Anf. Anf. (K) (K) wend.
1 6719 35165 40,9 8,2 9,2 1,9 6,3 17,6 6,7 2
2 6719 35165 41,1 12,9 6,8 1,8 11,0 6,8 6,8 10
Und es fehlt noch gänzlich eine Angabe dazu um was für eine Anwendung sich das handelt? Servlet/JSP/EJB, welcher AppServer? Mix RPG Java, Batch oder interaktiv?
Direkte JDBC-Anwendung zum Server, ohne zwischengeschalteten AppServer, kein RPG im Spiel, Programm läuft auf einem PC ab - und letzterer kann die Bremse nicht sein: AMD Athlon XP 3000+ mit 1 GB RAM, hat während der Testzeit genau wie die iSeries sonst nix zu tun. Hier mal mein Testprogramm:
Code:
package Test;
import com.ibm.as400.access.*;
import java.sql.*;
public class TestSqlInsert {
public TestSqlInsert() {
try {
DriverManager.registerDriver(new com.ibm.as400.access.AS400JDBCDriver());
Connection conn = DriverManager.getConnection("jdbc:as400://meinServer/$$FILE;extended metadata=false");
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
conn.setAutoCommit(false);
for (int x=1; x<=10; x++) {
ResultSet rs = stmt.executeQuery("Select * From LABDTA00");
for (int i=1; i<=100; i++) {
rs.moveToInsertRow();
rs.updateString("LDSA", "LD");
rs.updateInt("LDAUFN", 123);
rs.updateDate("LDDATUM", new java.sql.Date(2004, 11, 25));
rs.updateInt("LDLFDNR", i);
rs.updateString("LDUSER", "User");
rs.updateString("LDMENUEID", "xyz");
rs.updateString("LDBLOCKID", "abc");
rs.updateString("LDFELDID", "qqq");
rs.updateString("LDDATEN", "Daten");
long start = System.currentTimeMillis();
rs.insertRow();
System.out.println("time " + (System.currentTimeMillis() - start));
}
conn.commit();
stmt.execute("Delete From LABDTA00 Where LDAUFN = 123");
conn.commit();
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
public static void main(String[] args) {
new TestSqlInsert();
System.exit(0);
}
}
Markus
Similar Threads
-
By christian_lettner in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 16-11-06, 11:15
-
By FNeurieser in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 11-10-06, 15:53
-
By malzusrex in forum IBM i Hauptforum
Antworten: 8
Letzter Beitrag: 19-09-06, 12:04
-
By Kaufmann in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 28-06-06, 15:11
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 10:43
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks