Wir haben eine Ubercart-Website, die täglich große Auftragsmengen bearbeitet, verarbeitet und andere Aufgaben wie Abrechnung, Lieferrouting und zukünftige Auftragserstellung ausführt.
Einige dieser Aufgaben sind schwer und führen manchmal zu einem Timeout von PHP. Gibt es eine bessere Möglichkeit, diese Aufgaben wie über die Drush- oder Batch-API auszuführen?
Geschwindigkeit ist nicht unbedingt eine Priorität (obwohl nett), aber wir möchten Zeitüberschreitungen vermeiden, die manchmal Probleme mit der korrekten Abrechnung und der Planung täglicher Bestellungen verursachen können.
Ist Drush-Skript die bessere Option oder Batch-API? Gibt es Tutorials, um beide besser zu nutzen?
Sie können auch ein benutzerdefiniertes PHP-CLI-Skript verwenden. Hier ist ein einfaches Beispiel für Drupal 7:
quelle
Ich habe eine D6-Ubercart-Site, die eine erhebliche Back-End-Verarbeitung für "automatisch generierte digitale Produkte" erfordert. Ich kümmere mich darum über:
Dies ist eine etwas ähnliche Lösung wie die von Xio vorgeschlagene, mit der Ausnahme, dass hier kein PHP-CLI-Skript verwendet wird, sondern BASH-Skripte, die von PHP in Drupal aufgerufen werden, um im Hintergrund ausgeführt zu werden. Diese BASH-Skripte greifen auf die Drupal-Datenbank zu und erhöhen die Statuswerte aller Produkte, die kompiliert und an Kunden gesendet werden. Außerdem kann Drupal diese Statuswerte anzeigen und an die Kunden zurückmelden, bei denen sich ihre Einkäufe im "benutzerdefinierten Erstellungsprozess" gerade befinden.
quelle