Akselerasi situs dinamis melalui Azure CDN

Dengan ledakan media sosial, perdagangan elektronik, dan web yang sangat dipersonalisasi, persentase konten yang meningkat pesat yang disajikan kepada pengguna akhir dihasilkan secara real time. Pengguna mengharapkan pengalaman web yang cepat, andal, dan dipersonalisasi, tidak bergantung pada browser, lokasi, perangkat, atau jaringan mereka. Namun, inovasi yang membuat pengalaman ini begitu menarik juga melibatkan unduhan halaman yang lambat dan membahayakan kualitas pengalaman konsumen.

Kemampuan Microsoft Azure Content Delivery Network (CDN) mencakup kemampuan untuk menyimpan file lebih dekat ke pengguna akhir untuk mempercepat pengiriman file statis. Namun, dengan aplikasi web dinamis, penembolokan konten di lokasi edge tidak mungkin karena server menghasilkan konten sebagai respons terhadap perilaku pengguna. Mempercepat pengiriman konten tersebut lebih kompleks daripada penembolokan tepi tradisional dan membutuhkan solusi menyeluruh yang menyempurnakan setiap elemen di sepanjang seluruh jalur data dari awal hingga pengiriman. Dengan pengoptimalan Dynamic Site Acceleration (DSA) Azure CDN, kinerja halaman web dengan konten dinamis ditingkatkan dengan terukur.

Azure CDN dari Akamai dan Azure CDN dari Verizon keduanya menawarkan pengoptimalan DSA melalui menu Dioptimalkan untuk selama pembuatan titik akhir. Akselerasi situs dinamis dari Microsoft ditawarkan melalui Azure Front Door Service.

Penting

Untuk profil Azure CDN dari Akamai, Anda diizinkan untuk mengubah pengoptimalan titik akhir CDN setelah dibuat.

Untuk profil Azure CDN dari Verizon, Anda diizinkan untuk mengubah pengoptimalan titik akhir CDN setelah dibuat.

Konfigurasi titik akhir CDN untuk mempercepat pengiriman file dinamis

Untuk mengonfigurasi titik akhir CDN untuk mengoptimalkan pengiriman file dinamis, Anda dapat menggunakan portal Microsoft Azure, API REST, atau SDK klien mana pun untuk melakukan hal yang sama secara terprogram.

Untuk mengonfigurasi titik akhir CDN untuk pengoptimalan DSA dengan menggunakan portal Microsoft Azure:

  1. Pada halaman profil CDN, pilih Titik Akhir.

    Add a new CDN endpoint

    Panel Tambahkan titik akhir akan muncul.

  2. Di bawah Dioptimalkan untuk, pilih Akselerasi situs dinamis.

    Create a new CDN endpoint with DSA

  3. Untuk jalur Probe, masukkan jalur yang valid ke file.

    Jalur probe adalah fitur khusus untuk DSA, dan jalur yang valid diperlukan untuk pembuatan. DSA menggunakan file jalur probe kecil yang ditempatkan di server asal untuk mengoptimalkan konfigurasi perutean jaringan untuk CDN. Untuk file jalur probe, Anda dapat mengunduh dan mengunggah file sampel ke situs Anda, atau menggunakan aset yang ada di asal Anda yang berukuran sekitar 10 KB.

  4. Masukkan opsi titik akhir lain yang diperlukan (untuk informasi selengkapnya, lihat Membuat titik akhir CDN baru), lalu pilih Tambahkan.

    Setelah titik akhir CDN dibuat, ini akan menerapkan pengoptimalan DSA untuk semua file yang cocok dengan kriteria tertentu.

Untuk mengonfigurasi titik akhir yang ada untuk DSA (Azure CDN hanya dari profil Akamai):

  1. Di halaman profil CDN, pilih titik akhir yang ingin Anda ubah.

  2. Dari panel kiri, pilih Optimalisasi.

    Halaman Optimalisasi akan muncul.

  3. Di bawah Dioptimalkan untuk, pilih Akselerasi situs dinamis, lalu pilih Simpan.

Catatan

DSA dikenakan biaya tambahan. Untuk informasi selengkapnya, lihat Penentuan Harga Microsoft Azure Content Delivery Network.

Pengoptimalan DSA menggunakan Azure CDN

Akselerasi Situs Dinamis di Azure CDN mempercepat pengiriman aset dinamis dengan menggunakan teknik berikut:

Pengoptimalan Rute

