Tahun lalu selama sesi pengujian pengguna untuk aplikasi BBC News, salah satu pengguna membuat komentar yang benar-benar terjebak dengan saya. Mereka menyatakan: "Saya suka mengalir". Saya tidak berpikir ada ringkasan yang lebih baik dari sarana kinerja bagi pengguna kami. Pada aplikasi atau situs web yang cepat, pengguna dapat mengalir, berinteraksi, dan terlibat dengan konten.
Pengalaman yang mengalir juga bagus untuk pemilik situs. Pengalaman yang mengalir cepat membantu pengguna mencapai tujuan mereka dan pada gilirannya kami mencapai tujuan organisasi kami. Amazon dan lainnya telah menunjukkan hubungan kuat antara kinerja dan aktivitas pengguna: karena menunggu halaman turun, jumlah waktu dan uang yang dihabiskan pengguna naik.
Baca selengkapnya: Ulasan NordVPN
Cache dibuat ketika sejumlah kecil sesuatu disimpan lebih dekat ke tempat yang dibutuhkan, biasanya untuk mencegah pengerjaan ulang. Misalnya, jika saya makan skittles, saya cenderung menuangkan sedikit ke tangan saya dan kemudian makan dari sana. Akibatnya, saya menciptakan cache skittles di tangan saya karena lebih cepat untuk memakannya dengan cara itu daripada kembali ke paket.
Pola yang sama ini digunakan dalam teknologi. Ada tiga cache yang harus kita pertimbangkan:
Caching dapat membuat peningkatan kinerja yang sangat besar; Di BBC saya telah melihat caching meningkatkan kinerja lebih dari 20 kali dalam kode produksi. Ini bermanfaat bagi operator situs juga. Dengan caching, lebih banyak pengguna dapat didukung oleh perangkat keras yang sama. Ini mengurangi biaya dalam perangkat keras per pengguna dan karenanya mengurangi biaya operasi situs web.
Agar efektif, kami ingin menggunakan data yang di-cache sebanyak mungkin. Untuk memperpanjang analogi skittles, jika saya ingin skitel biru tetapi saya tidak memiliki skittle biru di tangan saya (alias cache saya), saya harus kembali ke paket. Ini dikenal sebagai 'Hit Rate'. Ini 'hit' ketika item dalam cache dan 'miss' ketika tidak. Kami ingin tarif hit tinggi sehingga cache mengambil sebagian besar beban.
Salah satu metode paling sederhana untuk meningkatkan tarif hit adalah mengurangi variasi. Peregangan analogi skittles saya sedikit, bayangkan jika semua skittles berwarna merah. Dengan begitu, setiap skitit di tanganku akan menjadi hit cache; Saya tidak perlu kembali ke paket. Menerapkan ini ke Web, jika kita dapat memberikan halaman yang sama ke sebanyak mungkin pengguna, cache menjadi lebih efektif karena lebih banyak permintaan akan mengenai cache.
Jadi itulah teorinya. Mari kita praktis. Mari kita mulai dengan melihat caching permintaan untuk HTML. Caching dari semua jenis file dikontrol menggunakan header HTTP. Header adalah meta data (data tentang data) yang dikirim dari server ke browser dan terlihat oleh semua perangkat keras jaringan di antaranya. Untuk memberi tahu dunia ini memiliki izin untuk men-cache halaman kami dan untuk berbagi cache di antara pengguna, kami mengatur header berikut:
Cache-Control: public, max-age=30
Di sini, kami juga telah menetapkan batas waktu: jumlah waktu maksimum cache harus menggunakan kembali halaman ini, dalam hitungan detik. Untuk contoh ini, saya telah mengaturnya hingga 30 detik.
Dengan mengatur halaman ke 'publik', browser pengguna (dan setiap perangkat keras di sepanjang jalan) akan menyimpan salinan. Jadi beban halaman pertama akan membuat permintaan, tetapi semua halaman memuat setelah itu akan menggunakan kembali respons aslinya, hingga batas waktu tercapai.
Efek perangkat keras jaringan di sepanjang jalan bisa mendalam. Banyak jaringan besar (seperti ISP) akan memiliki cache yang dibagikan antara pengguna. Operator seluler juga menggunakan teknik ini dengan berat - misalnya, untuk cache dan merekomendasikan gambar yang disajikan lebih dari 3G. Operator situs juga dapat menempatkan cache HTTP di depan layanan mereka. Inilah yang telah kami lakukan di BBC.
Teknik yang kami gunakan banyak di BBC adalah untuk mengobati aset statis (seperti gambar, CSS dan skrip) berbeda dengan cara kami memperlakukan halaman. Caching HTML halaman terlalu lama dapat menyebabkan pengguna kehilangan pembaruan konten tetapi kami dapat memanfaatkan perilaku ini dalam hal aset statis.
Di BBC kami mengirim semua aset statis dengan usia maksimum 31.536.000 detik diatur dalam header cache. Ini memastikan aset di-cache selama 365 hari. Akibatnya, aset hanya diminta sekali. Ini bagus untuk kinerja tetapi buruk untuk fleksibilitas sebagai perubahan pada aset itu akan memakan waktu lama untuk sampai ke pengguna.
Untuk mengatasi ini, setiap kali kami merilis versi baru dari satu halaman, kami mengubah URL di mana aset disimpan. Trik ini berarti bahwa perubahan baru dimasukkan ke depan pengguna segera tetapi kami masih mendapatkan manfaat kinerja yang sama.
Caching Untuk meningkatkan kinerja situs web akan mengubah biaya operasi lebih rendah untuk situs web kami dan melestarikan aliran pengguna kami, yang mengarah ke pengalaman pengguna yang hebat.
Artikel ini awalnya diterbitkan dalam penerbitan 279 dari Net, majalah terlaris di dunia untuk desainer dan pengembang web. Membeli masalah 279. atau Berlangganan ke NET. .
Jason Lengstorf adalah pengembang, desainer, penulis dan beruang yang ramah. Fokusnya adalah pada efisiensi dan kinerja orang, tim, dan perangkat lunak. Di IBM, ia menciptakan proses dan sistem untuk membuat hal yang benar, hal yang mudah ™. Di semua waktu lain, ia mengembara bumi untuk mencari makanan ringan yang baru dan lebih baik.
Dalam lokakarya strategi dan teknik kinerja front-end modern di Hasilkan New York dari 25-27 April 2018 , Jason akan menunjukkan kepada peserta bagaimana meningkatkan waktu beban yang dirasakan - berapa lama rasanya memuat halaman - serta waktu muat aktual, hanya menggunakan teknik front-end termasuk:
Hasilkan New York berlangsung dari 25-27 April 2018. Dapatkan tiket Anda sekarang .
Artikel terkait:
Menambahkan efek ke teks dapat menambah tingkat keterlibatan dan minat yang sama sekali baru. Efek seperti Tipografi Kine..
Untuk ini Tutorial Photoshop. , Saya akan membuat manusia yang dapat dimainkan, perempuan Karakter video g..
Halaman 1 dari 2: Halaman 1 Halaman 1 Ha..
Pindah antar program bisa membingungkan. Saya cenderung menempel pada empat kelompok makanan - bioskop 4D, ZBrush, Studio Daz dan..
Untuk tutorial ini, kami akan menggunakan Vue xstream. untuk membuat langit penuh awan. Meskipun Anda dapat memili..
Mengontrol arus kas Anda adalah kunci keberhasilan freelance, dan ada beberapa aturan keras dan cepat untuk memastikan Anda melak..
Alih-alih menjadi pilihan terakhir, citra saham dapat dan harus membentuk bagian penting dari Arsenal Kreatif Anda. Dari ikon vek..