Was ist Asynchronität und warum tritt sie auf?
Asynchronität ist ein Phänomen, bei dem es zu einer Zeitverzögerung zwischen zwei Aktionen oder Prozessen kommt. Dies kann verschiedene Gründe haben, beispielsweise die Komplexität der Interaktionen zwischen Geräten und Softwarekomponenten, langwierige Berechnungen, Netzwerklatenz oder Zeitverzögerungen aufgrund menschlicher Fehler. Asynchronität ist eine Situation, in der einige Vorgänge andere blockieren, die in der Reihenfolge der Ausführungswarteschlange auf ihren Abschluss warten. Dies geschieht beispielsweise normalerweise innerhalb eines relationalen DBMS, wenn DML (Data Manipulation Language)-Datenänderungsvorgänge (UPDATE, DELETE, INSERT) ausgeführt werden. Sie gelten als „blockierend“, d.h. Aussetzen anderer Zugriffsvorgänge auf die Datenbank, bis ihre Arbeit abgeschlossen ist.
> Bedenken Sie die Konsequenzen der Asynchronität – wenn Sie versuchen, zwei stark unabhängige Abfragen für dieselbe Tabelle innerhalb derselben Anwendung auszuführen: 1. Die erste Abfrage aktualisiert eine Zeile in einer Tabelle mit drei Feldern. 2. Die zweite Abfrage vergleicht den Stadtnamen und den Betrag in der UPDATE-Tabellenoperation. 3. Als Ergebnis erhalten wir einen Unfall, abhängig vom Grad der Vorbereitung seines Codes, seiner Architektur und dem Wissensstand des für diesen Code verantwortlichen Entwicklers. Dieselben Programme funktionieren möglicherweise auf einem Computer normal, auf einem anderen jedoch nicht. Die Gründe für einen Ausfall sind vielfältig: von der Überschreitung des Overhead-Limits bis hin zum physischen Mangel an RAM. Wenn Sie in diesem Fall beispielsweise ein in reiner C-Sprache (ohne SQL-Framework) geschriebenes Programm nehmen, es für Access-Abfragen modifizieren und das Programm auf einen anderen Computer mit Windows XP übertragen, erhalten Sie Folgendes: