Asynclitism

Apa itu asinkroni dan mengapa hal itu terjadi?

Asynchrony merupakan fenomena dimana terdapat jeda waktu antara dua tindakan atau proses. Hal ini dapat terjadi karena berbagai alasan, seperti kompleksitas interaksi antara perangkat dan komponen perangkat lunak, komputasi yang lama, latensi jaringan, atau penundaan waktu karena kesalahan manusia. Asinkroni adalah situasi di mana beberapa operasi memblokir operasi lain yang menunggu selesai dalam urutan antrian eksekusi. Misalnya, ini biasanya terjadi di dalam DBMS relasional ketika melakukan DML (Data Manipulation Language) - operasi modifikasi data (UPDATE, DELETE, INSERT). Mereka dianggap "memblokir", mis. menangguhkan operasi akses lainnya ke database sampai pekerjaannya selesai.

> Pertimbangkan konsekuensi asinkron - ketika mencoba menjalankan dua kueri yang sangat independen terhadap tabel yang sama dalam aplikasi yang sama: 1. Kueri pertama memperbarui satu baris dalam tabel dengan tiga bidang. 2. Kueri kedua membandingkan nama kota dan jumlah dalam operasi tabel UPDATE. 3. Akibatnya, kita mendapatkan kecelakaan, tergantung pada tingkat persiapan kodenya, arsitekturnya, dan tingkat pengetahuan pengembang yang bertanggung jawab atas kode ini. Program yang sama mungkin berfungsi normal di satu komputer, tetapi menolak untuk bekerja di komputer lain. Alasan kegagalannya bermacam-macam: mulai dari melebihi batas overhead hingga kehabisan RAM secara fisik. Dalam hal ini, misalnya, jika Anda mengambil program yang ditulis dalam bahasa C murni (tanpa kerangka SQL), memodifikasinya untuk kueri Access dan mentransfer program tersebut ke komputer lain yang menjalankan Windows XP, maka Anda akan mendapatkan