Cronjobs und all-inkl

Hallo, ich bekomme auch die Cronjobs irgendwie nicht ans Laufen. Wenn ich sie über (…/ackend/cron/) aufrufe, dann werden sie wohl ausgeführt. Aber eben nicht zeitgesteuert. Jetzt bin ich auf einem all-inkl webspace, und ich habe hier im Forum gelesen dass man bei all-inkl einen Cronjob auf diese Domain einrichten muss. Ich frage mich dann nur, wie es mit den Zeitintervallen aussieht. Wenn ich zu Beispiel im all-inkl einen cronjob auf die URL (…/ackend/cron/) einrichte der z.B. stündlich ausgeführt wird, dann ist es ja so, als würde ich die URL 1x jede Stunde von Hand aufrufen. Dann müsste ich doch also bei unterschiedlichen Intervallen alles komplett bei all-inkl mit verschiedenen Intervallen einrichten, also je shopware cron, einen bei all-inkl. Das kann es doch nicht sein. Kann mir jemand der evtl auch bei all-inkl ist erklären, wie ich die Shopware Crons konfiguriere? Danke

Hi, ne, du musst eigentlich nur einen Cronjob auf /backend/cron einrichten - Shopware kümmert sich um die Rest und stößt die internen Cronjobs im richtigen Interval an. Damit das geht, muss der Interval deines All-Inkl-Cronjobs genau so groß oder kleiner sein, wie der kleine Shopware-Cron-Interval (kannst du in den Grundeinstellungen einsehen). lG dsn

Hallo Daniel, danke für die Erklärung. Allein die Logik will sich mir noch nicht so ganz erschließen. Heisst das, wenn die URL /backend/cron aufgerufen wird, dass dann die einzelnen cronjobs zu dem Zeitpunkt der dort jeweils als nächster Ausführungszeitpunkt eingetragen ist, laufen? (nur damit ich es auch verstehe…) Btw: ich habe eben gesehen, dass bei mir alle cronjobs einmal täglich ausgeführt werden sollen, was mir ja vollkommen reicht. :wink:

Hallo senana, Ich bin auch bei All-Inkl und da geht das einrichten recht unproblematisch. [quote]Heisst das, wenn die URL /backend/cron aufgerufen wird, dass dann die einzelnen cronjobs zu dem Zeitpunkt der dort jeweils als nächster Ausführungszeitpunkt eingetragen ist, laufen? (nur damit ich es auch verstehe…)[/quote] Das ist richtig. Wenn du den Cron nur einmal ausführen lässt werden die einzelnen Cronjob’s nur einmal am Tag ausgeführt zu dem Zeitpunkt der bei den unterschiedlichen Cron’s eingestellt ist, was ja für die meisten Anwendungen reicht. Hast du aber eine Bezahlart wie Amazon sollte diese Schnittstelle von deinem Shop zu Amazon öfter wie nur ein mal am Tag “kommunizieren” so das man dann den Cron bei All-Inkl öfter ausgeführt werden muss (z.B. 10 min Takt). Unabhängig davon werden die anderen Cron’s, die du in Shopware aktiviert hast, immer im dem entsprechenden Intervall ausgeführt, der in dem Cronjob im Shopware-Backend angeben ist.

Hallo body62, danke für die Erklärung. Das hört sich gut an. Dann werde ich für AmazonPayments die Frequenz bei all-inkl erhöhen… thx

Hallo zusammen,

Frage: Wenn im Shopware-Shop bei den cronjob-Einstellungen eine Aufgabe auf täglich 5.00 Uhr eingestellt ist, muß ich backend-cron dann bei all-inkl auch auf 5.00 Uhr einstellen? Oder früher oder später?

Weiß das jemand?

Die Antwort steht 2 Beiträge über deinem hier.

Du motzt rum, dass dir nicht ausreichend geholfen wird, kannst aber nicht einmal beantwortete Fragen lesen und verstehen?!

Naja, sooo sauber sind die Antworten oben jetzt nicht, und ich meine auch nicht ganz richtig. Wenn All-Inkl. 1x am Tag den Cron um 05:00 ausführt, kann SW sich noch so bemühen, aber SW kann sicherlich nicht im 4:55 einen Cron ausführen. Wenn ich alle 10 Minuten einen Cron bei All-Inkl. starte - also 00 10 20 30 40 50 - dann kann ein Cron nicht um 25 ausgeführt werden. Das könnte man “oben” anders verstehen.

Wenn ein Cron in SW fällig ist, wird er beim nächsten Aufruf durch den Servercron ausgeführt. Also: 5:00 Uhr Servercron und  05:00 SW-Cron, wird der SW-Cron um 5:00 ausgeführt. Wenn ich aber einen Cron um 05:05 in SW eingstellt habe, und der nächste Servercron um 05:10 läuft, kann der SW ja kaum um 05:05 ausgeführt werden. Aber dann um 05:10

Oder vereinfacht: wird /backend/cron ausgeführt, werden die bis dahin fälligen Crons nachträglich ausgeführt - sofern das script nicht in den Timeout rennt - also nicht zu viele crons in einen Rutsch packen.

Ansonsten: Einfach mal ausprobieren - die Crons zeigen Dir ja an, ob und wann sie gelaufen sind.

Die Antwort von Daniel  cool enthält alles:

“Damit das geht, muss der Interval deines All-Inkl-Cronjobs genau so groß oder kleiner sein, wie der kleine Shopware-Cron-Interval (kannst du in den Grundeinstellungen einsehen).”

Schlussfolgerung: Wenn ich ein Cron habe, der alle 10 Minuten eingestellt ist, dann muss natürlich /backend/cron auch mindestens alle 10 Minuten angestoßen werden. Logisch oder? 

Beantwortet nur einenTeil der Fragestellung, ist aber nicht eindeutig - ist aber auch egal.

@sonic,

 

Danke! - Das hat mir jetzt weitergeholfen.