Deskripsi
Docket Cache adalah Cache Objek WordPress persisten yang menyimpan data cache sebagai kode PHP biasa. Plugin ini dirancang sebagai alternatif untuk situs yang tidak memiliki akses ke Redis atau Memcached.
Sebagian besar plugin caching berbasis berkas menggunakan serialisasi dan deserialisasi untuk menyimpan objek PHP ke berkas datar. Docket Cache menggunakan pendekatan yang berbeda dengan mengonversi objek menjadi kode PHP biasa. Hal ini membuat pengambilan data lebih cepat dan meningkatkan performa secara keseluruhan, terutama saat Zend OPcache diaktifkan.
Untuk informasi lebih lanjut, silakan lihat dokumentasi tentang Caching di WordPress.
Mengapa menggunakan plugin ini?
Untuk Cache Objek persisten yang andal di WordPress, Redis atau Memcached adalah pilihan utama. Namun, keduanya memerlukan pengetahuan tentang server dan jarang tersedia di paket hosting murah atau shared hosting.
Alternatifnya adalah menyimpan cache objek di dalam berkas. Di WordPress, mengekspor objek PHP bukanlah hal yang mudah. Sebagian besar plugin caching berbasis berkas mengandalkan serialisasi dan deserialisasi objek untuk menyimpan dan mengambil data.
Docket Cache menggunakan pendekatan yang lebih baik dengan mengubah cache objek menjadi kode PHP biasa. Cara ini lebih cepat karena WordPress dapat menggunakan cache secara langsung tanpa pemrosesan tambahan.
Fitur
- Caching objek + OPcache
- Advanced Post Caching
- Precache Objek
- Caching Menu WordPress
- Caching Terjemahan WordPress
- Optimasi Kueri Inti WordPress
- Optimasi Term Count Queries
- Optimasi Penghitungan Pos, Halaman, dan Komentar
- Optimasi Tabel Basis Data
- Optimasi WooCommerce
- Penundaan Autoload Opsi WP
- Penyesuaian Jadwal Pos yang Terlewat
- Cache Objek + Statistik OPcache + Penampil OPcache
- Log Cache
- Layanan Cronbot
- Dukungan WP-CLI
- Dukungan Multisite / Multi-Network
Persyaratan
Untuk menggunakan Docket Cache, persyaratan minimumnya adalah:
- PHP 7.2.5
- WordPress 5.4
Kami juga merekomendasikan:
- Zend OPcache
Docket Cache menyimpan cache sebagai berkas PHP, jadi plugin ini tetap berfungsi dengan atau tanpa OPcache. Dengan OPcache, PHP menyimpan berkas tersebut di memori agar siap digunakan dan tidak perlu membacanya dari disk setiap kali halaman dimuat, sehingga cache menjadi jauh lebih cepat.
Dokumentasi
Untuk opsi konfigurasi, panduan instalasi, dan penggunaan baris perintah, silakan lihat Dokumentasi.
Pembangunan
- Repositori GitHub — Kode sumber dan pusat pengembangan Docket Cache.
- Log Perubahan — Riwayat lengkap perubahan, perbaikan, dan peningkatan.
- Gapo Tunnel — Buka akses layanan lokal ke internet melalui terowongan yang aman. Berguna untuk menguji Docket Cache di lingkungan pengembangan lokal.
- WP Staging Desktop — Ubah situs WordPress produksi menjadi lingkungan pengembangan lokal dalam hitungan menit.
Sponsori Proyek Ini
Dukung pengembangan Docket Cache yang berkelanjutan dengan kontribusi satu kali atau berkala.
Sponsor Terkemuka:
Terima kasih dan penghargaan yang setulus-tulusnya.
- Jimat Hosting
- Themecloud
- Websavers Inc
- Avunu LLC
- Linqru
- Gentleman’s Guru
- SecurePay
- DNSVault
- Exnano Creative
Sponsor lainnya tercantum dalam daftar kehormatan
Tangkapan Layar








