Image
Image

Docket Cache – Pemecut Cache Objek

Description

Docket Cache ialah Cache Objek WordPress berterusan yang menyimpan data cache sebagai kod PHP biasa. Ia direka sebagai alternatif untuk laman yang tidak mempunyai akses kepada Redis atau Memcached.

Kebanyakan pemalam caching berasaskan fail menggunakan serialisasi dan nyahserialisasi untuk menyimpan objek PHP ke dalam fail rata. Docket Cache mengambil pendekatan berbeza dengan menukar objek kepada kod PHP biasa. Ini menjadikan pengambilan data lebih pantas dan meningkatkan prestasi keseluruhan, terutamanya apabila Zend OPcache didayakan.

Untuk maklumat lanjut, sila rujuk dokumentasi tentang Caching Dalam WordPress.

Mengapa perlu menggunakan plugin ini?

Untuk Cache Objek berterusan yang boleh diharap dalam WordPress, Redis atau Memcached ialah pilihan utama. Walau bagaimanapun, kedua-duanya memerlukan pengetahuan tentang pelayan dan jarang tersedia pada pelan pengehosan kos rendah atau pengehosan kongsi.

Alternatifnya ialah menyimpan cache objek dalam fail. Dalam WordPress, mengeksport objek PHP bukanlah sesuatu yang mudah. Kebanyakan pemalam caching berasaskan fail bergantung pada serialisasi dan nyahserialisasi objek untuk menyimpan dan mengambil data.

Docket Cache mengambil pendekatan yang lebih baik dengan menukar cache objek kepada kod PHP biasa. Ini lebih pantas kerana WordPress boleh menggunakan cache secara terus tanpa pemprosesan tambahan.

Ciri-Ciri

  • Caching Objek + OPcache
  • Advanced Post Caching
  • Precache Objek
  • Caching Menu WordPress
  • Caching Terjemahan WordPress
  • Pengoptimuman WordPress Core Query
  • Pengoptimuman Term Count Queries
  • Pengoptimuman Post, Halaman, Kiraan Komen
  • Pengoptimuman Jadual Pangkalan Data
  • Pengoptimuman WooCommerce
  • Penundaan WP Options Autoload
  • Ubah suai Post Jadual Terlepas
  • Cache Objek + Statistik OPcache + Pemapar OPcache
  • Log Cache
  • Servis Cronbot
  • Sokongan WP-CLI
  • Sokongan Multisite / Multi-Network

Keperluan

Untuk menggunakan Docket Cache memerlukan minimum:

  • PHP 7.2.5
  • WordPress 5.4

Kami juga mengesyorkan:

  • Zend OPcache

Docket Cache menyimpan cache sebagai fail PHP, jadi ia berfungsi sama ada dengan atau tanpa OPcache. Dengan OPcache, PHP menyimpan fail tersebut dalam memori supaya sentiasa sedia digunakan dan tidak perlu membacanya dari cakera setiap kali halaman dimuatkan, menjadikan cache jauh lebih pantas.

Dokumentasi

Untuk pilihan konfigurasi, panduan pemasangan dan penggunaan baris arahan, sila rujuk Dokumentasi.

Pembangunan

  • Repositori GitHub — Kod sumber dan pusat pembangunan Docket Cache.
  • Log Penukaran — Sejarah penuh perubahan, pembaikan dan penambahbaikan.
  • Gapo Tunnel — Dedahkan perkhidmatan setempat kepada internet melalui terowong yang selamat. Berguna untuk menguji Docket Cache dalam sekitaran pembangunan setempat.
  • WP Staging Desktop — Tukar laman WordPress yang sedang beroperasi menjadi sekitaran pembangunan setempat dalam masa beberapa minit.

Taja Projek Ini

Sokong pembangunan berterusan Docket Cache dengan sumbangan sekali sahaja atau berulang.

Penaja Kehormat:

Sekalung penghargaan dan ucapan terima kasih.

Penaja lain dinyatakan dalam senarai yang dihormati

Screenshots

Installation

Docket Cache memerlukan PHP 7.2.5 atau lebih tinggi, WordPress 5.4 atau lebih tinggi, dan Zend OPcache untuk prestasi terbaik.

  1. Dalam pentadbir WordPress anda, pergi ke Pemalam -> Tambah Baharu.
  2. Cari “Docket Cache” dan klik Pasang Sekarang.
  3. Klik Aktifkan, atau Aktifkan Rangkaian untuk persediaan Multisite.
  4. Klik Docket Cache pada menu kiri untuk mengakses halaman tetapan.

Sila tunggu beberapa saat sehingga Docket Cache mula menyimpan objek dalam cache.

