Neu Massiver jtl-shop-cron aufruf

lord_icon

Gut bekanntes Mitglied
21. Juli 2007
199
8
"Ihre Datenbank entspricht dem aktuellen Systemstand (Version 5.4.0). "

Moin moin...

im Folge eine Serverprüfung haben wir massiven Aufruf vom jtl- shop-cron erhalten.
Nach Stundenlander suche würde ich nun folgenden (dummen) ablauf VERMUTEN

Code:
Besucher/Bot ruft Shopseite auf
        ↓
JTL-Shop startet intern den Cron-Starter
        ↓
includes/src/Cron/Starter/Curl.php
        ↓
Server ruft sich selbst per curl auf
        ↓
POST /includes/cron_inc.php
User-Agent: jtl-shop-cron
IP: ***.***.***.***
        ↓
cron_inc.php lädt den Shop und prüft Cron/Queue

Sprich: JEDER Aufruf der Website läd den Cron.

Folgende Auszüge was 1h Logauszug wiederspiegelt:
Code:
awk '$4 >= "[21/May/2026:08:40" {
    split($1, ip, ".")
    $1 = "***.***.***." ip[4]
    print $1, $7, $9, $10, $12
}' /var/www/clients/client3/web20/log/access.log \
| sort | uniq -c | sort -nr | head -80


    319 ***.***.***.21 /includes/cron_inc.php 200 4353 "jtl-shop-cron"
     10 ***.***.***.151 /dbeS/mytest.php 200 3927 "JTL-Wawi/1.11.9.0
     10 ***.***.***.151 /dbeS/GetKunden_xml.php 200 473 "JTL-Wawi/1.11.9.0
     10 ***.***.***.151 /dbeS/GetData_xml.php 200 473 "JTL-Wawi/1.11.9.0
     10 ***.***.***.151 /dbeS/GetBestellungen_xml.php 200 473 "JTL-Wawi/1.11.9.0
      9 ***.***.***.151 /dbeS/GetZahlungen_xml.php 200 473 "JTL-Wawi/1.11.9.0
      8 ***.***.***.37 /_updateconsent 200 4408 "Mozilla/5.0
      8 ***.***.***.151 /dbeS/lastjobs.php 200 473 "JTL-Wawi/1.11.9.0
      7 ***.***.***.198 /admin/io 200 562 "Mozilla/5.0
      7 ***.***.***.151 /dbeS/QuickSync_xml.php 200 473 "JTL-Wawi/1.11.9.0
      7 ***.***.***.117 /site.webmanifest 200 1050 "Mozilla/5.0
      6 ***.***.***.38 /_updateconsent 200 4408 "Mozilla/5.0
      6 ***.***.***.198 /admin/io 200 4423 "Mozilla/5.0
      4 ***.***.***.8 /sitemap_index.xml 500 4342 "Mozilla/5.0
      4 ***.***.***.39 /robots.txt 200 4960 "Mozilla/5.0
      4 ***.***.***.202 /site.webmanifest 200 688 "Mozilla/5.0
      4 ***.***.***.202 /site.webmanifest 200 4534 "Mozilla/5.0
      4 ***.***.***.198 /admin/io 200 4931 "Mozilla/5.0
      3 ***.***.***.37 /robots.txt 200 4960 "Mozilla/5.0
      3 ***.***.***.226 /_updateconsent 200 4349 "Mozilla/5.0
      3 ***.***.***.202 /asset/jtl3.js?v=1.4.0 200 110607 "Mozilla/5.0
      3 ***.***.***.198 /admin/io 200 1070 "Mozilla/5.0
      2 ***.***.***.72 /_updateconsent 200 4349 "Mozilla/5.0
      2 ***.***.***.70 /media/image/product/175752/sm/outcast-belly-boat-fish-cat-4-lcs-olive.jpg 404 4293 "Mozilla/5.0
      2 ***.***.***.6 /_updateconsent 200 4349 "Mozilla/5.0
      2 ***.***.***.63 /_updateconsent 200 4349 "Mozilla/5.0
      2 ***.***.***.60 /media/image/product/230015/sm/zebco-magic-cold-smoke-spiral-kaltraeucher-generator.jpg 200 8296 "Mozilla/5.0
      2 ***.***.***.52 /robots.txt 200 4938 "Mozilla/5.0
      2 ***.***.***.52 /media/image/variation/35623/md/nays-mtl-lf-65_variante-waehlen---dekor_t-05.jpg 200 30928 "Mozilla/5.0
      2 ***.***.***.41 /_updateconsent 200 4349 "Mozilla/5.0
      2 ***.***.***.40 /media/image/product/227180/sm/sportex-carat-gt-s-spin-255m-50g.webp 200 2888 "Mozilla/5.0
      2 ***.***.***.38 /robots.txt 200 4960 "Mozilla/5.0
      2 ***.***.***.37 /_updateconsent 200 562 "Mozilla/5.0
      2 ***.***.***.37 /_updateconsent 200 4349 "Mozilla/5.0
      2 ***.***.***.248 /robots.txt 500 4125 "Mozilla/5.0
      2 ***.***.***.248 /robots.txt 301 443 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/themes/base/fonts/montserrat/Montserrat-SemiBold.woff2 200 85548 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/themes/base/fontawesome/webfonts/fa-regular-400.woff2 200 13606 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/js/app/views/productdetails.js 200 693 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/js/app/views/header.js 200 2426 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/js/app/snippets/form-counter.js 200 1003 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/js/app/plugins/tabdrop.js 200 1319 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/js/app/plugins/navscrollbar.js 200 2201 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/js/app/helpers.js 200 1258 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/js/app/globals.js 200 491 "Mozilla/5.0
      2 ***.***.***.216 /templates/NOVA/js/app/app.js 200 521 "Mozilla/5.0
      2 ***.***.***.216 /plugins/jtl_paypal_commerce/frontend/template/ecs/jsTemplates/standaloneButtonTemplate.js 200 535 "Mozilla/5.0
      2 ***.***.***.216 /plugins/jtl_paypal_commerce/frontend/template/ecs/jsTemplates/activeButtonLabelTemplate.js 200 523 "Mozilla/5.0
      2 ***.***.***.216 /plugins/jtl_paypal_commerce/frontend/template/ecs/init.js 200 1586 "Mozilla/5.0
      2 ***.***.***.216 /plugins/jtl_paypal_commerce/frontend/js/paypal.browser.min.js 200 2131 "Mozilla/5.0
      2 ***.***.***.216 /bilder/intern/shoplogo/jtlshoplogo.png 200 38793 "Mozilla/5.0
      2 ***.***.***.214 /media/image/product/223387/md/bkk-wide-gape-hook.webp 200 18461 "Mozilla/5.0
      2 ***.***.***.210 /_updateconsent 200 4349 "Mozilla/5.0
      2 ***.***.***.205 /_updateconsent 200 547 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/themes/base/fonts/opensans/open-sans-600.woff2 200 15288 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/js/custom.js?v=1.4.0 200 520 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/js/app/views/productdetails.js 200 693 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/js/app/views/header.js 200 2426 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/js/app/plugins/tabdrop.js 200 1319 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/js/app/plugins/navscrollbar.js 200 2201 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/js/app/helpers.js 200 1258 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/js/app/globals.js 200 491 "Mozilla/5.0
      2 ***.***.***.205 /templates/NOVA/js/app/app.js 200 521 "Mozilla/5.0
      2 ***.***.***.205 /plugins/jtl_paypal_commerce/frontend/template/instalmentBanner/jsTemplates/instalmentBannerPlaceholder.js 200 526 "Mozilla/5.0
      2 ***.***.***.205 /plugins/jtl_paypal_commerce/frontend/template/ecs/jsTemplates/standaloneButtonTemplate.js 200 535 "Mozilla/5.0
      2 ***.***.***.205 /plugins/jtl_paypal_commerce/frontend/template/ecs/jsTemplates/activeButtonLabelTemplate.js 200 523 "Mozilla/5.0
      2 ***.***.***.205 /plugins/jtl_paypal_commerce/frontend/template/ecs/init.js 200 1586 "Mozilla/5.0
      2 ***.***.***.205 /plugins/jtl_paypal_commerce/frontend/js/paypal.browser.min.js 200 2131 "Mozilla/5.0
      2 ***.***.***.205 /mediafiles/Bilder/partner.png 200 17466 "Mozilla/5.0
      2 ***.***.***.205 /favicon.svg 200 42372 "Mozilla/5.0
      2 ***.***.***.205 /bilder/intern/shoplogo/jtlshoplogo.png 200 38793 "Mozilla/5.0
      2 ***.***.***.205 /asset/jtl3.js?v=1.4.0 200 110622 "Mozilla/5.0
      2 ***.***.***.202 /_updateconsent 200 4415 "Mozilla/5.0
      2 ***.***.***.202 /asset/jtl3.js?v=1.4.0 200 58543 "Mozilla/5.0
      2 ***.***.***.202 /asset/jtl3.js?v=1.4.0 200 110622 "Mozilla/5.0
      2 ***.***.***.170 /_updateconsent 200 4349 "Mozilla/5.0
      2 ***.***.***.160 /media/image/product/232166/sm/shimano-zodias-2026-spinning~2.jpg 200 3953 "Mozilla/5.0
      2 ***.***.***.14 /media/image/product/219297/sm/ba-spin-mh-search-jig-238cm-28g.jpg 200 13565 "Mozilla/5.0
      2 ***.***.***.115 /templates/NOVA/themes/base/fonts/opensans/open-sans-regular.woff2 200 18291 "Mozilla/5.0
      2 ***.***.***.115 /templates/NOVA/themes/base/fonts/opensans/open-sans-600.woff2 200 18787 "Mozilla/5.0