Instalasi
Docket Cache memerlukan PHP 7.2.5 atau lebih tinggi, WordPress 5.4 atau lebih tinggi, serta Zend OPcache untuk performa terbaik.
- Di admin WordPress Anda, buka Plugin -> Tambah Baru.
- Cari “Docket Cache” lalu klik Instal Sekarang.
- Klik Aktifkan, atau Aktifkan Jaringan untuk instalasi Multisite.
- Klik Docket Cache di menu sebelah kiri untuk membuka halaman pengaturan.
Harap tunggu beberapa detik hingga Docket Cache mulai menyimpan objek ke dalam cache.
Tanya Jawab
-
Apa itu Caching Objek di WordPress?
-
Caching objek menyimpan hasil kueri basis data agar dapat diambil dengan cepat saat dibutuhkan lagi.
Data disajikan langsung dari cache alih-alih menjalankan kueri basis data berulang kali. Hal ini mengurangi beban server Anda dan membuat situs Anda lebih cepat.
Sederhananya, caching objek menyimpan data yang sering digunakan di lokasi yang dapat diakses dengan lebih cepat.
-
Apa itu Docket Cache dalam Caching Objek?
-
Secara default, cache objek WordPress tidak persisten. Artinya, data cache hanya disimpan di memori selama satu permintaan halaman dan tidak dipertahankan di antara pemuatan halaman. Agar persisten, cache objek harus disimpan di disk.
Docket Cache tidak sekadar menyimpan cache objek — plugin ini mengonversi data cache menjadi kode PHP biasa. Cara ini lebih cepat karena WordPress dapat menggunakan cache secara langsung tanpa pemrosesan tambahan.
-
Apa itu OPcache di Docket Cache?
-
OPcache adalah mesin caching yang terintegrasi di PHP. OPcache meningkatkan performa dengan menyimpan bytecode skrip yang sudah dikompilasi di memori bersama, sehingga PHP tidak perlu memuat dan mengurai skrip pada setiap permintaan.
Docket Cache mengonversi cache objek menjadi kode PHP biasa. Saat membaca dan menulis data cache, plugin ini menggunakan OPcache secara langsung, sehingga pengambilan data menjadi lebih cepat dan performa lebih baik.
-
Apa itu Layanan Cronbot di Docket Cache?
-
Cronbot adalah layanan eksternal yang mengirimkan permintaan ke situs web Anda setiap jam agar WordPress Cron tetap berjalan aktif.
Layanan ini bersifat opsional dan tidak wajib. Secara default, layanan ini tidak terhubung ke server endpoint. Anda dapat menonaktifkannya sepenuhnya di halaman konfigurasi.
-
Apa itu Pengumpul Sampah di Docket Cache?
-
Pengumpul Sampah adalah event terjadwal yang berjalan setiap 5 menit untuk memantau berkas cache, membersihkan entri yang kedaluwarsa, dan mengumpulkan statistik.
-
Apa itu disk RAM di Docket Cache?
-
Disk RAM menggunakan memori (RAM) server Anda sebagai media penyimpanan. Disk RAM bisa berupa perangkat keras atau disk virtual.
Membaca dan menulis data dari RAM jauh lebih cepat daripada dari SSD. Menyimpan berkas Docket Cache di disk RAM dapat meningkatkan performa secara signifikan.
Perlu diketahui bahwa pembuatan disk RAM memerlukan akses administrator server (root), sehingga opsi ini tidak tersedia di shared hosting.
Berikut contoh perintah untuk membuat dan menggunakan disk RAM dengan Docket Cache:
$ cd wp-content/ $ sudo mount -t tmpfs -o size=500m tmpfs ./cache/docket-cacheAgar jalur cache di-mount secara otomatis saat server dinyalakan, perbarui berkas
/etc/fstabAnda.Untuk informasi lebih lanjut tentang disk RAM:
Di Windows, buat disk RAM lalu atur DOCKET_CACHE_PATH agar mengarah ke drive disk RAM tersebut.
-
Secara default, WordPress menetapkan batas memori sebesar 256 MB. Jika digabungkan dengan MySQL dan server web, Anda memerlukan lebih dari 256 MB. Jika paket hosting Anda hanya menyediakan total 256 MB, jumlah tersebut tidak cukup, dan Docket Cache tidak akan dapat meningkatkan performa situs Anda.
-
Apa perbedaan Docket Cache dengan plugin cache objek lainnya?
-
Docket Cache adalah Akselerator Cache Objek. Plugin ini mengoptimalkan caching dengan menangani kueri pos, penghitungan komentar, terjemahan WordPress, dan lainnya sebelum menyimpan cache objek.
-
Bisakah saya menggunakannya bersama plugin cache lain?
-
Ya dan tidak. Anda dapat menggunakannya bersama plugin caching halaman, tetapi tidak dengan plugin cache objek lainnya.
-
Bisakah saya menggunakannya dengan LiteSpeed Cache?
-
Ya. Plugin LiteSpeed Cache memiliki fitur Cache Objek sendiri. Plugin tersebut mungkin menampilkan pemberitahuan yang meminta Anda menonaktifkan Docket Cache. Cukup nonaktifkan Cache Objek di LiteSpeed Cache untuk menggunakan Docket Cache.
-
Bisakah saya menggunakan Docket Cache di toko WooCommerce yang ramai pengunjung?
-
Tidak disarankan untuk toko WooCommerce dengan lalu lintas tinggi. Docket Cache dirancang sebagai alternatif berbasis berkas untuk cache dalam memori seperti Redis dan Memcached, dan mungkin tidak mampu menangani beban toko yang ramai. Untuk situs WooCommerce dengan lalu lintas padat, kami menyarankan penggunaan Redis.
-
Saya memiliki VPS. Bisakah saya menggunakan Docket Cache sebagai pengganti Redis?
-
Bisa, tetapi jika VPS Anda mendukung Redis, kami menyarankan penggunaan Redis untuk performa yang lebih baik. Docket Cache paling cocok untuk lingkungan yang tidak menyediakan Redis atau Memcached. Meski begitu, Docket Cache bekerja dengan baik untuk situs kecil hingga menengah di VPS, tanpa memerlukan koneksi jaringan dan tanpa risiko konflik kunci cache.
Ulasan
Kontributor & Pengembang
“Docket Cache – Akselerator Cache Objek” adalah perangkat lunak open source. Berikut ini mereka yang sudah berkontribusi pada plugin ini.
Kontributor“Docket Cache – Akselerator Cache Objek” telah diterjemahkan dalam 6 bahasa. Terima kasih kepada para penerjemah untuk kontribusi-nya.
Terjemahkan “Docket Cache – Akselerator Cache Objek” dalam bahasa Anda.
Tertarik mengembangkan?
Lihat kode, periksa repositori SVN , atau mendaftar ke log pengembangan melalui RSS.
Log Perubahan
26.04.12
- Added: DOCKET_CACHE_SKIP_UNCHANGED constant and “Skip Unchanged Cache Writes” option to turn it off.
- Fixed: Command::dropino_update() -> Wrong command in the WP-CLI help example.
- Fixed: View::parse_log_query() -> Cache View showed “Data Not available” for every cache file.
- Fixed: Cache Log -> Clicking a row selected a row further down in long logs, and nothing near the end.
- Fixed: Plugin::register_tweaks() -> WordPress Translation Caching looped until a fatal error with WPML String Translation.
- Fixed: Plugin::register_tweaks() -> WordPress Translation Caching gave text domains that were not loaded the translations of another domain.
- Fixed: Filesystem::opcache_compile() -> Cache files rewritten within the same second stayed stale when the host blocks opcache_invalidate() or the write came from WP-CLI.
- Improved: WP_Object_Cache::dc_save() -> Skip writing unchanged values to reduce OPcache wasted memory.
26.04.11
- Diperbaiki: Becache::export_transient() -> Transient dikembalikan sebagai string terserialisasi, bukan sebagai nilai aslinya.
- Diperbaiki: Becache::export_transient() -> Nilai transient bisa tertimpa oleh batas waktunya, dan transient yang sudah kedaluwarsa ikut tersimpan di cache.
- Diperbaiki: Becache::store_cache() -> Transient yang diekspor kini mempertahankan waktu kedaluwarsanya sendiri, alih-alih selalu menggunakan TTL maksimum.
- Diperbaiki: WP_Object_Cache::dc_update() -> Mengatur ulang tipe yang tersimpan saat incr/decr menulis nilai baru.
- Ditingkatkan: Becache -> Menyimpan transient berupa array dan stdClass sebagai PHP native, sedangkan kelas lain dideserialisasi saat dibaca.
- Ditingkatkan: WP_Object_Cache -> Menaikkan versi format cache di disk untuk menyingkirkan berkas cache transient yang ditulis oleh versi 26.04.10.
26.04.10
- Diperbaiki: WP_Object_Cache::dc_get()/dc_save() -> Mengembalikan string dari cache persis seperti saat disimpan untuk mencegah injeksi objek PHP dari nilai yang tampak seperti hasil serialisasi.
- Diperbaiki: WP_Object_Cache::dc_get() -> Memverifikasi kunci dan grup yang tersimpan sebelum menyajikan nilai dari cache.
- Diperbaiki: CliOpcache -> Menyimpan kunci rahasia bersama OPcache WP-CLI di berkas PHP, bukan di berkas lock yang dapat dibaca melalui web.
- Diperbaiki: Plugin::flush_fcache() -> Memvalidasi indeks berkas cache untuk mencegah path traversal.
- Diperbaiki: ReqAction -> Memindahkan perubahan status Tangguhkan Cache Objek ke dalam aksi yang diverifikasi dengan nonce.
- Diperbaiki: View::code_focus() -> Membangun pemberitahuan admin melalui node teks dan membatasi kunci opsi untuk mencegah XSS berbasis DOM.
- Diperbaiki: WpConfig::write_runtime() -> Hanya menulis nilai on/off/integer yang diharapkan ke runtime.php.
- Diperbaiki: Crawler -> Hanya menyertakan cookie pada permintaan loopback, tidak pernah ke endpoint Cronbot jarak jauh.
- Diperbaiki: CronAgent::close_ping() -> Mengecualikan output hook cron yang tertangkap dari respons ping.
- Diperbaiki: EventList -> Melakukan escape pada argumen event cron dan nama callback di tabel Cronbot.
- Diperbaiki: Tweaks -> Menyimpan respons HTTP ke cache hanya untuk permintaan GET tanpa Authorization atau Cookie, dan tidak pernah menyimpan respons yang mengatur cookie ke cache.
- Diperbaiki: MenuCache -> Melewati cache menu bersama untuk pengguna yang sudah login.
- Ditingkatkan: WP_Object_Cache -> Versi format cache di disk kini memigrasikan berkas cache dari sebelum pembaruan saat dibaca, tanpa perlu membersihkan cache secara manual.
26.04.09
- Ditambahkan: Cronbot -> Pemberitahuan sponsor saat layanan terhubung.
- Diperbaiki: nwdcx_cleanuptransient() -> Menggunakan prepared statement saat menghapus transient dari basis data.
- Diperbaiki: Crawler -> Memverifikasi sertifikat SSL pada permintaan ke endpoint jarak jauh.
- Diperbaiki: ReqAction -> Melakukan escape pada pesan eror Cronbot di pemberitahuan admin.
- Dihapus: Pemeriksaan Versi Kritis -> Tidak lagi diperlukan.
26.04.08
- Diperbaiki: WP_Object_Cache::dc_log() -> Menyamarkan nilai query string pada URI permintaan yang dicatat di log.
- Diperbaiki: Constans -> Nama berkas Log Cache standar kini tidak lagi dapat ditebak.
- Diperbaiki: Filesystem::log_remove_legacy() -> Menghapus berkas Log Cache yang tertinggal dengan nama lama.
- Diperbaiki: CronAgent::close_ping() -> Eror fatal pada permintaan ping yang ditolak.
- Diperbaiki: CronAgent::close_ping() -> Mengecualikan header Cookie dan Authorization dari data ping yang disimpan.
26.04.07
- Diperbaiki: Polyfill PhpToken stub -> Mewarisi kelas Nawawi\Symfony\Polyfill\Php80\PhpToken hasil scoping.
- Ditingkatkan: Memperbarui pustaka vendor Symfony untuk kompatibilitas PHP 8.4.
26.04.06
- Diperbaiki: admin/log.php -> Menerapkan esc_textarea() pada output Log Cache untuk mencegah XSS tersimpan.
- Diperbaiki: Plugin::dc_log() -> Melakukan sanitasi pada REQUEST_URI pemanggil sebelum dicatat di log.
- Diperbaiki: Plugin -> Pemeriksaan kapabilitas pada unduhan log/debug.log yang dapat diakses tanpa autentikasi saat ‘init’.
26.04.05
- Diperbaiki: Menghapus echo ganda di log.php.
26.04.04
- Ditambahkan: Sakelar di antarmuka Konfigurasi untuk Invalidasi OPcache WP-CLI (setara dengan konstanta DOCKET_CACHE_WPCLI_OPCACHE).
- Diperbaiki: CliOpcache::notify() -> Notifikasi per berkas ditampung dan dikirim saat shutdown untuk mencegah banjir permintaan HTTP selama GC dan penghapusan berkas cache satu per satu.
- Diperbaiki: CliOpcache -> Rute REST didaftarkan sebelum pemeriksaan kompatibilitas untuk menghilangkan eror 404 yang tidak perlu saat proses worker berhenti lebih awal ketika beban tinggi.
- Diperbaiki: CronAgent::receive_ping() -> Pengaman tipe data pada input ping untuk mencegah TypeError di PHP 8 akibat nilai berbentuk array.
- Diperbaiki: CronAgent::receive_ping() -> Return eksplisit setelah close_ping() saat CRONBOT dinonaktifkan.
- Diperbaiki: CronAgent::receive_ping() -> Loop Multisite mengisolasi eror per situs melalui try/catch; wpcron_error dilaporkan agar server cronbot dapat mendeteksi kegagalan yang terus-menerus.
- Diperbaiki: CronAgent::run_wpcron() -> Perlindungan terhadap re-entry melalui flag instance dan try/finally.
- Diperbaiki: CronAgent::run_wpcron() -> Memanggil ob_end_clean() pada jalur exception; berhenti mengurangi $run_event hingga di bawah nol.
- Diperbaiki: CronAgent::run_wpcron() -> Menginisialisasi $results dan $cron_event lebih awal untuk mencegah peringatan variabel tidak terdefinisi di PHP 8.
- Diperbaiki: CronAgent::run_wpcron() -> Pemeriksaan REQUEST_URI menggunakan urldecode() dan memeriksa wp_doing_cron() terlebih dahulu agar pemeriksaan tidak dapat dilewati dengan URL yang di-encode.
- Diperbaiki: CronAgent::send_action() -> Kunci cache kini menyertakan aksi untuk mencegah tabrakan antara panggilan on/off dari IP yang sama.
- Ditingkatkan: CronAgent::send_action() -> Cache-buster $stmp diperbarui setiap 5 menit untuk menghindari konten CDN yang usang pada proses yang berjalan lama.
- Ditingkatkan: CronAgent::check_connection() -> Dilewati pada permintaan AJAX/REST/cron untuk mengurangi beban tambahan hook shutdown pada endpoint dengan lalu lintas tinggi.
26.04.03
- Ditambahkan: CliOpcache — Menginvalidasi OPcache server web dari WP-CLI melalui endpoint REST.
- Ditambahkan: Konstanta DOCKET_CACHE_WPCLI_OPCACHE untuk mengaktifkan/menonaktifkan invalidasi OPcache melalui CLI.
- Ditambahkan: Konstanta DOCKET_CACHE_CONFIGACTION untuk mengaktifkan/menonaktifkan fitur Ekspor/Impor pengaturan.
- Ditambahkan: Fitur Ekspor/Impor pengaturan untuk mencadangkan dan memulihkan konfigurasi.
- Diperbaiki: CliOpcache -> Perlindungan terhadap path traversal menggunakan validasi realpath().
- Diperbaiki: CliOpcache -> Penahanan selama pembersihan massal untuk menghindari permintaan HTTP berlebihan saat seluruh cache dibersihkan.
- Diperbaiki: CliOpcache -> Kunci rahasia bersama diinisialisasi saat pendaftaran rute REST.
- Diperbaiki: ReqAction -> Bersihkan Cache Objek menyebabkan eror 502 nginx, kini pembersihan ditunda hingga respons selesai dikirim.
- Diperbaiki: Plugin::get_opcache_status() -> Memfilter skrip berdasarkan ABSPATH agar situs lain di shared hosting tidak ikut terhitung.
- Diperbaiki: Plugin::get_opcache_status() -> Menghapus pemeriksaan keusangan dengan is_file() yang tidak perlu pada setiap skrip dalam cache.
- Diperbaiki: Penampil OPcache -> Melakukan escape pada output nilai konfigurasi untuk mencegah XSS.
- Ditingkatkan: Filesystem::unlink() -> Memberi tahu OPcache server web saat berkas cache dihapus satu per satu.
- Ditingkatkan: Filesystem::cachedir_flush() -> Menggunakan kelas Crawler untuk permintaan HTTP internal.
- Ditingkatkan: Plugin::get_opcache_status() -> Melewati pembuatan array skrip untuk halaman Ikhtisar, dibatasi 50000 untuk OPcacheView.
- Ditingkatkan: Plugin::get_opcache_status() -> Pengaman batas waktu untuk pemindaian cache berkas di shared hosting.
- Ditingkatkan: OPcacheView -> Menghapus opsi “Semua Item” dan menggantinya dengan batas 50000 item.
- Ditingkatkan: OPcacheView::get_status() -> Menyimpan hasil ke cache untuk mencegah pemindaian ganda pada setiap pemuatan halaman.
Silakan lihat changelog.txt untuk perubahan sebelumnya.
Harap hapus secara manual wp-content/object-cache.php dan wp-content/cache/docket-cache jika terjadi kesalahan selama pembaruan. Terima kasih.
