Keine Registrierung von Plug-in-Schritten duplizieren
Kategorie: Leistung
Wirkungspotential: Hoch
Symptome
Die Registrierung eines doppelten Plug-In-Schrittes bewirkt, dass das Plug-in bei derselben Nachricht/Ereignis mehrmals ausgelöst wird. Die Registrierung eines doppelten Plug-In-Schritts könnte zu Folgendem führen:
Verzögerte Verarbeitung von asynchronen Aufträgen, wenn sie als asynchroner Ausführungsmodus registriert sind.
Beeinträchtigte Benutzerleistung, wenn sie als synchroner Ausführungsmodus registriert sind. Zu den Erfahrungen gehören:
- Nicht reaktionsfähige, modellgetriebene Anwendungen
- Langsame Kundeninteraktionen
- Der Browser reagiert nicht mehr.
Anweisungen
Stellen Sie sicher, dass Sie bestehende Registrierungsschritte für Plug-Ins aktualisieren, anstatt sie zu löschen und neu zu erstellen. Darüber hinaus sollten Sie Plug-in-Registrierungsschritte nur auf unterstützte Weise erstellen und aktualisieren.
Problematische Muster
Warnung
Diese Muster sollten vermieden werden.
Das Löschen und Wiederherstellen eines Schrittes in der Quellinstanz (test, dev, preprod) erzeugt einen doppelten Schritt, der in der Zielumgebung registriert wird, wenn dieser Schritt zuvor registriert wurde.
Das manuelle Erstellen der SDKMessageProcessingSteps
mit einer neuen GUID oder das Aktualisieren der bestehenden GUID innerhalb der Datei customizations.xml
führt zur Registrierung eines doppelten Schrittes. Diese Art von Aufgaben wird nicht unterstützt, wie in Wann soll die Anpassungsdatei bearbeitet werden?
Weitere Informationen
Die doppelte Registrierung von Plug-in-Schritten kann zu SQL-Deadlocking führen, wenn die Ereignisse in einer Update-Meldung registriert werden. Wenn Sie eine Aktualisierung für einen Datensatz ausgeben, erstellt SQL eine Zeilensperre für diesen Datensatz. Wenn eine andere Transaktion versucht, den gleichen Datensatz zu aktualisieren, muss sie warten, bis die Sperre freigegeben ist, bevor sie die Aktualisierung durchführen kann. Wenn ein Timeout eintritt, wird die Transaktion zurückgesetzt und das Update wird nicht in die SQL-Datenbank übertragen.
Siehe auch
Registrieren eines Plugins
Deadlocking
Hinweis
Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)
Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).