Prinsip Bahasa Pemrograman menyajikan sistem otomatis caching query database untuk aplikasi web yang ditulis dalam bahasa web-pemrograman Ur / Web.
eror bug pada website

Mengatasi bug pada website. Saat ini, loading halaman web biasanya melibatkan query database. Misalnya data kontribusi terbaru dalam diskusi forum yang Anda ikuti, daftar berita terkait yang Anda sedang membaca, target sponsor ke lokasi geografis, atau sejenisnya.

Tapi query database atau “cache” cukup memakan waktu. Banyak situs toko online yang butuh pengiriman data hasil pencarian dengan cepat pada server web.

Namun, jika pengguna situs merubah nilai dalam database, cache juga perlu diperbarui. Tugas kompleks menganalisis kode website untuk mengidentifikasi system operasi ini memerlukan update cache yang menjadi PR bagi programmer web. Hilangnya satu system operasi dapat mengakibatkan situs tidak dapat dioperasikan.

Para peneliti dari MIT (Ilmu Komputer dan Laboratorium Artificial Intelligence) pada symposium Association for Computing Machinery tentang Prinsip Bahasa Pemrograman menyajikan sistem otomatis caching query database untuk aplikasi web yang ditulis dalam bahasa web-pemrograman Ur / Web.

Meskipun secara paralel situs web dapat mememuhi permintaan dengan cepat - setiap transaksi tak akan terlihat persis jika permintaan ditangani secara berurutan pada data cache yang berbeda, atau bahkan pada data cache server yang berbeda dengan pengguna yang berlainan.

Dalam percobaan yang melibatkan dua website yang telah dibangun menggunakan Ur / Web, sistem baru ini menawarkan caching otomatis dua kali lipat dengan kecepatan 30 kali lipat.

Menurut Adam Chlipala, seorang profesor teknik elektro dan ilmu komputer di MIT, "Kebanyakan website populer didukung oleh database yang tidak benar-benar mengolah database berulang untuk setiap permintaan,".

"Tapi bagian yang sulit di sini adalah bahwa Anda harus menyadari saat membuat perubahan ke database bahwa beberapa jawaban yang disimpan tidak lagi selalu benar, dan Anda harus melakukan apa yang disebut 'Canceled'.

Pemrogram perlu menambahkan logika pembatalan secara manual. Untuk setiap baris kode yang mengubah database, programmer harus berpikir, 'Oke, untuk setiap baris kode yang bertuliskan database dan menyimpan hasilnya di cache, mana dari mereka akan rusak akibat perubahan yang terjadi.

Chlipala bekerja sama dengan Ziv Scully, seorang mahasiswa pascasarjana dalam ilmu komputer di Carnegie Mellon University, yang bekerja di laboratorium Chlipala sebagai sarjana MIT.

Berita komputer lainnya : Fitur ‘Suggested Reminder’ Cortana Sudah Diluncurkan di US

Pencarian Bug pada Website


Ur / Web, yang diciptakan Chlipala, memungkinkan pengembang web menentukan fungsi situs mereka dengan hanya menggunakan satu bahasa pemrograman.

Ur / Web compiler secara otomatis menghasilkan semua jenis kode yang diperlukan untuk daya situs - HTML, JavaScript, query database SQL, dan cascading style sheets - sambil memberikan kinerja dan jaminan keamanan tertentu.

Sistem baru Chlipala dan Scully ini merupakan modifikasi dari compiler, sehingga pengguna Ur / Web hanya dapat mengkompilasi ulang kode yang ada untuk mendapatkan semua manfaat dari caching basis data. Bahasa itu sendiri tetap tidak berubah.

Compiler baru dimulai dengan menganalisis Ur / kode Web dan menentukan data apa dan bagaimana cache mengaturnya. Misalnya, jika jenis pertanyaan tertentu hampir selalu dilakukan bersamaan dengan satu sama lain, Ur / Web akan cache data yang terkait dalam satu tabel.

Compiler juga memutuskan apakah cache untuk data mentah, kode HTML, atau seluruh laman web jika struktur program memungkinkan.

Maka compiler berjalan melalui kode dan membandingkan setiap nilai operasi yang update dalam database dengan setiap operasi query database. Saat cache menentukan nilai harus batal, maka perintah yang ditambahkan akan membatalkan cache di tempat yang tepat .

Seperti banyak bahasa pemrograman, Ur / Web memiliki "runtime," Chlipala dan Scully juga memperbarui runtime Ur / Web untuk memantau frekuensi cache query database.

Perbaikan Menyakitkan


Selain menguji sistem pada dua website, Chlipala dan Scully juga menguji pada beberapa program skala kecil yang juga ditulis dalam Ur / Web, dan merupakan bagian dari standar tolok ukur yang digunakan untuk membandingkan kerangka pengembangan Web yang berbeda.

Hasilnya, sistem baru yang ditawarkan lebih cepat  2 – 5 kali lipat.

Bagaimanapun, mereka tidak membandingkan situs yang dikembangkan dengan sistem mereka ke situs yang menggunakan hand-code caching. Seperti yang Chlipala jelaskan, "Ur / Web jauh lebih cepat daripada yang lain."

"Banyak situs dan program dengan database cache untuk meningkatkan kinerja," kata Andrew Myers, seorang profesor ilmu komputer di Universitas Cornell.

"Namun, cukup sulit untuk melakukan ini dengan benar, karena hasil dari query database bisa menjadi tidak valid. Jadi upaya untuk mempercepat aplikasi dengan cara ini menimbulkan tantangan untuk menemukan bug. Daripada menyewa programmer hanya untuk mengidentifikasi hasil cache, sistem ini bisa melakukannya secara otomatis, dengan menganalisis permintaan yang berbeda ke database. "

tac tic tec no

TAC TIC TEC NO

Menyajikan informasi teknologi terbaru dari berbagai jenis bidang ilmu dengan lebih lengkap dan menarik..

Post A Comment:

0 comments: