Häufigkeit der Kursabfragen limitieren

“Aus Gründen” habe ich mir das mal angesehen und wollte selbst auch schon einen Thread starten, mit dem Vorschlag, die Frequenz einer Kursaktualisierung konfigurierbar zu machen. Derzeit sind das IIRC 30 Minuten zwischen zwei Abrufen. Beim Start werden doppelt so viele Abfragen gestartet, weil zum einen die historischen Kurse abgerufen werden, als auch die aktuellen, auch wenn dort eingestellt ist, dass die gleiche URL wie bei den historischen Daten verwendet werden soll.

Wie gesagt finde ich, dass man das konfigurieren können soll, inklusive einem “Offline Modus” bzw. der Einstellung, ob beim Appstart sofort ein Refresh stattfinden soll. Die Defaultzeit kann dann gleich mal ein ganzes Stück nach oben gestellt werden. Wer’s öfter aktualisiert haben will, kann das ja dann wieder runterstellen bzw. den Abruf manuell starten.

Die aller erste Frage die man sich stellen muss, ist die Kursabfrage wirklich ein Problem, oder hören wir das Grad wachsen?

Ich bin mir nach wie vor uneins.

Sicher erzeugen alle PP User einen gewissen Traffic bei den üblichen Verdächtigen, aber ist dieser signifikant?
Wissen tue ich es nicht, aber vorstellen kann ich es mir auch nicht. Ich meine wir sprechen hier über die größten Finanzportale und dürfen nicht vergessen das sie API’s propagieren, sowie diese auch einschränken könnten.

Die 6 mio PortfolioReport Abfragen halte ich für beachtlich, aber bei heutiger Hardware für easy machbar. Was den Traffic betrifft könnte das anders aussehen und hängt stark mit dem Betreiber und dem Vertrag zusammen.

Schönen Sonntag

Ich weiß es auch nicht, aber genau deshalb wollte ich es ja Mal zur Diskussion stellen.

Um APIs geht es mir wie Eingangs geschrieben auch nicht. Aber gerade Tabelle auf Webseite ist ja keine API…

War nicht böse gemeint Jo. Bin ja bei dir.

Wie es bei Websiten und dem “abziehen” aussieht, vermag ich nicht zu beurteilen, denke aber das es vom Traffic erst einmal keinen Unterschied zu einem “Besuch” auf der Seite macht. Der Client muss die Daten in jedem Fall einmal vom Server ziehen.

Das gesamte herunterladen von historischen Kursen mal ausgenommen.

Zwecks json, hier könnte der Betreiber, kleine, große bis unüberwindbare Hindernisse einbauen.
Haben wir ja in der Vergangenheit gesehen.
Daher würde ich json erst einmal auch nicht als Problem sehen.

1 Like

Das ist zwar richtig, aber ein echter Besucher wird nicht 50 (oder 500) Seiten in kurzer Zeit aufrufen. Und ein echter Besucher sieht die Werbebanner und bringt dadurch Geld ein.

Wenn ich sowas lese,

höre ich eher Bambus wachsen. Sowas finde ich krank, auch ohne zu wissen wo er sich die Kurse holt.

Das jemand Hindernisse einbaut weil zu viel Traffic entsteht, der nicht mit den Websiteaufrufen korreliert - wird dann zum Problem, weil json dann nicht mehr funktioniert. Das will doch keiner von uns.

Wenn das der Fall ist, wie schwierig ist es, das zu ändern?

Und grundsätzlich bei historischen Kursen:
Muss denn überhaupt nach historischen Kursen geguckt werden, wenn für den vorherigen Handelstag schon ein historischer Kurs vorhanden ist?
M.E. nicht, aber ich kann nicht einschätzen wie aufwendig so eine Änderung wäre.

2 Likes

Ja, denn nicht alle Quellen liefern bei den historischen Kursen auch die aktuellen. Ob man die aktuellen so häufig braucht, genau darum geht es mir :slight_smile:

Aber ja bei dem von dir genannten Beitrag habe ich auch Mal wieder Spucke bekommen…

Das stimmt natürlich.

Ging mir genauso als ich es gelesen hab.

Nein natürlich nicht. Das ganze spiegelt auch nicht meine persönliche Meinung. Ich finde nur das man zu einem gänzlichen Diskurs auch alle Blickwinkel auf den Tisch bringen sollte.

