libnodave Java Performance

asalmut

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Verwende die Javaversion von Libnodave um mittels ISO-on-TCP Daten von einer S7 400 SPS mit Ethernet-CP auszulesen.
Mein Java-Programm liest in einem Thread kontinuierlich Daten aus einem DB aus (ca. 80 Bytes).
Einmal auslesen dauert ca. 120ms. Da meine Anwendung etwas zeitkritisch ist versuche ich die Lesezeit zu verkürzen.
Habt Ihr Tips zu diesem Thema?
Welche Lesezeiten habt Ihr erreicht.
Ist die C Variante von Libnodave schneller?

Weiters ist mir aufgefallen, dass es beim Lesen von mehr als 100 Bytes zu einer Exception kommt, und keine Daten gelesen werden.
Ist 100 Bytes alles was möglich ist?
 
Einmal auslesen dauert ca. 120ms. Da meine Anwendung etwas zeitkritisch ist versuche ich die Lesezeit zu verkürzen.
Habt Ihr Tips zu diesem Thema?
Es hat schon einmal ein user dazu geschrieben und eine Änderung vorgeschlagen, die es schneller machen soll. Ich habe aber die e-mail nicht zur Hand..
Ist die C Variante von Libnodave schneller?
Wahrscheinlich ja. Einfach mal einen benchmark starten:
testISO_TCP -b <IP>
Weiters ist mir aufgefallen, dass es beim Lesen von mehr als 100 Bytes zu einer Exception kommt, und keine Daten gelesen werden.
Ist 100 Bytes alles was möglich ist?
Nein, wahrscheinlich ist die Größe eines Puffers zu klein. Einfach mal den Stack-Trace der Exception anschauen.
Eine S7-400 sollte etwa 480 (PDU-Größe) -22 (Overhead) bytes am Stück übertragen können.
Die JAVA-Version ist halt nicht sehr ausgereift.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen

Ich habe im Moment das gleiche Problem.
Ich kann bis und mit 102Bytes gleichzeitig auslesen, ab 103 gibt es einen Fehler.
Was ich genau anpassen muss damit dies funktioniert habe ich leider noch nicht gefunden.
Kann mir hier jemand helfen?

Besten Dank
 
Zurück
Oben