FAQ

Apa itu Caching Objek dalam WordPress?

Caching objek menyimpan hasil pertanyaan pangkalan data supaya ia boleh diambil dengan pantas apabila diperlukan pada masa akan datang.

Data disampaikan terus dari cache tanpa perlu membuat pertanyaan pangkalan data berulang kali. Ini mengurangkan beban pada pelayan anda dan menjadikan laman anda lebih pantas.

Secara ringkasnya, caching objek menyimpan data yang kerap digunakan di lokasi yang boleh diakses dengan lebih pantas.

Apa itu Docket Cache dalam Object Caching?

Secara lalai, cache objek WordPress tidak berterusan. Ini bermakna data cache disimpan dalam memori hanya sepanjang satu permintaan halaman dan tidak dikekalkan antara pemuatan halaman. Untuk menjadikannya berterusan, cache objek mesti disimpan pada cakera.

Docket Cache bukan sekadar menyimpan cache objek — ia menukar data cache kepada kod PHP biasa. Ini lebih pantas kerana WordPress boleh menggunakan cache secara terus tanpa pemprosesan tambahan.

Apa itu OPcache dalam Docket Cache?

OPcache ialah enjin caching yang terbina dalam PHP. Ia meningkatkan prestasi dengan menyimpan kod bait skrip yang telah dikompil dalam memori kongsi, jadi PHP tidak perlu memuatkan dan menghurai skrip pada setiap permintaan.

Docket Cache menukar cache objek kepada kod PHP biasa. Apabila membaca dan menulis data cache, ia menggunakan OPcache secara terus, lalu menghasilkan pengambilan data yang lebih pantas dan prestasi yang lebih baik.

Apa itu Servis Cronbot dalam Docket Cache?

Cronbot ialah perkhidmatan luaran yang menghantar permintaan ke laman web anda setiap jam untuk memastikan WordPress Cron sentiasa berjalan secara aktif.

Perkhidmatan ini adalah pilihan dan tidak diwajibkan. Secara lalai, ia tidak disambungkan ke pelayan titik hujung. Anda boleh melumpuhkannya sepenuhnya pada halaman konfigurasi.

Apa itu Pemungut Sampah dalam Docket Cache?

Pemungut Sampah ialah acara berjadual yang berjalan setiap 5 minit untuk memantau fail cache, membersihkan entri yang telah luput dan mengumpul statistik.

Apa itu cakera RAM dalam Docket Cache?

Cakera RAM menggunakan memori (RAM) pelayan anda sebagai pemacu storan. Ia boleh jadi peranti perkakasan atau cakera maya.

Membaca dan menulis data dari RAM jauh lebih pantas berbanding dari SSD. Menyimpan fail Docket Cache pada cakera RAM boleh meningkatkan prestasi dengan ketara.

Sila ambil perhatian bahawa penciptaan cakera RAM memerlukan akses pentadbir pelayan (root), jadi pilihan ini tidak tersedia pada pengehosan kongsi.

Berikut ialah contoh arahan untuk mencipta dan menggunakan cakera RAM dengan Docket Cache:

$ cd wp-content/
$ sudo mount -t tmpfs -o size=500m tmpfs ./cache/docket-cache

Untuk melekapkan laluan cache secara automatik apabila pelayan dimulakan, kemas kini fail /etc/fstab anda.

Untuk maklumat lanjut tentang cakera RAM:

  1. How to Easily Create a RAM Disk
  2. What Is /dev/shm and Its Practical Usage
  3. Creating a Filesystem in RAM

Di Windows, cipta cakera RAM dan tetapkan DOCKET_CACHE_PATH supaya menghala ke pemacu cakera RAM tersebut.

Berapakah RAM minimum yang diperlukan untuk pengehosan kongsi?

Secara lalai, WordPress menetapkan had memori kepada 256 MB. Apabila digabungkan dengan MySQL dan pelayan web, anda memerlukan lebih daripada 256 MB. Jika pelan pengehosan anda hanya menyediakan 256 MB secara keseluruhan, jumlah ini tidak mencukupi dan Docket Cache tidak akan dapat meningkatkan prestasi laman anda.

Apakah perbezaan Docket Cache berbanding pemalam cache objek yang lain?

Docket Cache ialah Pemecut Cache Objek. Ia mengoptimumkan caching dengan mengendalikan pertanyaan kiriman, pengiraan komen, terjemahan WordPress dan banyak lagi sebelum menyimpan cache objek.

Bolehkah saya menggunakannya bersama pemalam cache lain?

Ya dan tidak. Anda boleh menggunakannya bersama pemalam caching halaman, tetapi tidak dengan pemalam cache objek yang lain.