Allgemein. Natürlich schaun wir aus unsere PP Sicht auf das Problem. Aber wieviele sind wir im Vergleich zu allen?

Das man unterschiedliche Möglichkeiten nutzen kann ist unbestritten, wird es einen signifikanten Unterschied machen, ich weiß es nicht.

Viele Grüße

Evtl. wird hier einfach PP nur als Kursholttool verwendet. Dann hat man am Ende ein sich nicht veränderndes Eingangsformat in einem anderen Tool, in dem dann die eigentliche Verwaltung stattfindet.

Dazu müsste man sich das genauer anschauen, was ich nicht gemacht habe. Ich habe mich nur gewundert, warum bei mir beim Start von PP immer knapp 200 Kurse abgefragt werden, was eben gut dem Doppeltem entspricht, was ich in PP an aktiven Wertpapieren habe.

Derzeit sind die Abrufprozesse von aktuellen und historischen Kursen zwei getrennte solche, der eine weiß daher nichts vom anderen. Daher kann der eine seine Aktion nicht ausfallen lassen, wenn der andere die gleiche URL verwendet. Eventuell tut er das aber schon, wenn die Einstellung “wie historische Kurse” vorgenommen wurde und die Anzeige der Anzahl an noch anstehenden Kursabrufen unten links ist schlicht irreführend.

Eventuell ist das schon der Fall. Der regelmäßige Abruf kommt dann von der Ermittlung des aktuellen Kurses. Müsste ich aber im Detail nachschauen, denn wenn man Online->Kurse aktualisieren (nur aktive WP) auswählt, werden wieder beide Typen abgerufen, so dass ich mal den zeitbasierten Abruf abwarten muss, ob da dann eine geringere Zahl angezeigt wird.

Genau. Und die nächste Frage wäre, welche Konsequenz eine hohe Anzahl von Zugriffen hätte und vor allem für wen.

Typischer Weise wird ein Absender ja dann irgendwann blockiert, wenn er zuviel Traffic erzeugt. Da aber jeder PP-Nutzer seine Abfragen von einer eigenen IP auslöst, wäre die Frage, ob die Website dann PP oder dem einzelnen User die Schuld gibt. Dafür wäre es wichtig zu wissen, ob die Abfragen irgendwie PP-spezifisch sind, so dass auch alle anderen PP-User im Falle des Falles blockiert werden würden.

Nichtsdestotrotz würde es sicherlich nicht schaden, die Aktualisierungshäufigkeit konfigurierbar zu gestalten, da eine sehr häufige Aktualisierung vermutlich nur in wenigen Fällen notwendig ist.

moin miteinander,

wir sollten uns vor Augen führen, was die eigentliche Idee hinter PP ist. Es ist nun mal kein Daytradingwerkzeug, auch ist es kein Programm, um kurzfristige Entscheidungen zu planen. Dafür gibt es andere Werkzeuge. Alleine die Tatsache, dass die meisten -wenn nicht sogar alle- Kursquellen, die wir aus PP heraus anzapfen, sowieso nur verzögerte Kurse liefern, macht es eigentlich sinnfrei, es für diese oder ähnliche Dinge heranzuziehen. PP soll uns einen Überlick über unsere mitunter verstreuten Investments geben.

Ich denke, eine Abfrage pro Papier und Tag ist ausreichend. Genau diese Art Internetseitenverkehr, viele Abfragen von einer Adresse mögen Anbieter nicht und sind garantiert in Protokollscripten verankert und bei bedarf schnell zu filtern. Zusammen mit dem anfragenden Client, sind wir dann alle schnell ausgesperrt. Wir sollten den kostenlosen Dienst wertschätzen und nicht übermäßig strapazieren.

Die Abfragefrequenz einstellbar zu machen, halte ich für unnötig, denn das erste, was gemacht werden würde, ist den Regler auf maximale Frequenz einzustellen. Wir leben nun mal in einer Zeit, in der Rücksichtnahme von den wenigsten Eltern weitervermittelt wird.

2 Likes

Eine Idee wäre, bei der Neuanlage von Wertpapieren die Voreinstellung unter „aktueller Kurs“ zu ändern. Im Moment ist die „wie historische Kurse“, und man muss es manuell auf „kein automatischer Download“ ändern; möglicherweise besser wäre es umgekehrt.

Bei Ariva werden nicht nur Schlusskurse angezeigt, sondern untertägig auch der jeweils aktuelle Kurs; d.h. der Kurs verändert sich von Abruf zu Abruf.

