Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Memahami kunci cache

Mode fokus
Memahami kunci cache - Amazon CloudFront

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

kunci cache menentukan apakah penampil meminta CloudFront lokasi tepi menghasilkan temuan cache. Kunci cache adalah pengidentifikasi unik untuk objek dalam cache. Setiap objek dalam cache memiliki kunci cache unik.

Terjebak terjadi ketika permintaan penampil menghasilkan kunci cache yang sama dengan permintaan sebelumnya, dan objek untuk kunci cache tersebut ada di cache lokasi edge dan valid. Ketika ada cache hit, objek yang diminta disajikan ke penampil dari lokasi CloudFront tepi, yang memiliki manfaat sebagai berikut:

  • Berkurangnya beban pada server asal Anda

  • Berkurangnya latensi untuk penampil

Anda bisa mendapatkan kinerja yang lebih baik dari situs web atau aplikasi saat Anda memiliki rasio tembolok (proporsi yang lebih tinggi dari permintaan penampil yang menghasilkan ketukan cache). Salah satu cara untuk meningkatkan rasio ketukan cache Anda adalah dengan hanya memasukkan nilai minimum yang diperlukan dalam kunci cache. Untuk informasi lebih lanjut, lihat bagian berikut.

Anda dapat memodifikasi nilai (string kueri URL, header HTTP, dan cookie) dalam kunci cache menggunakan kebijakan cache. (Anda juga dapat memodifikasi kunci cache dengan menggunakan Lambda @Edgefunction atau CloudFront Fungsi pada permintaan penampil.) Sebelum memodifikasi kunci cache, penting untuk memahami bagaimana aplikasi Anda dirancang dan kapan dan bagaimana aplikasi tersebut dapat memberikan respons yang berbeda berdasarkan karakteristik permintaan penampil. Jika suatu nilai dalam permintaan penampil menentukan respons bahwa asal Anda akan kembali, Anda harus menyertakan nilai tersebut dalam kunci cache. Tetapi jika Anda menyertakan nilai dalam kunci cache yang tidak memengaruhi respons bahwa asal Anda kembali, Anda mungkin akhirnya menyimpan objek duplikat.

Kunci cache default

Secara default, kunci cache untuk CloudFront distribusi mencakup informasi berikut:

  • Nama domain CloudFront distribusi (misalnya, d111111abcdef8.cloudfront.net)

  • Jalur URL objek yang diminta (misalnya, /content/stories/example-story.html)

catatan

OPTIONSMetode ini termasuk dalam kunci cache untuk OPTIONS permintaan. Ini berarti bahwa respons terhadap OPTIONS permintaan di-cache secara terpisah dari respons GET dan HEAD permintaan.

Nilai lain dari permintaan penampil tidak disertakan dalam kunci cache, secara default. Pertimbangkan permintaan HTTP berikut dari peramban web.

GET /content/stories/example-story.html?ref=0123abc&split-pages=false HTTP/1.1 Host: d111111abcdef8.cloudfront.net User-Agent: Mozilla/5.0 Gecko/20100101 Firefox/68.0 Accept: text/html,*/* Accept-Language: en-US,en Cookie: session_id=01234abcd Referer: https://news.example.com/

Saat permintaan penampil seperti contoh ini masuk ke lokasi CloudFront tepi, CloudFront gunakan kunci cache untuk menentukan apakah ada cache yang terkena. Secara default, hanya komponen permintaan berikut yang disertakan dalam kunci cache: /content/stories/example-story.html dand111111abcdef8.cloudfront.net. Jika objek yang diminta tidak ada dalam cache (cache hilang), maka CloudFront kirimkan permintaan ke asal untuk mendapatkan objek. Setelah mendapatkan objek, CloudFront mengembalikannya ke penampil dan menyimpannya di cache lokasi tepi.

Ketika CloudFront menerima permintaan lain untuk objek yang sama, sebagaimana ditentukan oleh kunci cache, CloudFront menyajikan objek cache ke penampil segera, tanpa mengirim permintaan ke asal. Misalnya, pertimbangkan permintaan HTTP berikut yang muncul setelah permintaan sebelumnya.

GET /content/stories/example-story.html?ref=xyz987&split-pages=true HTTP/1.1 Host: d111111abcdef8.cloudfront.net User-Agent: Mozilla/5.0 AppleWebKit/537.36 Chrome/83.0.4103.116 Accept: text/html,*/* Accept-Language: en-US,en Cookie: session_id=wxyz9876 Referer: https://rss.news.example.net/

