Penembolokan(Caching) merupakan sebuah cara sederhana dan efektif guna meningkatkan performa aplikasi Web. Dengan menyimpan data yang relatif statis dalam cache dan mengambilnya dari cache bila diperlukan, maka kita dapat menghemat waktu yang diperlukan dalam menghasilkan data. Pada utamanya, pemakaian cache dalam Yii mencakup pengaturan dan pengaksesan komponen aplikasi cache. Konfigurasi aplikasi berikut merincikan komponen cache yang menggunakan memcache dengan dua server cache. array( ...... 'components'=>array( ...... 'cache'=>array( 'class'=>'system.caching.CMemCache', 'servers'=>array( array('host'=>'server1', 'port'=>11211, 'weight'=>60), array('host'=>'server2', 'port'=>11211, 'weight'=>40), ), ), ), ); Ketika aplikasi berjalan, komponen cache dapat diakses melalui Yii menyediakan berbagai komponen cache yang dapat menyimpan data cache dalam berbagai media. Misalnya, komponen CMemCache mengenkapsulasi extension PHP memcache dan menggunakan memori sebagai media penyimpanan cache; komponen CApcCache mengenkapsulasi extension PHP APC; dan komponen CDbCache menyimpan data cache di dalam database. Berikut ini adalah komponen-komponen cache yang tersedia:
Penembolokan dapat dipakai pada tingkat yang bebeda. Pada tingkat terendah, kita menggunakan cache untuk menyimpan sebuah data, misalnya sebuah variabel, dan kita menyebutnya caching data(data caching). Pada tingkat berikutnya, kita menyimpan sebuah fragmen halaman dalam cache yang dibuat oleh bagian skrip tilik(view script). Dan pada tingkat tertinggi, kita menyimpan seluruh halaman ke dalam cache dan mengambil dari cache bila diperlukan. Dalam beberapa subbab berikut, kita akan menguraikan bagaimana untuk menggunakan cache pada tingkatan-tingkatan tersebut.
|