-
Lesender Zugriff auf Redis per RPG
Hallo zusammen,
unsere Java Kollegen betreiben seit langem einen Redis Server (nicht auf der IBM i). Wir haben vor vielen Jahren mal eine Lösung in RPGLE geschaffen, mit der wir in diesen Server reinschreiben können. Wir nutzen dazu die LIBHTTP Funktionalität von Scott Klement. Da wird eine eigene socket Kommunikation eröffnet usw. Alles ganz schön "tief unten".
Jetzt müssen wir auch lesend auf den Redis zugreifen. Meine Frage ist: Hat das schon mal jemand in RPG gemacht? Oder gibt es da vielleicht inzwischen von IBM eine einfachere Lösung? Beim Googlen stößt man auf Seiten wie "IBM Cloud Databases for Redis". Das sagt mir aber nichts.
In vielen anderen Programmiersprachen (z.B. Java) gibt es fertige Clients. Aber richtig schön ist ein Kommunikation zwischen RPG und Java natürlich nicht.
Wenn jemand eine gute Idee hat, bitte posten.
Im Voraus vielen Dank!
Dieter
-
Es gibt von Dieter Bender eine schöne OpenSource-Lösung:
http://www.bender-dv.de/AppServer4RPG.html
-
Hallo Baldur. Vielen Dank für deine Nachricht. Ich weiß, dass es diese Lösung gibt. Wir bekommen dann aber nochmal eine weitere "Asynchronität" in unsere Applikation. Ich fände es schöner, wenn wir direkt in unserem Programm einen Call machen könnten, der uns sagt, ob im Redis etwas für uns drinsteht.
Aber ich habe die Lösung im Hinterkopf. Wenn wir nichts passenderes finden, kommen wir darauf zurück.
-
Zitat von dschroeder
Hallo Baldur. Vielen Dank für deine Nachricht. Ich weiß, dass es diese Lösung gibt. Wir bekommen dann aber nochmal eine weitere "Asynchronität" in unsere Applikation. Ich fände es schöner, wenn wir direkt in unserem Programm einen Call machen könnten, der uns sagt, ob im Redis etwas für uns drinsteht.
Aber ich habe die Lösung im Hinterkopf. Wenn wir nichts passenderes finden, kommen wir darauf zurück.
... das ist technisch asynchron, funktional synchron! Hast Du mal nachgesehen, was mit Redis per JDBC geht? Möglicherweise kann man da direkt per embedded SQL via ArdGate arbeiten...
D*B
-
Ob ein JDBC Zugriff auf Redis möglich ist, weiß ich nicht. Ich kläre das mit meinen Kollegen mal ab.
Vielen Dank erstmal.
-
Noch ein Wort zu AppServer4RPG bzw zu ArdGate:
Wir setzen ungern in unserer Individualprogrammierung "fremde" Software ein. Wenn wir Code Snippets bekommen, die wir verstehen können, ist das OK. Oder wenn die Software (zb. per SQL-Funktionen) direkt von IBM kommt und wir da den 7x24 Support im Rücken haben, ist das auch etwas anderes.
Ich weiß, dass jetzt einige sagen "Aber man kann doch nicht alles selbst entwickeln". Im Moment sehen wir das so, dass wir die Dinge, die kritisch sind, doch lieber selbst unter Kontrolle haben. Selbst wenn unsere Lösung dann nicht so schön ist.
Ob wir diese Einstellung dauerhaft durchhalten können, weiß ich natürlich nicht.
Dieter
-
Nun ja, dafür gibts eben OpenSource. Man bekommt die Quellen gleich mit, lernt diese kennen und kann sie wie eigene Software verwenden.
Alternativ kannst du ja basierend auf den Schnittstellen Wrkreginf durchaus eigene Software entwickeln.
Nach diesen Randbedingungen dürftet ihr eigentlich Office gar nicht einsetzen.
-
Zitat von dschroeder
Noch ein Wort zu AppServer4RPG bzw zu ArdGate:
Wir setzen ungern in unserer Individualprogrammierung "fremde" Software ein. Wenn wir Code Snippets bekommen, die wir verstehen können, ist das OK. Oder wenn die Software (zb. per SQL-Funktionen) direkt von IBM kommt und wir da den 7x24 Support im Rücken haben, ist das auch etwas anderes.
Ich weiß, dass jetzt einige sagen "Aber man kann doch nicht alles selbst entwickeln". Im Moment sehen wir das so, dass wir die Dinge, die kritisch sind, doch lieber selbst unter Kontrolle haben. Selbst wenn unsere Lösung dann nicht so schön ist.
Ob wir diese Einstellung dauerhaft durchhalten können, weiß ich natürlich nicht.
Dieter
Auch da kann ich weiterhelfen! Statt ArdGate könnt ihr auch Infosphere Federation Server nehmen, das ist von IBM und damit kann man auch von der AS400 mit SQL auf JDBC Data Sources zugreifen. Da brauchts dann lediglich einen weiteren Server auf dem das läuft und die Software ist nicht Open Source und kostet einen schmalen Obolus an IBM. Mit dem Support durch IBM wünsche ich euch viel Glück - ich kenne nämlich niemanden, der das im Eier Umfeld einsetzt.
Was die grandiosen Java-SQL procedures und functions angeht, falls ihr die einsetzt, müsst ihr mit dem Einsatz von Java aufpassen, die mögen das nicht, dass da noch jemand nicht-IBM Java einsetzt.
Was ich nicht ganz verstanden habe, habt ihr eine eigene Implementierung von Redis oder gibt es das von IBM?
Dieter
-
Ich hatte schon befürchtet, dass ich hier eine Grundsatzdiskussion auslöse. Das war aber nicht meine Absicht.
Ich denke, ich bin da etwas missverstanden worden. Ob wir fremde Software einsetzen oder nicht, hängt natürlich zunächst davon ab, ob wir die Lösung mit vertretbarem Aufwand überhaupt selbst entwickeln könnten. Beim Office Paket ist das augenscheinlich nicht der Fall.
Wenn wir dann bei einem Probem, das wir selber lösen könnten, vor der Entscheidung stehen, ob wir Fremdsoftware einsetzen oder ob wir es selber bauen, stellen wir uns folgende Fragen:
- Wieviel Aufwand erspart uns die fremde Lösung?
- Wie abhängig machen wir uns von der fremden Software?
- Wie kritisch ist unser Problem, also: wie schnell benötigen wir einen workaround, falls die fremde Software mal nicht mehr läuft und wie schnell könnten dann wir einen workaround selber schaffen?
Was wir im konkreten Fall für den Redis Zugriff benötigen, ist ja nur ein sehr kleines Tool. Aber es wird an einer kritischen Stelle eingesetzt. Deshalb fände ich es besser, dieses Tool vollständig unter Kontrolle zu haben. Und deshalb fände ich ein Code-Snippet oder etwas ähnliches besser. Wenn es das nicht gibt, muss ich neu überlegen.
Zum Thema OpenSource: Ich habe die Befürchtung, dass, wenn eine Software komplex genug ist, einem OpenSource nicht zwingend weiterhilft. Man muss ja im Zweifel auch genug Zeit und Ressourcen haben, um den OpenSource Code zu lesen, zu verstehen und ggf. zu korrigieren. (Das ist allgemein gemeint. Ich habe überhaupt keine Ahnung, wie komplex ArdGate ist).
-
Übrigens noch eine Anmerkung zum IBM Support. Ich hatte schon oft mit dem Support zu tun. Die Webseiten von IBM sind immer noch furchtbar. Aber wenn man es geschafft hat, ein Ticket zu eröffnen (geht ja auch telefonisch), bekommt man meiner Erfahrung nach hervorragenden Support. Schnell und kompetent. Und IBM bleibt solange am Ball, bis das Problem gelöst ist. Das klappt natürlich alles am besten, wenn man sich komplett in der IBM Schiene befindet. Bei einem Problem im RDi bezieht der Support bei Bedarf z.B. automatisch Leute von der Datenbankentwicklung mit ein.
Ich muss allerdings zugeben, dass ich nicht weiß, wieviel der Wartungsvertrag kostet.
-
Warum kapselst du nicht Dieter's Lösung in ein eigens PGM und ließt (rufst) das PGM als SPECIAL Datei auf. Dann sollte doch alles so sein wie gewünscht...
-
Danke für deine Anwort.
Aber wie ich schon sagte, ist das Installieren einer größeren Software nur eine Option, wenn wir keine einfachere Möglichkeit finden. Dieter Benders Lösung läuft ja letztendlich auch darauf hinaus, dass wir den Redis mittels Java ansprechen. Das könnten wir auch machen, indem wir eine Java-Klasse in RPGLE embedden. Das würde für uns weniger "fremde" Software bedeuten. Ist auch nicht schön, da in dem RPG Job dann immer eine VM hochgezogen wird. Aber das wäre in unserem Fall nicht tragisch, da der Job sowieso als Batch-Job den ganzen Tag über laufen wird.
Aber noch lieber wäre mir eben eine Lösung, die nativ mit RPG auskommt oder auch mit SQL. Aber das scheint es ja nicht zu geben bzw. das wohl noch niemand aus dem Forum programmiert.
Dieter
Similar Threads
-
By RPG_KL in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 30-07-20, 19:04
-
By berg01796 in forum IBM i Hauptforum
Antworten: 10
Letzter Beitrag: 15-11-16, 11:55
-
By Der Gute in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 01-07-02, 11:11
-
By Bärnd in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 29-05-02, 15:58
-
By Andreas Herzfeldt in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 02-07-01, 06:51
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