Bolehkah saya menggunakannya dengan LiteSpeed Cache?

Ya. Pemalam LiteSpeed Cache mempunyai ciri Cache Objeknya sendiri. Pemalam tersebut mungkin memaparkan notis yang meminta anda menyahaktifkan Docket Cache. Cuma matikan ciri Cache Objek dalam LiteSpeed Cache untuk menggunakan Docket Cache sebagai gantinya.

Bolehkah saya menggunakan Docket Cache pada kedai WooCommerce yang sibuk?

Tidak disyorkan untuk kedai WooCommerce yang mempunyai trafik tinggi. Docket Cache direka sebagai alternatif berasaskan fail kepada cache dalam memori seperti Redis dan Memcached, dan mungkin tidak dapat menampung keperluan kedai yang sibuk. Untuk laman WooCommerce dengan trafik yang tinggi, kami mengesyorkan penggunaan Redis sebagai gantinya.

Saya mempunyai VPS. Bolehkah saya menggunakan Docket Cache sebagai ganti Redis?

Boleh, tetapi jika VPS anda menyokong Redis, kami mengesyorkan penggunaan Redis untuk prestasi yang lebih baik. Docket Cache paling sesuai untuk sekitaran yang tidak menyediakan Redis atau Memcached. Walau bagaimanapun, Docket Cache berfungsi dengan baik untuk laman bersaiz kecil hingga sederhana pada VPS, tanpa memerlukan sambungan rangkaian dan tanpa risiko konflik kunci cache.

Reviews

Image
6 Mac 2026 1 reply
After installing this plugin I saw significant speed increases on page loading times. I've used it in combination with other page and browser cache plugins and have had no conflicts.
Image
29 September 2025 1 reply
Docket Cache hat meine Seiten mit Elementor Pro, LearnPress und PMP deutlich schneller gemacht. Die Datenbankzeit ging praktisch auf null, die Anzahl der Queries wurde stark reduziert, und das Backend fühlt sich viel reaktionsschneller an. Einfach zu installieren, leicht zu konfigurieren und perfekt kompatibel mit WP Rocket und WP Optimize. Absolute Empfehlung!
Image
26 September 2025
Works flawless, really simple way to test object cache locally when developing, without needing to setup memchache or redis or similar.
Read all 50 reviews

Contributors & Developers

“Docket Cache – Pemecut Cache Objek” adalah perisian sumber terbuka. Orang-orang berikut telah menyumbang kepada pemalam ini.

Penyumbang

“Docket Cache – Pemecut Cache Objek” telah diterjemahkan ke dalam 6 penempatan. Terima kasih kepada para penterjemah untuk terjemahan mereka.

Translate “Docket Cache – Pemecut Cache Objek” into your language.

Berminat dalam pembangunan?

Layari kod, periksa repositori SVN, atau langgani log pembangunan dengan RSS.

Changelog

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

  • Dibaiki: Becache::export_transient() -> Transient dikembalikan sebagai rentetan yang diserialisasi dan bukannya nilai asalnya.
  • Dibaiki: Becache::export_transient() -> Nilai transient boleh digantikan oleh nilai tamat masanya, dan transient yang telah luput turut disimpan dalam cache.
  • Dibaiki: Becache::store_cache() -> Transient yang dieksport kini mengekalkan tempoh luputnya sendiri dan tidak lagi sentiasa menggunakan TTL maksimum.
  • Dibaiki: WP_Object_Cache::dc_update() -> Menetapkan semula jenis yang disimpan apabila incr/decr menulis nilai baharu.
  • Ditambah baik: Becache -> Menyimpan transient jenis tatasusunan dan stdClass sebagai PHP asli, manakala kelas lain dinyahserialisasi semasa dibaca.
  • Ditambah baik: WP_Object_Cache -> Menaikkan versi format cache pada cakera untuk menyingkirkan fail cache transient yang ditulis oleh versi 26.04.10.