Pengoptimalan rute penting karena Internet adalah tempat yang dinamis, tempat lalu lintas dan pemadaman sementara terus mengubah topologi jaringan. Border Gateway Protocol (BGP) adalah protokol perutean Internet, tetapi mungkin ada rute yang lebih cepat melalui server Point of Presence (PoP) perantara.

Pengoptimalan rute memilih jalur yang paling optimal ke asal sehingga situs terus dapat diakses dan konten dinamis dikirim ke pengguna akhir melalui rute tercepat dan paling dapat diandalkan.

Jaringan Akamai menggunakan teknik untuk mengumpulkan data real-time dan membandingkan berbagai jalur melalui simpul yang berbeda di server Akamai, serta rute BGP default di internet terbuka untuk menentukan rute tercepat antara asal dan tepi CDN. Teknik ini menghindari titik kemacetan Internet dan rute panjang.

Demikian pula, jaringan Verizon menggunakan kombinasi DNS Anycast, PoPs dukungan kapasitas tinggi, dan pemeriksaan kesehatan, untuk menentukan gateway terbaik dalam merutekan data terbaik dari klien ke asal.

Akibatnya, konten yang sepenuhnya dinamis dan transaksional dikirimkan lebih cepat dan lebih andal kepada pengguna akhir, bahkan ketika itu tidak dapat disimpan.

Optimalisasi TCP

Protokol Kendali Transmisi (TCP) adalah standar rangkaian protokol Internet yang digunakan untuk mengirimkan informasi antar aplikasi pada jaringan IP. Secara default, beberapa permintaan bolak-balik diperlukan untuk mengatur koneksi TCP, serta batasan untuk menghindari kemacetan jaringan, yang mengakibatkan inefisiensi dalam skala besar. Azure CDN dari Akamai menangani masalah ini dengan mengoptimalkan di tiga area:

Menghapus TCP lambat mulai

TCP lambat mulai adalah algoritma protokol TCP yang mencegah kemacetan jaringan dengan membatasi jumlah data yang dikirim melalui jaringan. Ini dimulai dengan ukuran jendela kemacetan kecil antara pengirim dan penerima sampai maksimum tercapai atau kehilangan paket terdeteksi.

Profil Azure CDN dari Akamai dan Azure CDN dari Verizon menghilangkan TCP lambat mulai dengan tiga langkah berikut:

  1. Pemantauan kesehatan dan bandwidth digunakan untuk mengukur bandwidth koneksi antara server PoP tepi.

  2. Metrik dibagikan di antara server PoP edge sehingga setiap server mengetahui kondisi jaringan dan kesehatan server dari PoPs lain di sekitarnya. 

  3. Server tepi Microsoft Azure Content Delivery Network membuat asumsi tentang beberapa parameter transmisi, seperti ukuran jendela yang optimal ketika berkomunikasi dengan server tepi Microsoft Azure Content Delivery Network lain di dekatnya. Langkah ini berarti ukuran jendela kemacetan awal dapat ditingkatkan jika kesehatan koneksi antara server tepi CDN mampu mentransfer data paket yang lebih tinggi. 

Memanfaatkan koneksi persisten

Menggunakan CDN, lebih sedikit mesin unik terhubung ke server asal Anda secara langsung dibandingkan dengan pengguna yang terhubung langsung ke asal Anda. Azure CDN juga mengumpulkan permintaan pengguna bersama-sama untuk membangun lebih sedikit koneksi dengan asal.

Seperti yang disebutkan sebelumnya, beberapa permintaan handshake diperlukan untuk membangun koneksi TCP. Koneksi persisten, yang diimplementasikan oleh header HTTP Keep-Alive, menggunakan kembali koneksi TCP yang ada untuk beberapa permintaan HTTP untuk menghemat waktu pulang-pergi dan mempercepat pengiriman.

Azure CDN dari Verizon juga mengirim paket tetap hidup berkala melalui koneksi TCP untuk mencegah koneksi terbuka ditutup.

Menyetel parameter paket TCP

Azure CDN dari Akamai menyetel parameter yang mengatur koneksi server-ke-server dan mengurangi jumlah perjalanan pulang-pergi jarak jauh yang diperlukan untuk mengambil konten yang disematkan di situs dengan menggunakan teknik berikut:

  • Meningkatkan jendela kemacetan awal sehingga lebih banyak paket dapat dikirim tanpa menunggu penerimaan.
  • Mengurangi batas waktu pengiriman ulang awal sehingga kerugian terdeteksi, dan pengiriman ulang terjadi lebih cepat.
  • Mengurangi batas waktu pengiriman ulang minimum dan maksimum untuk mengurangi waktu tunggu sebelum mengasumsikan paket hilang dalam transmisi.

