ခေတ်သစ်ဝက်ဘ်အပလီကေးရှင်းများဖွံ့ဖြိုးလာသောအခါစွမ်းဆောင်ရည်နှင့်တုန့်ပြန်မှုသည်အရေးပါသည်။ အထူးသဖြင့်ကျွန်ုပ်တို့၏ဝက်ဘ်ဆိုက်များသည်ပိုကြီးလာသည်နှင့်ပိုကြီးလာသောအခါ 0 က်ဘ်ဆိုက်၏စွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်စေရန်နှင့်ဆာဗာတွင်ဝန်ထုပ်ဝန်ပိုးကိုလျှော့ချရန်နှင့်ဆာဗာတွင်ဝန်ထုပ်ဝန်ပိုးကိုလျှော့ချရန်ပြ a နာတစ်ခုဖြစ်လာသည်။ Cache သည်စွမ်းဆောင်ရည်တိုးတက်စေရန်ထိရောက်သောနည်းလမ်းများအနက်မှတစ်ခုဖြစ်သည်။ PHP သည် Memory တွင်အချက်အလက်များကို cache cache memory cache ကို cache cactory ကိုသိသိသာသာတိုးတက်အောင်ပြုလုပ်နိုင်သည်။
Apcu extensions များသည်ဒေတာများကိုဒေတာများကိုဒေတာသို့မဟုတ်ဖိုင်စနစ်မှတိုင်းအချိန်တိုင်းဖတ်ရန်မလိုဘဲအချက်အလက်များကိုသိုလှောင်ခြင်းဖြင့်အချက်အလက်များကိုလျင်မြန်စွာပြန်လည်ရယူရန်ခွင့်ပြုသည်။ ၎င်းသည်ဒေတာဘေ့စ်ပေါ်တွင်ဝန်ထုပ်ဝန်ပိုးကိုလျှော့ချရုံသာမကဆာဗာ၏တုန့်ပြန်မှုအချိန်ကိုလည်းလျော့နည်းစေသည်။
Apcu သည် PHP အတွက် cache extension တစ်ခုဖြစ်သည်။ ၎င်းသည်နောက်ဆက်တွဲတောင်းဆိုမှုများကိုရယူရန်မှတ်ဉာဏ်တွင်အချက်အလက်များကိုသိုလှောင်ထားသည့်ထိရောက်သော cache ကိုထောက်ပံ့ပေးသည်။ ရိုးရာ cache စနစ်များနှင့်နှိုင်းယှဉ်လျှင် Apcu သည်အမဲလိုက်နှင့်ပိုမိုမြင့်မားသောစွမ်းဆောင်ရည်နိမ့်သည်။ ၎င်း၏အဓိကအားသာချက်မှာစာမျက်နှာအကြောင်းအရာအကြောင်းအရာ (သို့) တောင်းဆိုမှုနှုန်းတွက်ချက်မှုပမာဏကိုလျှော့ချရန်စာမျက်နှာအကြောင်းအရာသို့မဟုတ်မေးမြန်းမှုရလဒ်များဖြစ်နိုင်သည်။
apcu_entry () APCU တိုးချဲ့မှုတွင်အလွန်လက်တွေ့ကျတဲ့လုပ်ဆောင်ချက်ဖြစ်သည်။ ဒေတာကို item ကို cache ထဲထည့်ရန်အသုံးပြုသည်။ cache ကို item ကိုမကုန်ဆုံးမီထပ်ခါတလဲလဲမသိမ်းဆည်းနိုင်ပါ။ ၎င်းသည် cache သည် cache ကိုထပ်ခါတလဲလဲကွန်ပျူတာဖြစ်စဉ်များကိုရှောင်ရှားရန်ခွင့်ပြုသည်။
apcu_entry () function ကို၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
mixed apcu_entry ( string $key , callable $callback [, int $ttl = 0 ] )
$ key : Array ရဲ့အညွှန်းကိန်းနဲ့ဆင်တူတဲ့ cached key ကို cache ထဲမှာအချက်အလက်တွေကိုထူးခြားစွာဖော်ပြတယ်။
$ callback : cache ထဲမှာသက်ဆိုင်ရာသော့မရှိတဲ့အတွက် cardback function ကိုကွပ်မျက်ခံရမည့် callback function ကို။
$ TTL - Cache ပြီးနောက်သက်တမ်းကုန်ဆုံးရန်မည်မျှကြာမည်ကိုညွှန်ပြသည့် CACTED SARTINCE TAME THE, ပုံသေသည် 0 င်သည်။ ဆိုလိုသည်မှာ၎င်းသည်ဘယ်တော့မျှသက်တမ်းကုန်ဆုံးမည်မဟုတ်ဟုဆိုလိုသည်။
အောင်မြင်ပါက, သိုလှောင်ထားသည့်ဒေတာများကိုပြန်ပို့ပါ။
အကယ်. cache မျိုးဆက်ပျက်ကွက်ပါက မှားယွင်းစွာ ပြန်လာသည်။
apcu_entry () မှတစ်ဆင့်ကျွန်ုပ်တို့သည် dynamically mandalatic page content သို့မဟုတ်မေးမြန်းမှုရလဒ်များကို cache လုပ်နိုင်ပါတယ်။ နောက်တစ်ကြိမ်တွင်တူညီသောစာမျက်နှာကိုကျွန်ုပ်တို့ရယူသည့်အခါ၎င်းကိုပြန်လည်တွက်ချက်မှုကိုရှောင်ရှားရန် Cache မှ၎င်းကိုတိုက်ရိုက်ရယူပြီးစာမျက်နှာ Loading မြန်နှုန်းကိုတိုးတက်စေသည်။
ကျွန်ုပ်တို့တွင်လည်ပတ်မှုအမြောက်အများရှိသောဝက်ဘ်စာမျက်နှာရှိသည်ဆိုပါစို့။ ဒေတာဘေ့စ်မှ dyatamically generated content အချို့ကိုရရန်လိုအပ်သည်ဆိုပါစို့။ စာမျက်နှာတစ်ခုဖွင့်သည့်အခါဒေတာဘေ့စ်မှဒေတာဘေ့စ်မှအချက်အလက်များရယူရန်အချိန်နှင့်အရင်းအမြစ်များကိုအချိန်ယူသည်။ စွမ်းဆောင်ရည်တိုးတက်စေရန်အတွက် apcu_entry () ကို ဒေတာဘေ့စ်မေးမြန်းချက်များ၏ရလဒ်များကို cache ကိုသုံးနိုင်သည်။
<?php
// cache တစ်ခုရှိမရှိစစ်ဆေးပါ
$pageCache = apcu_entry('home_page_cache', function () {
// ဒေတာဘေ့စတစ်ခုမှဒေတာများကိုရယူခြင်း
$data = file_get_contents("https://gitbox.net/data/content.txt"); // ဤသည်ကိုသိမ်းဆည်းရန်လိုအပ်သည့်ဒေတာဟုယူဆ
return $data;
}, 3600); // သိုကာတာ1နာရီ
echo $pageCache;
?>
Page_page_cache () function မှတဆင့် function မှတဆင့် function မှတဆင့် cache မှ cache မှ cache မှသတင်းအချက်အလက်နှင့်သက်ဆိုင်သောဒေတာကိုရရန်ကြိုးစားသည်။
cache တွင်အချက်အလက်မရှိပါက callback function ကိုဝေးလံခေါင်သီသောဆာဗာမှအချက်အလက်များတင်ခြင်းကိုအကောင်အထည်ဖော်လိမ့်မည် ( https://gitbox.net/data/content.txt )
ပြန်လည်ရယူထားသောဒေတာများကိုစက္ကန့် 3600 စက္ကန့်အတွင်းသိမ်းဆည်းထားမည် (I.E. 1 နာရီ) နှင့်ဤကာလအတွင်း accuse အားလုံးသည်ဒေတာများကို cache မှတိုက်ရိုက်ဖတ်ပါလိမ့်မည်။
အကယ်. cache သက်တမ်းကုန်ဆုံးမသွားပါကနောက်လက်လှမ်းမီမှုသည်ဒေတာများကိုထပ်မံတင်ရန်မလိုအပ်သော်လည်းသိုလှောင်ထားသည့်အကြောင်းအရာများကိုတိုက်ရိုက်ပြန်ပို့သည်။
ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ကျွန်ုပ်တို့တောင်းဆိုသည့်အခါတိုင်းဆာဗာမှဒေတာများကိုပြန်လည်ရယူခြင်းကိုရှောင်ရှားနိုင်သည်။
static ဖိုင်များကို cache : apcu ကိုအသုံးပြုခြင်းအားဖြင့်အချို့သော static အကြောင်းအရာအချို့ကို cache ကို အသုံးပြု. (ဥပမာ HTML, CSS, JavaScript ဖိုင်များ) သည်ထပ်မံတိုးတက်လာနိုင်သည်။ မကြာခဏမပြောင်းလဲသောအကြောင်းအရာများအတွက် cache အကျိုးသက်ရောက်မှုသည်အထူးသဖြင့်သိသာထင်ရှားသည်။
ဒေတာဘေ့စ်စုံစမ်းမှု cache : ဒေတာဘေ့စ်မေးမြန်းချက်များသည်နှေးကွေးနေသည့်အခြေအနေများအတွက် apcu_entry () ကို သင်တောင်းခံသည့်အခါတိုင်းဒေတာဘေ့စ်လုပ်ငန်းများကိုရှောင်ရှားရန် Cache ကိုသုံးနိုင်သည်။ Database Index Optimization နှင့်ပေါင်းစပ်ပြီး 0 က်ဘ်ဆိုက်၏စွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်နိုင်သည်။
Page Cache : static pages များအတွက် apcu သည်စာမျက်နှာတစ်ခုလုံး၏ HTML အကြောင်းအရာများကို cache လုပ်ရန်အသုံးပြုသည်။ စာမျက်နှာအကြောင်းအရာသည်မကြာခဏမပြောင်းလဲသည့်အခါ cache ကိုအသုံးပြုခြင်းသည်တုန့်ပြန်မှုမြန်နှုန်းကိုများစွာတိုးတက်စေနိုင်သည်။
သင့်လျော်သော cache အချိန် - cache ကို (ရှင်သန်ရပ်တည်ရေးအချိန်) ကိုအလျင်အမြန်မဖြစ်စေနိုင်ပါ။
apcu_entry () function ကို apcu extension တွင်အသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် dynamically generation content ကိုအလွယ်တကူသိမ်းဆည်းနိုင်ပြီးဝက်ဘ်ဆိုက်၏တုန့်ပြန်မှုမြန်နှုန်းနှင့်စွမ်းဆောင်ရည်ကိုတိုးတက်စေနိုင်သည်။ ၎င်းသည်သိုလှောင်ထားသည့်ဒေတာဘေ့စ်စုံစမ်းမှုရလဒ်များ, Page Content သို့မဟုတ် static file များ, APCU သည်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ဆာဗာပေါ်ရှိဝန်ကိုထိထိရောက်ရောက်လျှော့ချနိုင်ပြီးအသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်စေနိုင်သည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင် cache ကိုဆင်ခြင်တုံတရားအသုံးပြုခြင်းသည်သင်၏လျှောက်လွှာကိုသိသာထင်ရှားသောစွမ်းဆောင်ရည်တိုးတက်စေနိုင်သည်။