Anmelden

View Full Version : Zugriff auf AS/400 mit JDBC



TARASIK
30-07-04, 08:44
Hallo Forum,
wir planen eine HTML Anwendung einzusetzen, welche über
JDBC auf die AS/400 zugereifen soll. Nun sind einige Fragen aufgetaucht:

1.) da das ganze mit sensiblen Daten gemacht werden soll,
wie sieht es aus mit der Sicherheit ?
2.) wie sind eure Erfahrungswerte mit JDBC
3.) das grösste Problem sind die Performanceprobleme. Es
wurde mit dem IBM JDBC Driver ausgetestet und da waren
schon grosse Performanceprobleme. Wie sieht es mit
anderen Anbietern von JDBC - Drivern aus.
4.) das Release beim Test war ein R450. Macht es Sinn auf
R510 zu wechseln ?

Danke für die Antworten.

Bruno Jakob
30-07-04, 10:39
Läuft der HTTP-Server auf der AS/400? Dann würde ich net.data bevorzugen.

Gruß
Bruno

TARASIK
30-07-04, 10:53
Hallo Bruno,
danke für die Antwort. Der HTTP Server ist nicht auf der AS/400 im Einsatz. Die Anwendung läuft auf einer anderen
Plattform und soll nur die Daten von der AS/400 beziehen.

Fuerchau
30-07-04, 11:16
Das ist, denke ich, weniger ein Problem des JDBC sondern eher ein Problem der verwendeten SQL's.
Werden Prepared-Statements verwendet ?
Werden Parameter-Marker "?" verwendet ?
Existieren die richtigen Zugriffswege Where-/Group-/Order-/Join-Bestimmungen ?
Ist die Verbindung (Connection) permanent offen ?

Da bei HTTP-Zugriffen eine Verbindung zur AS/400 ggf. immer wieder neu aufgebaut werden muss, ggf. auch für jeden einzelnen SQL, nützt auch ein anderer Treiber nichts.
Prüfe mal, ob man Connection-Pooling (über den Server) verwenden bzw. einrichten kann.
Dann wird eine geöffnete Verbindung nicht immer sofort geschlossen sondern kann ggf. wiederverwendet werden.
Das beschleunigt den Verbindungsaufbau, die ODP's auf der AS/400 bleiben ggf. geöffnet, usw. usw.

TARASIK
30-07-04, 11:21
Hallo Fuercherau,
danke für die wie immer kompetente und hilfreiche Antwort.

PeterKarsten
01-08-04, 22:36
Hallo Tarasik,

wir arbeiten schon einige Zeit mit JDBC-Zugriff aus Web-Anwendungen und sind eigentlich ziemlich zufrieden.

Zur Sicherheit mußt du dir die Kommunikation Web-Server <-> AS/400 überdenken, diese kann beispielsweise mit SSL gesichert werden.

Ansonsten gibst du dem JDBC einen Benutzer mit, unter dessen Berechtigungen/Biblioheksliste die Jobs ablaufen, was der darf, kannst du einstellen. Du kannst auch im JDBC definieren, ob beispielsweise ein UPDATE zulässig ist.

Wir arbeiten mit dem JDBC-Treiber aus der Toolbox. Weitere Infos unter:

http://publib.boulder.ibm.com/iseries/v5r1/ic2924/info/rzahh/javadoc/JDBCProperties.html

Die Geschwindigkeit ist absolut zufriedenstellend, unsere Stored Procedures laufen auf der AS/400 als vorgestartete Jobs und antworten nach 100 ms.

Ich würde aber mindestens Rel. 5.1 empfehlen, nach meiner Info hat IBM gerade in diesem Bereich einiges getan.

Ein Wermutstropfen haben wir, bei irgendwelchen Problemen in einer StoProc auf der AS/400 kriegt unser Web-Server (Cold Fusion) das nicht mit und wartet bis in alle Ewigkeit, Timeout zieht nicht.

Viel Spaß
Peter

TARASIK
02-08-04, 08:27
Hallo Peter,
vielen Dank für die informative Antwort.