26.04.10

  • Dibaiki: WP_Object_Cache::dc_get()/dc_save() -> Mengembalikan rentetan daripada cache tepat seperti yang disimpan untuk mengelakkan suntikan objek PHP daripada nilai yang kelihatan seperti telah diserialisasi.
  • Dibaiki: WP_Object_Cache::dc_get() -> Mengesahkan kunci dan kumpulan yang disimpan sebelum menyampaikan nilai daripada cache.
  • Dibaiki: CliOpcache -> Menyimpan rahsia kongsi OPcache WP-CLI dalam fail PHP dan bukannya dalam fail kunci yang boleh dibaca melalui web.
  • Dibaiki: Plugin::flush_fcache() -> Mengesahkan indeks fail cache untuk mengelakkan path traversal.
  • Dibaiki: ReqAction -> Memindahkan perubahan keadaan Hentikan Cache Objek ke dalam tindakan yang disahkan dengan nonce.
  • Dibaiki: View::code_focus() -> Membina notis pentadbir melalui nod teks dan mengehadkan kunci pilihan untuk mengelakkan XSS berasaskan DOM.
  • Dibaiki: WpConfig::write_runtime() -> Hanya menulis nilai on/off/integer yang dijangkakan ke dalam runtime.php.
  • Dibaiki: Crawler -> Hanya melampirkan cookie pada permintaan loopback, dan tidak sekali-kali pada titik hujung Cronbot jauh.
  • Dibaiki: CronAgent::close_ping() -> Mengecualikan output hook cron yang ditangkap daripada respons ping.
  • Dibaiki: EventList -> Melakukan escape pada argumen acara cron dan nama panggil balik dalam jadual Cronbot.
  • Dibaiki: Tweaks -> Menyimpan respons HTTP dalam cache hanya untuk permintaan GET tanpa Authorization atau Cookie, dan tidak sekali-kali menyimpan respons yang menetapkan cookie dalam cache.
  • Dibaiki: MenuCache -> Melangkau cache menu yang dikongsi untuk pengguna yang telah log masuk.
  • Ditambah baik: WP_Object_Cache -> Versi format cache pada cakera kini memigrasikan fail cache sebelum kemas kini semasa dibaca, tanpa perlu menghapuskan cache secara manual.

26.04.09

  • Ditambah: Cronbot -> Notis penaja apabila perkhidmatan disambungkan.
  • Dibaiki: nwdcx_cleanuptransient() -> Menggunakan prepared statement semasa membuang transient daripada pangkalan data.
  • Dibaiki: Crawler -> Mengesahkan sijil SSL pada permintaan ke titik hujung jauh.
  • Dibaiki: ReqAction -> Melakukan escape pada mesej ralat Cronbot dalam notis pentadbir.
  • Dibuang: Semakan Versi Kritikal -> Tidak diperlukan lagi.

26.04.08

  • Dibaiki: WP_Object_Cache::dc_log() -> Menyembunyikan nilai rentetan pertanyaan dalam URI permintaan yang direkodkan dalam log.
  • Dibaiki: Constans -> Nama fail lalai Log Cache tidak lagi boleh diramal.
  • Dibaiki: Filesystem::log_remove_legacy() -> Membuang fail Log Cache yang masih tertinggal dengan nama lama.
  • Dibaiki: CronAgent::close_ping() -> Ralat fatal pada permintaan ping yang ditolak.
  • Dibaiki: CronAgent::close_ping() -> Mengecualikan pengepala Cookie dan Authorization daripada data ping yang disimpan.

26.04.07

  • Dibaiki: Polyfill PhpToken stub -> Mewarisi kelas Nawawi\Symfony\Polyfill\Php80\PhpToken yang telah di-scope.
  • Ditambah baik: Mengemas kini pustaka vendor Symfony untuk keserasian PHP 8.4.

26.04.06

  • Dibaiki: admin/log.php -> Menggunakan esc_textarea() pada output Log Cache untuk mengelakkan XSS tersimpan.
  • Dibaiki: Plugin::dc_log() -> Membersihkan REQUEST_URI pemanggil sebelum direkodkan dalam log.
  • Dibaiki: Plugin -> Semakan keupayaan pada muat turun log/debug.log yang boleh dicapai tanpa pengesahan pada ‘init’.

26.04.05

  • Dibaiki: Membuang echo berganda dalam log.php.

26.04.04

  • Ditambah: Suis togol pada antara muka Konfigurasi untuk Penidaksahan OPcache WP-CLI (sepadan dengan pemalar DOCKET_CACHE_WPCLI_OPCACHE).
  • Dibaiki: CliOpcache::notify() -> Pemberitahuan bagi setiap fail ditimbal dan dihantar semasa shutdown untuk mengelakkan lambakan permintaan HTTP semasa GC dan pemadaman fail cache secara individu.
  • Dibaiki: CliOpcache -> Hala REST didaftarkan sebelum semakan keserasian untuk menghapuskan ralat 404 yang tidak perlu apabila proses pekerja berhenti awal semasa beban tinggi.
  • Dibaiki: CronAgent::receive_ping() -> Perlindungan keselamatan jenis pada input ping untuk mengelakkan TypeError PHP 8 daripada nilai berbentuk tatasusunan.
  • Dibaiki: CronAgent::receive_ping() -> Return yang eksplisit selepas close_ping() apabila CRONBOT dilumpuhkan.
  • Dibaiki: CronAgent::receive_ping() -> Gelungan Multisite mengasingkan ralat bagi setiap laman melalui try/catch; wpcron_error dilaporkan supaya pelayan cronbot dapat mengesan kegagalan yang berterusan.
  • Dibaiki: CronAgent::run_wpcron() -> Perlindungan kemasukan semula melalui bendera tika dan try/finally.
  • Dibaiki: CronAgent::run_wpcron() -> Memanggil ob_end_clean() pada laluan pengecualian; berhenti mengurangkan $run_event sehingga di bawah sifar.
  • Dibaiki: CronAgent::run_wpcron() -> Mengawalkan $results dan $cron_event lebih awal untuk mengelakkan amaran pemboleh ubah tidak ditakrifkan dalam PHP 8.
  • Dibaiki: CronAgent::run_wpcron() -> Semakan REQUEST_URI menggunakan urldecode() dan menyemak wp_doing_cron() terlebih dahulu supaya semakan tidak dapat dipintas menggunakan URL yang dikodkan.
  • Dibaiki: CronAgent::send_action() -> Kunci cache kini merangkumi tindakan untuk mengelakkan pertembungan antara panggilan on/off daripada IP yang sama.
  • Ditambah baik: CronAgent::send_action() -> Cache-buster $stmp disegarkan setiap 5 minit untuk mengelakkan kandungan CDN lapuk dalam proses yang berjalan lama.
  • Ditambah baik: CronAgent::check_connection() -> Dilangkau pada permintaan AJAX/REST/cron untuk mengurangkan beban tambahan hook shutdown pada titik hujung bertrafik tinggi.

26.04.03

  • Ditambah: CliOpcache — Menidaksahkan OPcache pelayan web daripada WP-CLI melalui titik hujung REST.
  • Ditambah: Pemalar DOCKET_CACHE_WPCLI_OPCACHE untuk mendayakan/melumpuhkan penidaksahan OPcache melalui CLI.
  • Ditambah: Pemalar DOCKET_CACHE_CONFIGACTION untuk mendayakan/melumpuhkan ciri Eksport/Import tetapan.
  • Ditambah: Ciri Eksport/Import tetapan untuk sandaran dan pemulihan konfigurasi.
  • Dibaiki: CliOpcache -> Perlindungan path traversal menggunakan pengesahan realpath().
  • Dibaiki: CliOpcache -> Sekatan semasa penghapusan pukal untuk mengelakkan permintaan HTTP yang berlebihan semasa keseluruhan cache dihapuskan.
  • Dibaiki: CliOpcache -> Rahsia kongsi diawalkan semasa pendaftaran hala REST.
  • Dibaiki: ReqAction -> Hapuskan Cache Objek menyebabkan ralat 502 nginx, kini penghapusan ditangguhkan sehingga selepas respons dihantar.
  • Dibaiki: Plugin::get_opcache_status() -> Menapis skrip mengikut ABSPATH supaya laman lain pada pengehosan kongsi tidak turut dikira.
  • Dibaiki: Plugin::get_opcache_status() -> Membuang semakan fail lapuk melalui is_file() yang tidak perlu pada setiap skrip dalam cache.
  • Dibaiki: Pemapar OPcache -> Melakukan escape pada output nilai konfigurasi untuk mengelakkan XSS.
  • Ditambah baik: Filesystem::unlink() -> Memaklumkan OPcache pelayan web apabila fail cache dipadam secara individu.
  • Ditambah baik: Filesystem::cachedir_flush() -> Menggunakan kelas Crawler untuk permintaan HTTP dalaman.
  • Ditambah baik: Plugin::get_opcache_status() -> Melangkau pembinaan tatasusunan skrip untuk halaman Gambaran Keseluruhan, dihadkan kepada 50000 untuk OPcacheView.
  • Ditambah baik: Plugin::get_opcache_status() -> Perlindungan had masa untuk imbasan cache fail pada pengehosan kongsi.
  • Ditambah baik: OPcacheView -> Membuang pilihan “Semua Item” dan menggantikannya dengan had 50000 item.
  • Ditambah baik: OPcacheView::get_status() -> Menyimpan hasil dalam cache untuk mengelakkan imbasan berganda bagi setiap pemuatan halaman.

Sila rujuk changelog.txt untuk perubahan sebelumnya.

Sila buangkan secara manual wp-content/object-cache.php dan wp-content/cache/docket-cache jika berlaku ralat semasa proses kemas kini. Terima kasih.