Memonache သည်အချက်အလက်များကိုလျင်မြန်စွာသိုလှောင်ခြင်းနှင့်ဖတ်နိုင်သည့်လူကြိုက်များသောမှတ်ဉာဏ်သိုလှောင်စနစ်တစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည် PHP တွင် PHP တွင် Memcache ကို installation configuration action configurations မှအမှန်တကယ် application starios များမှအမှန်တကယ် application starios မှအမှန်တကယ် application starios များသို့ အသုံးပြု. မိတ်ဆက်ပေးလိမ့်မည်။
Memcache ကိုမသုံးမီ, Memcack extension ကိုအရင်ထည့်သွင်းရန်လိုအပ်သည်။ အောက်ပါအတိုင်းအဆင့်များမှာ -
ပထမ ဦး စွာ MempcICE Extension ၏သင့်လျော်သောဗားရှင်းကို download လုပ်ပါ။ decompression ပြီးနောက် directory ကိုရိုက်ထည့်ပြီး compile နှင့် install လုပ်ရန်အောက်ပါ command ကို execute လုပ်ပါ။
$ phpize
$ ./configure
$ make && make install
ပြီးတာနဲ့ php.ini ဖိုင်ကိုတည်းဖြတ်ပါ။
extension=memcache.so
Saving ပြီးနောက် configuration ကိုအကျိုးသက်ရောက်စေရန်ဝက်ဘ်ဆာဗာကိုပြန်ဖွင့်ပါ။
PHP ရှိ Memcacy server သို့ဆက်သွယ်ခြင်းဥပမာတစ်ခုမှာအောက်ပါအတိုင်းဖြစ်သည် -
$memcache = new Memcache;
$memcache->connect('127.0.0.1', 11211);
ဆက်နွယ်မှုရှိသောအချက်အလက်သိုလှောင်မှု, ရယူခြင်း, ပယ်ဖျက်ခြင်းနှင့်လျှော့ချခြင်းနှင့်လျော့နည်းခြင်းတို့ကိုပြုလုပ်နိုင်သည်။
ဒေတာကိုသိမ်းပါ။
// ဒေတာသိုလှောင်ထားပါ
$memcache->set('key', 'value', 0, 3600);
// ဒေတာကိုရယူပါ
$value = $memcache->get('key');
ဒေတာများကိုဖျက်ပါ။
$memcache->delete('key');
တန်ဖိုးများကိုတိုးမြှင့်ခြင်းနှင့်လျှော့ချ:
// ဒေတာထည့်ပါ
$memcache->increment('key', 1);
// ဒေတာကိုလျှော့ချပါ
$memcache->decrement('key', 1);
သက်တမ်းကုန်ဆုံးချိန်ကိုသတ်မှတ်ပါ (စက္ကန့်အနည်းငယ်အတွင်း)
$memcache->set('key', 'value', 0, 60); // 60စက္ကန့်အတွင်းသက်တမ်းကုန်ဆုံး
Memcache သည်ဒေတာဘေ့စ်ကိုအကြိမ်ရေအကြိမ်ရေများ,
ဒေတာဘေ့စ်မေးမြန်းချက်များသည်များသောအားဖြင့်ရှည်လျားပြီး cache query query query ရလဒ်များကို Memcache ကိုအသုံးပြုခြင်းသည်တုံ့ပြန်မှုမြန်နှုန်းကိုသိသိသာသာတိုးတက်စေနိုင်သည်။
$data = $memcache->get('query_result');
if (empty($data)) {
// cache ထဲမှာဒေတာမရှိလျှင်,ဒေတာဘေ့စ်မှမေးမြန်းခြင်း
$query = 'SELECT * FROM table';
// စုံစမ်းမှုစစ်ဆင်ရေးလုပ်ဆောင်ပါ...
// Store Query သည် cache ကိုဖြစ်ပေါ်စေသည်
$memcache->set('query_result', $data, 0, 3600);
}
မကြာခဏပြောင်းလဲသွားသောစာမျက်နှာများအတွက်ထုတ်လုပ်ထားသောစာမျက်နှာအကြောင်းအရာသည်မျိုးဆက်အချိန်ကိုလျှော့ချရန်သိမ်းဆည်းထားနိုင်သည်။
$content = $memcache->get('page_content');
if (empty($content)) {
// cache ထဲတွင်စာမျက်နှာအကြောင်းအရာမရှိပါက,စာမျက်နှာတစ်ခုထုတ်လုပ်ပါ
ob_start();
// စာမျက်နှာမျိုးဆက်...
$content = ob_get_contents();
ob_end_clean();
// cache ထဲတွင်စာမျက်နှာအကြောင်းအရာသိုလှောင်ပါ
$memcache->set('page_content', $content, 0, 3600);
}
echo $content;
ထပ်ခါတလဲလဲတွက်ချက်မှုများကိုရှောင်ရှားရန်နှင့်စွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်အလယ်အလတ်တွက်ချက်မှုရလဒ်များကို cache
$result = $memcache->get('calc_result');
if (empty($result)) {
// အဘယ်သူမျှမတွက်ချက်မှုရလဒ်ကို cache အတွက်ရလဒ်ရှိလျှင်,ထိုအခါတွက်ချက်မှုလုပ်ဆောင်ပါ
// တွက်ချက်မှုလုပ်ငန်းစဉ်...
$result = /* တွက်ချက်မှုရလဒ်များ */;
// 将တွက်ချက်မှုရလဒ်များ存储到缓存中
$memcache->set('calc_result', $result, 0, 3600);
}
Memcacper ၏ဆင်ခြင်တုံတရားအသုံးပြုခြင်းသည် PHP applications များ၏စွမ်းဆောင်ရည်နှင့်တုန့်ပြန်မှုမြန်နှုန်းကိုသိသိသာသာတိုးတက်စေနိုင်သည်, အထူးသဖြင့်မကြာခဏလက်လှမ်းမီမှုနှင့်ရှုပ်ထွေးသောကွန်ပျူတာအခြေအနေများအတွက်သင့်တော်သည်။ ဒေတာဘေ့စ်စုံစမ်းရေးရလဒ်များအရ, စာမျက်နှာအကြောင်းအရာနှင့်တွက်ချက်မှုအချက်အလက်များအရ၎င်းသည်ဆာဗာဖိအားကိုလျှော့ချရုံသာမကအသုံးပြုသူအတွေ့အကြုံကိုလည်းတိုးတက်စေသည်။ ဤဆောင်းပါး၏နိဒါန်းနှင့်ဥပမာများက developer များကိုပိုမိုကောင်းမွန်အောင်ကူညီနိုင်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။