Prefetch objek (khusus Azure CDN dari Akamai)

Sebagian besar situs web terdiri dari halaman HTML, yang mereferensikan berbagai sumber daya lain seperti gambar dan skrip. Biasanya, ketika klien meminta halaman web, browser pertama kali mengunduh dan mengurai objek HTML, dan kemudian membuat permintaan tambahan untuk aset tertaut yang diperlukan untuk sepenuhnya memuat halaman.

Prefetchadalah teknik untuk mengambil gambar dan skrip yang disematkan di halaman HTML saat HTML disajikan ke browser, dan bahkan sebelum browser membuat permintaan objek ini.

Dengan opsi prefetch diaktifkan pada saat CDN melayani halaman basis HTML ke browser klien, CDN mengurai file HTML dan membuat permintaan tambahan untuk sumber daya yang ditautkan dan menyimpannya di cachenya. Ketika klien membuat permintaan untuk aset yang ditautkan, server tepi CDN sudah memiliki objek yang diminta dan dapat melayani mereka segera tanpa perjalanan pulang-pergi ke asal. Pengoptimalan ini menguntungkan konten yang dapat disimpan dan tidak dapat disimpan.

Kompresi gambar adaptif (khusus CDN Azure dari Akamai)

Beberapa perangkat, terutama perangkat seluler, mengalami kecepatan jaringan yang lebih lambat dari waktu ke waktu. Dalam skenario ini, lebih bermanfaat bagi pengguna untuk menerima gambar yang lebih kecil di halaman web mereka lebih cepat daripada menunggu lama untuk gambar beresolusi penuh.

Fitur ini secara otomatis memantau kualitas jaringan, dan menggunakan metode kompresi JPEG standar ketika kecepatan jaringan lebih lambat untuk meningkatkan waktu pengiriman.

Kompresi Gambar Adaptif Ekstensi File
Kompresi JPEG .jpg, .jpeg, .jpe, .jig, .jgig, .jgi

Penembolokan

Dengan DSA, penembolokan dinonaktifkan secara default pada CDN, bahkan ketika asal menyertakan header Cache-Control atau Expires dalam respons. DSA biasanya digunakan untuk aset dinamis yang tidak boleh disimpan karena unik untuk setiap klien. Penembolokan dapat mematahkan perilaku ini.

Jika Anda memiliki situs web dengan campuran aset statis dan dinamis, yang terbaik adalah mengambil pendekatan hibrida untuk mendapatkan kinerja terbaik.

Untuk profil Azure CDN Standard dari Verizon dan Azure CDN Standard dari Akamai, Anda dapat mengaktifkan penembolokan untuk titik akhir DSA tertentu dengan menggunakan aturan penembolokan.

Untuk mengakses aturan penembolokan:

  1. Dari halaman profil CDN, di bawah pengaturan, pilih Aturan penembolokan

    CDN Caching rules button

    Halaman Aturan penembolokan dibuka.

  2. Buat aturan penembolokan global atau kustom untuk mengaktifkan penembolokan untuk titik akhir DSA Anda.

Untuk profil khusus Azure CDN Premium dari Verizon, Anda mengaktifkan penembolokan untuk titik akhir DSA tertentu dengan menggunakan mesin aturan. Setiap aturan yang dibuat hanya memengaruhi titik akhir profil Anda yang dioptimalkan untuk DSA.

Untuk mengakses mesin aturan:

  1. Pada halaman profil CDN, pilih Kelola

    CDN profile manage button

    Portal manajemen CDN terbuka.

  2. Dari portal manajemen CDN, pilih ADN, lalu pilih Mesin Aturan.

    Rules engine for DSA

Atau, Anda dapat menggunakan dua titik akhir CDN: satu titik akhir yang dioptimalkan dengan DSA untuk memberikan aset dinamis dan titik akhir lain yang dioptimalkan dengan jenis pengoptimalan statis, seperti pengiriman web umum, hingga pengiriman aset yang dapat disimpan. Ubah URL halaman web Anda untuk menautkan langsung ke aset di titik akhir CDN yang Anda rencanakan untuk digunakan.

Misalnya, mydynamic.azureedge.net/index.html adalah halaman dinamis dan dimuat dari titik akhir DSA.  Halaman HTML merujuk beberapa aset statis seperti pustaka JavaScript atau gambar yang dimuat dari titik akhir CDN statis, seperti mystatic.azureedge.net/banner.jpg dan mystatic.azureedge.net/scripts.js.