319 Aufrufe innerhalb von 60 Minuten. Alle ca. 18sek Aufruf.

Code:
awk '$4 >= "[21/May/2026:08:40" && $7 == "/includes/cron_inc.php" {print $1, $7, $9, $10, $12}' /var/www/clients/client3/web20/log/access.log \
| sort | uniq -c | sort -nr

    319 <eigene-IP-Adresse> /includes/cron_inc.php 200 4353 "jtl-shop-cron"
Sind zwar nur n bissel mehr als 4KB... aber 1,4MB unnötigerweise je Stunde bewegt.

Hintergrund der Sucherei ist ein langerser Shop bzw. gut ausgelasteter Server.

Code:
ps -o pid,ppid,user,etime,%cpu,%mem,cmd -u web20

4115051 web20 44.0% php-fpm: pool web20
4115052 web20 47.1% php-fpm: pool web20
4115053 web20 43.1% php-fpm: pool web20
4115054 web20 47.0% php-fpm: pool web20
4115055 web20 45.4% php-fpm: pool web20
4115056 web20 39.7% php-fpm: pool web20

Frage: Könnt Ihr das nachstellen? Bzw. Wieso geht JTL diesen dummen Weg?
Klar... es ist der schnellste/einfachste Weg um was abzuarbeiten und der Kundenfreundlichste.
Der Admin/Kunde braucht nicht mehr per Crontab -e irgendwas eintragen... und Fehler machen.
ABER: der aktuelle Weg scheint bei jeder Website Aufruf ausgeleiferrt zu werden.