1 Like

Naja erreichte Limit’s würde damit aber konterkariert werden.

Sicherlich richtig, aber so lange die Intention von PP nicht ad absurdum geführt wird, bin ich froh vieles sehr gut in einem Programm ab zu decken.

Hat mir oft geholfen mich danach im Depot an zu melden, Kurs zu verifizieren und dann zu handeln.

D’accord.

Ist dem so, oder gehts primär um die IP?

Volle Zustimmung, aber wieviel machen wir PP Nutzer aus, und wieviel die “anderen”?

Fürchte ich auch.

Viele Grüße

Hm, scheint nicht der Fall zu sein. Folgendes Testszenario:
Eine xml mit nur einem Wertpapier, historische Kurse auf ariva, aktuelle wie historische
Bildschirmfoto_2024-02-19_11-54-12


Nur dieses xml wird beim Start von PP geöffnet.
Traffic mitschneiden

sudo tcpdump -i eth0 -q '(udp port 53) or (tcp port 443)' -w ariva_test.pcap

PP starten


Man sieht den DNS Request nach ariva.de, mit Response 82.97.160.109

Abgefragt wird alle 30 min, wie erwartet.

In der Statistik sieht man aber nicht mehr Traffic zum Startzeitpunkt von PP, als bei den nächsten beiden Zeitpunkten.
Also wird nach meiner Interpretation, bei der Kombination “historische von Website” und “aktuelle wie historische” am Anfang nicht doppelt abgeholt.

Normalerweise wird dann die Quell-IP der Requests geblockt. Wenn aber ein Seitenbetreiber merkt das die Flut von einem bestimmten User-Agent ausgeht, ist es auch möglich diesen komplett zu blocken.
Mit welchem User-Agent meldet sich PP?


PP tarnt sich als Firefox in der Version 25.
Das ließe sich sicherlich zur besseren Tarnung aktualisieren.

1 Like

Dann wird es wohl falsch angezeigt. Bei mir wird beim Abruf der Kurse eine dreistellige Anzahl noch herunterzuladender Kurse angezeigt. Ich habe aber keine dreistellige Zahl Wertpapiere, selbst wenn ich die Inaktiven dazuzähle.

Vielleicht habt ihr beide recht, und PP startet zwar mehrere Anfragen, nutzt für erneute Abrufe identischer Adressen aber die zwischengespeicherte Antwort der ersten Anfrage, wodurch dann kein Netzwerkverkehr mehr entsteht?

Mein PP bezieht einige Kurse von einem von mir selbst verwalteten Webserver. Dort kann ich gut sehen, welche Anfragen den Server tatsächlich erreichen. Bei Kursen mit Einstellung “wie historische Kurse” ist es beim Aktualisieren nur eine Anfrage.

Interessanterweise werden beim Öffnen des Fensters zum Editieren des Wertpapiers aber mehrere (3-8) Anfragen gesendet, die trotz identischer URL alle den Server erreichen.

Zum Thema selbst denke ich, dass möglichst sparsame Standardeinstellungen das Problem (wenn es denn eines ist) entschärfen sollten.

3 Likes

Die Info steckt in

name.abuchen.portfolio/src/name/abuchen/portfolio/util/OnlineHelper.java

und ist OS-abhängig

package name.abuchen.portfolio.util;

/* package */ public final class OnlineHelper
{

    @SuppressWarnings("nls")
    /* package */ public static String getUserAgent()
    {
        String os = System.getProperty("os.name", "unknown").toLowerCase();
        if (os.startsWith("windows"))
            return "Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36";
        else if (os.startsWith("mac"))
            return "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.73.11 (KHTML, like Gecko) Version/7.0.1 Safari/537.73.11";
        else
            return "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:25.0) Gecko/20100101 Firefox/25.0";
    }

}

Bei Windows könnte man z.B. auf

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36

ändern, bei Mac weiß ich nicht (kann mal bitte ein Mac-User mit aktuellem Browser what is my user agent - Google Suche aufrufen und berichten?), beim Rest könnte

Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0

drinstehen.

1 Like

Für Chrome:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36

Für Safari:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Safari/605.1.15

Allerdings MacOS Venura (13.6)
und nicht
Sonoma (14.3.1)

Viele Grüße

1 Like

Safari unter Mac OS Sonoma (14.3.1)

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.3.1 Safari/605.1.15
1 Like