Permintaan ini untuk objek yang sama seperti permintaan sebelumnya, tetapi berbeda dengan permintaan sebelumnya. Ada string kueri URL yang berbeda, berbeda User-Agent dan Referer dan session_id cookie. Namun, nilai-nilai ini tidak menjadi bagian dari kunci cache secara default, sehingga permintaan kedua ini menghasilkan temuan tembolok.

Sesuaikan kunci cache

Dalam beberapa kasus, Anda mungkin ingin memasukkan lebih banyak informasi dalam kunci cache, meskipun melakukannya mungkin hanya akan menghasilkan lebih sedikit ketukan cache. Anda menentukan apa yang harus disertakan dalam kunci cache menggunakan kebijakan cache.

Misalnya, jika server asal Anda menggunakan Accept-Language Header HTTP dalam permintaan penampil untuk mengembalikan konten yang berbeda berdasarkan bahasa penampil, Anda mungkin ingin menyertakan header ini dalam tombol cache. Saat Anda melakukannya, CloudFront gunakan header ini untuk menentukan klik cache, dan sertakan header dalam permintaan asal (permintaan yang CloudFront dikirim ke asal saat ada cache yang hilang).

Salah satu konsekuensi potensial yang mencakup nilai tambahan dalam kunci cache adalah bahwa CloudFront mungkin berakhir saat menyimpan objek duplikat karena variasi yang dapat terjadi dalam permintaan penampil. Misalnya, penampil dapat mengirim nilai-nilai berikut untuk header Accept-Language:

  • en-US,en

  • en,en-US

  • en-US, en

  • en-US

Semua nilai yang berbeda ini menunjukkan bahwa bahasa pemirsa adalah bahasa Inggris, tetapi variasi dapat CloudFront menyebabkan cache objek yang sama beberapa kali. Hal ini dapat mengurangi temuan cache dan meningkatkan jumlah permintaan asal usul. Anda dapat menghindari duplikasi ini dengan tidak menyertakan Accept-Language header dalam kunci cache, dan sebagai gantinya mengonfigurasi situs web atau aplikasi Anda untuk menggunakan konten yang berbeda URLs dalam bahasa yang berbeda (misalnya,/en-US/content/stories/example-story.html).

Untuk setiap nilai yang ingin Anda sertakan dalam kunci cache, Anda harus memastikan bahwa Anda memahami berapa banyak variasi nilai tersebut yang mungkin muncul dalam permintaan penampil. Untuk nilai permintaan tertentu, tidak ada salahnya memasukkan nilai tersebut dalam kunci cache. Misalnya, User-Agent header dapat memiliki ribuan variasi unik, jadi umumnya bukan merupakan kandidat yang baik untuk dimasukkan dalam kunci cache. Cookie yang memiliki nilai khusus pengguna atau khusus sesi dan unik untuk ribuan (atau bahkan jutaan) permintaan juga bukan kandidat yang baik untuk inklusi kunci cache. Jika Anda memasukkan nilai-nilai ini ke dalam kunci cache, setiap variasi unik menghasilkan salinan objek lain di dalam cache. Jika salinan objek ini tidak unik, atau jika Anda berakhir dengan sejumlah besar objek yang sedikit berbeda, maka setiap objek hanya mendapat sejumlah kecil tembolok, Anda mungkin ingin mempertimbangkan pendekatan yang berbeda. Anda dapat mengecualikan nilai yang sangat variabel ini dari kunci cache, atau Anda dapat menandai objek sebagai tidak dapat dicache.

Berhati-hatilah saat menyesuaikan kunci cache. Terkadang hal ini diinginkan, tetapi dapat memiliki konsekuensi yang tidak diinginkan seperti menyimpan objek duplikat, menurunkan rasio hit cache Anda, dan meningkatkan jumlah permintaan asal. Jika situs web atau aplikasi asal Anda perlu menerima nilai tertentu dari permintaan penampil untuk analitik, telemetri, atau penggunaan lainnya, tetapi nilai ini tidak mengubah objek yang kembali ke objek asal, gunakan kebijakan permintaan asal untuk memasukkan nilai-nilai ini dalam permintaan asal, tetapi tidak memasukkannya ke dalam kunci cache.

Di halaman ini

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.