WENN meine Vermutung so stimmt, dann wäre doch:
* Schreibe ein cron.ini oder cron. log/cron.txt wo eine Uhrzeit eingetragen wird.
* Bot/Besucher/Seitenreload ruft weiterhin die cron ab => cron prüft, ob 60sekunden vergangen sind:
* sind nicht = abbruch
* sind erreicht = weiterer Scriptlauf mit DB Abfragen und am ende = neuer Timestamp setzen

Würde ich jetzt so gerne umsetzen wollen... frage mich aber, was ich da noch evtl. alles abschießen würde.
Oder gibt es andere Lösungen ?

Danke
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
8.579
2.668
Berlin
Firma
css-umsetzung
Warum deaktivierst du das nicht einfach im Shop und verwendest einen vernünftigen cron, der je nachdem jede Minute oder einmal die Stunde schaut ob es etwas zu tun gibt.
ich lasse den grundsätzlich jede Minute starten.
 
  • Gefällt mir
Reaktionen: lord_icon

NoOne

Sehr aktives Mitglied
16. März 2024
607
209
Nein, das passiert nicht bei jedem Aufruf, es sei denn man setzt den Pseudo-Cron (bzw. die Einstellung "Server-to-Server jeden X-ten Aufruf starten") auf 1. Und das ist vermutlich so implementiert, weil nicht jedes Hosting Cronjobs anbietet.
 

JohnFrea

Sehr aktives Mitglied
21. September 2017
961
302
Was ist denn die Alternative, wenn der Server (z.B. All-Inkl) Cron Jobs bietet?
Ich finde gar keine Doku, welche URL der externe Cronjob für den Shop aufzurufen hat...
 

deliman

Sehr aktives Mitglied
13. Februar 2016
1.044
131
Würde ich auch gern wissen, da schon mal nach der passenden URL für einen Cron auf dem Server gesucht. Irgendwo im Forum war der spezielle angegeben aber wenn man sich den passenden Thread nicht gleich speichert... Dazu findet man auch im JTL Wiki nur etwas zu den Shopinternen Crons, nicht aber wenn man die alternativ auf dem Server selber nachbilden will.
 

JohnFrea

Sehr aktives Mitglied
21. September 2017
961
302
@NoOne vielen Dank.
Aber ich verstehe nicht, wie das am besten umzusetzen ist.
In welchem Intervall sollte man die URL durch einen Cronjob aufrufen?
Die Infos auf der Seite scheinen sich zu widerprechen...
 
Ähnliche Themen
Titel Forum Antworten Datum
JTL 5.7.1 Widerrufsformular massiver SPAM Einrichtung JTL-Shop5 3
Neu Copy/Paste Abstürze seit JTL-Wawi 2.0.5 User helfen Usern - Fragen zu JTL-Wawi 4
Gelöst: Störung bei LInk11 - JTL- Shops teilweise nicht erreichbar Störungsmeldungen 1
JTL Update auf 1.9 , danach Import Kundenspezifrische Preise velerhaft JTL-Wawi 1.9 0
Wie übernehme ich Artikelnamen von JTL in den neuen Kaufland Niederlande-Verkaufskanal? JTL-Wawi 1.11 1
Neu Wie stelle ich Retouren in JTL für DPD ein? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu JTL Wawi 1.11.11 - Zahlungsabgleich bei FYRST Bank verlangt immer Passwort User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL Shop Plugin - BD Automatisierter Widerruf (Von Händler für Händler - Schluss mit Mail-Chaos & Spam-Sorgen!) Plugins für JTL-Shop 0
Neu Der wahrscheinlich östlichste JTL Servicepartner: Standortvorteil, faire Preise und vieles mehr Dienstleistung, Jobs und Ähnliches 16
Neu Welche JTL Shop Plugins oder kleinen Hilfstools würden euch im Alltag wirklich helfen? Plugins für JTL-Shop 0
Neu JTL ShippingLabels - Meldungen JTL-ShippingLabels - Fehler und Bugs 7
Neu Beta-Tester gesucht: Produktdaten aus Artikelfotos schneller für JTL/CSV vorbereiten Dienstleistung, Jobs und Ähnliches 0
Neu oAuth Credentials Login mit JTL .. WO? User helfen Usern 1
Neu Installationsdatei für JTL‑Wawi 1.9.6.5 Installation von JTL-Wawi 2
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
Neu JTL Wawi 2.0 oder höher WooCommerce-Connector 0
Changelog jtl Wawi 2.0.5 JTL-Wawi 2.0 10
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
JTL Wawi 1.11.xx langsam unbenutzbar! JTL-Wawi 1.11 4
Neu Plugin: JTL Exportformat Google Shopping gibt <g:google_product_category> unter Shop 5.7.1 und Wawi 2.0.4 nicht aus Plugins für JTL-Shop 1
Neu Widerrufsbutton für JTL-Shop 4 Allgemeine Fragen zu JTL-Shop 17
Neu Rabatte aus dem JTL-Shop werden in der Wawi nur als Netto-Preis übernommen, Rabatt % gehen verloren Onlineshop-Anbindung 0
JTL Anmeldung letzter Benutzer JTL-Wawi 1.11 3
Test-Kunden als solche in JTL markieren, um die Auswertungen sauber zu halten? JTL-Wawi 1.11 1
Neu Ab Wawi 1.10 - JTL.Wawi.Pos.exe direkt ohne JTL-Administrator starten? Allgemeine Fragen zu JTL-POS 2
Neu JTL-Shop - Wechsel von Test zum Livebetrieb - was beachten ? Installation / Updates von JTL-Shop 2
JTL APP - Fehlermeldung nach Update auf Wawi 1.11. JTL-Wawi App 6
Eigener Drittshop-Connector (jtl/connector 5.3): valide Variationskombinationen werden mit „besitzt keine Variationen" nicht gesendet JTL-Wawi 1.11 1
JTL Wawi 1.11. - Fenstergröße - Artikel auf Einkaufsliste setzen JTL-Wawi 1.11 13
Neu Problem mit dem JTL-Connector – Invalid Shopify connection credentials. Shopify-Connector 3
Neu JTL Artikelanlage mit KI beschleunigen User helfen Usern - Fragen zu JTL-Wawi 2
Neu JTL-Wawi Shopabgleich per E-Mail überwachen (Warnungen & Fehler) Onlineshop-Anbindung 1
Neu Helfen Lösungen wie Unicorn wirklich, um die teuren Preise bei JTL zu vermeiden? Amazon-Anbindung - Ideen, Lob und Kritik 1
Neu Meta Shop seit September 2025: JTL-Lösung für neue Checkout-URL gesucht Allgemeine Fragen zu JTL-Shop 0
Neu Bug? Führende Nullen bei Sendungsnummern verschwinden in JTL-Wawi 2.0.3 JTL-ShippingLabels - Fehler und Bugs 1
DPD Cloud Labeldruck auf Zebra LP 2844-Z seit Update auf JTL-Wawi 1.11.x fehlerhaft JTL-Wawi 1.11 3
JTL nach Update auf 2.0.3 im Bereich „Kunden“ extrem langsam JTL-Wawi 2.0 1
Neu DHL 4.0 mit JTL-ShippingLabels funktioniert nicht JTL-ShippingLabels - Fehler und Bugs 2
JTL-Wawi sucht falschen ShopType nach Gambio-Update JTL-Wawi 1.7 2
Neu JTL Lizensserver ist nicht erreichbar eBay-Anbindung - Fehler und Bugs 0
Nach update 1.8>1.11 Kein Mandant in JTL-Wawi gefunden JTL-Wawi 1.11 5
Angebliche externe Aufträge "für Rechnungserstellung freigeben" und Rechnungen erstellen. Gibt es dazu eine akzeptable Erklärung von JTL? JTL-Wawi 1.11 1
Rabatt Coupons in Verbindung mit Staffelpreisen - JTL 1.11.9, JTL Shop JTL-Wawi 1.11 0
Neu JTL → Shopify Connector: MappingTablesException / „Endpoint id is empty“ – betroffene Artikel aus Logs per SQL finden Shopify-Connector 2
Neu Abschaltung DHL versenden 3.0 vs JTL Shipping JTL-ShippingLabels - Ideen, Lob und Kritik 4
Neu JTL PayPal Checkout 2.3.0 ... 1. Update klappte nicht, 2. Update nun Eintrag doppelt Plugins für JTL-Shop 24
Fehler beim Abgleich mit dem JTL-Shop JTL-Wawi 2.0 12
Neu Warnung: Attribute via JTL Funktion JTL_GetProductAttribute() funktioniert nicht zuverlässig Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 0
Neu Eignes Feld aus Auftrag in Rechnung anzeigen lassen JTL-WaWi 1.11.10 Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2

Ähnliche Themen