Grayscale ထုတ်ပြန်ချက်သည်ဆော့ဖ်ဝဲလွှတ်ပေးရန်ထိရောက်သောနည်းဗျူဟာတစ်ခုဖြစ်သည်။ အသုံးပြုသူအချို့သည်အသုံးပြုသူအချို့သည်ဗားရှင်းအသစ်များကိုတဖြည်းဖြည်းချင်းတွန်းအားပေးခြင်းအားဖြင့်စနစ်တည်ငြိမ်မှုကိုသေချာစေရန်ဗားရှင်းအသစ်ပြောင်းခြင်းများကိုပြုလုပ်နိုင်သည်။ ရိုးရာအပြည့်အ 0 ထုတ်ပြန်ချက်များနှင့်နှိုင်းယှဉ်လျှင် Grayscale လွှတ်ပေးရေးသည်ဗားရှင်းအသစ်၏လည်ပတ်မှုကိုပြောင်းလွယ်ပြင်လွယ်စွာစောင့်ကြည့်ပြီးခြွင်းချက်တစ်ခုဖြစ်ပေါ်သည့်အခါလျင်မြန်စွာပြန်လှိမ့်နိုင်သည်။ ဤဆောင်းပါးသည် PHP ကိုထုပ်ပိုးခြင်းနှင့်ဖြန့်ကျက်ခြင်းအတွက်မည်သို့အသုံးပြုရမည်ကိုအာရုံစိုက်မည်။
ထုပ်ပိုးခြင်းသည် Grayscale ဖြန့်ချိမှုလုပ်ငန်းစဉ်တွင်ပထမဆုံးခြေလှမ်းဖြစ်သည်။ PHP projects များတွင် PHP projects များတွင်အသုံးများသောတေးရေးဆရာ (သို့) php projects များနှင့်၎င်းတို့၏မှီခိုမှုနှင့်ဖြန့်ကျက်ရန်၎င်းတို့မှီခိုသည်။
ပထမ ဦး စွာ Composer.json ဖိုင်ကိုစီမံကိန်း root directory ကိုရေးရန်နှင့်၎င်း၏မှီခိုမှုကိုကြေငြာရန် Project Roard လမ်းညွှန်တွင်ရေးပါ။
{
"name": "myapp",
"version": "1.0.0",
"require": {
"php": "^7.0",
"vendor/package": "^1.0"
}
}
ထို့နောက်မှီခိုအားထားမှုကို install လုပ်ရန်နှင့်ရောင်းချသူလမ်းညွှန်ထုတ်ရန် command ကို Execute လုပ်ပါ။
composer install
ထို့နောက်မှီခိုမှုများကိုတင်ရန်နှင့်လျှောက်လွှာကိုစတင်ရန်တာ 0 န်ယူရန်တာဝန်ရှိသည့် entry file entry entry ကိုဖန်တီးပါ။
<?php
require __DIR__ . '/vendor/autoload.php';
use MyNamespaceMyClass;
$app = new MyClass();
$app->run();
နောက်ဆုံးအနေဖြင့်စီမံကိန်းကို executable တစ်ခုတည်းသို့ထည့်သွင်းရန်ဖာကိုသုံးနိုင်သည်။
php -d phar.readonly=0 box.phar compile
ဤ command သည် application ကိုတိုက်ရိုက် execute လုပ်နိုင်သည့် MyApp.phar ဖိုင်ကိုထုတ်လုပ်လိမ့်မည်။
Grayscale ဖြန့်ချိမှု၏အဓိကအချက်မှာဆာဗာများစွာအကြားအသွားအလာခွဲဝေချထားပေးရန်နှင့်ဗားရှင်းအဟောင်းများအကြားချောမွေ့သော switch ကိုရရှိရန်ဖြစ်သည်။ PHP စီမံကိန်းများတွင်ဤလုပ်ဆောင်မှုကို Nginx Configuration သို့မဟုတ် Balancing By Phat ပြီးဆုံးသည်။
NGINX Configuration:
http {
upstream backend {
server 10.0.0.10:8000; # အဓိကဆာဗာ
server 10.0.0.20:8000; # အရန်ဆာဗာ
}
server {
listen 80;
server_name myapp.com;
location / {
proxy_pass http://backend;
}
}
}
ဤပြင်ဆင်မှုတွင် Nginx သည် Load Balancing မူဝါဒနှင့်အညီမူလတန်းနှင့်အလယ်တန်းဆာဗာများသို့တောင်းဆိုမှုများကိုဖြန့်ဝေသည်။ လျှောက်လွှာအသစ်ကိုအလယ်တန်းဆာဗာတွင်ချထားပြီးအကူးအပြောင်းချောမွေ့စေရန်အတွက်ဗားရှင်းအသစ်၏စွမ်းဆောင်ရည်ကိုစောင့်ကြည့်ရန်အသွားအလာအချိုးအစားကိုတဖြည်းဖြည်းညှိနိုင်သည်။
RollBack သည် appory အသစ်ကိုဗားရှင်းအဟောင်းကိုဗားရှင်းအဟောင်းသို့ပြန်လည်ရောက်ရှိမှုကိုရည်ညွှန်းသည်။ ဘုံအလေ့အကျင့်များတွင်ဗားရှင်းထိန်းချုပ်မှုကျဆင်းမှုနှင့် backup restore ပါ 0 င်သည်။
ဗားရှင်းစီမံခန့်ခွဲမှုအတွက် GIT ကိုအသုံးပြုသောအခါ ROLLBACK လုပ်ငန်းစဉ်၏ဥပမာ -
# အဟောင်းကိုဗားရှင်းဌာနခွဲသို့ပြောင်းပါ
git checkout old_version
# မှီခိုမှီခိုအားထား
composer install
# ပြန်လည်အသုံးပြုခြင်းနှင့်ဖြန့်ကျက်
php -d phar.readonly=0 box.phar compile
backup strafty ကိုမွေးစားပါကလျှောက်လွှာဖိုင်များနှင့်ဒေတာဘေ့စ်များကိုပုံမှန်အရန်ကူးယူသင့်ပြီးပြ problems နာများကိုလျှော့ချရန်ပြ problems နာများပေါ်ပေါက်လာသောအခါတည်ငြိမ်သောပြည်နယ်သို့အလျင်အမြန်ပြန်လည်ရရှိခဲ့သည်။
ဆင်ခြင်တုံတရားထိန်းချုပ်ရေးနှင့် backup နည်းပညာများနှင့်ပေါင်းစပ်ထားသော PHP ထုပ်ပိုးကိရိယာများနှင့် Nginx ၏ Traffic Management စီမံခန့်ခွဲမှုယန္တရားကို အသုံးပြု. ဆင်ခြင်တုံတရားဖြင့်အသုံးပြုခြင်း ၎င်းသည်လွှတ်ပေးခြင်း၏ထိန်းချုပ်မှုကိုတိုးတက်စေရုံသာမကအသုံးပြုသူအတွေ့အကြုံနှင့်စနစ်တည်ငြိမ်မှုကိုထိထိရောက်ရောက်အာမခံသည်။