လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP Microsvicine လက်တွေ့တွင် - ဖြန့်ဝေထားသော 0 န်ဆောင်မှုဆိုင်ရာအုပ်ချုပ်မှုစနစ်နှင့် Invocation သို့လမ်းညွှန်အပြည့်အစုံ

PHP Microsvicine လက်တွေ့တွင် - ဖြန့်ဝေထားသော 0 န်ဆောင်မှုဆိုင်ရာအုပ်ချုပ်မှုစနစ်နှင့် Invocation သို့လမ်းညွှန်အပြည့်အစုံ

M66 2025-10-16

ဖြန့်ဝေထားသော 0 န်ဆောင်မှုဆိုင်ရာအုပ်ချုပ်မှုစနစ်ကိုအကောင်အထည်ဖော်ရန် PHP Microssvices ကိုမည်သို့အသုံးပြုရမည်နည်း

မျက်မှောက်ခေတ် Internet Application Development တွင် Microssvice ဗိသုကာလက်ရာသည်ဖွံ့ဖြိုးတိုးတက်မှုနှင့်စနစ်အတိုင်းအတာကိုတိုးတက်စေရန်အဓိကပုံစံဖြစ်လာသည်။ Monolithic application ကိုသေးငယ်။ လွတ်လပ်စွာဖြန့်ကျက်ထားသည့် 0 န်ဆောင်မှုများခွဲဝေခြင်းအားဖြင့် developer များကစနစ်ကိုပိုမိုပြောင်းလွယ်စေနိုင်သည်။ ဤဆောင်းပါးသည်ဖြန့်ဝေထားသော 0 န်ဆောင်မှုနှင့် Invocation ကိုအကောင်အထည်ဖော်ရန် PHP ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။

ဝန်ဆောင်မှုရှာဖွေတွေ့ရှိမှုနှင့်မှတ်ပုံတင်ခြင်း

ဖြန့်ဝေထားသောစနစ်များတွင် Microssvices အရေအတွက်များပြားသည်, ထို့ကြောင့် 0 န်ဆောင်မှုဆိုင်ရာအချက်အလက်များကိုတစ်ဖက်သတ်စီမံရန် 0 န်ဆောင်မှုရှာဖွေတွေ့ရှိမှုနှင့်မှတ်ပုံတင်ယန္တရားများလိုအပ်သည်။ Consul သည်ပွင့်လင်းသောအရင်းအမြစ်များဖြန့်ဝေထားသော 0 န်ဆောင်မှုပေးခြင်းနှင့်ပြင်ဆင်ခြင်း, ကျန်းမာရေးစစ်ဆေးခြင်း,

Consul ကိုပထမ ဦး စွာတပ်ဆင်ပြီးစဖွင့်ပါ။ ထို့နောက် 0 န်ဆောင်မှုအချက်အလက်များကို Microssperice တစ်ခုချင်းစီမှတ်ပုံတင်ပါ။

 buzzlehttpclet ကိုသုံးပါ။

// http client ကို $ client = client အသစ်ကိုဖန်တီးပါ။

// consul ဖို့ Microssperactice ကိုမှတ်ပုံတင်ပါ
$ Response = $ client-> there ('http: // localhost: 8500 / v1 / agent / agent / agent / service' '
    'JSONS' => [
        'ID' => 'MY-Service',
        'NOME' => 'MY Service',
        'လိပ်စာ' => 'localhost',
        'port' => 8080,
        'tags' => ['PHP', 'Microsspice']
    ]
]);

IF ($ တုံ့ပြန်မှု -> GetStatusCode () === 200) {
    ပဲ့တင်သံ 'ဝန်ဆောင်မှုမှတ်ပုံတင်ခြင်းအောင်မြင်ခြင်း,
} အခြား
    ECHO 'ဝန်ဆောင်မှုလုပ်ငန်းမှတ်ပုံတင်ခြင်းမအောင်မြင်ပါ,
}

အထက်ဖော်ပြပါကုဒ်သည် "My Service" ဟုခေါ်သော Microservice ကို consul လုပ်ရန်, လိပ်စာနှင့် port ကိုသတ်မှတ်ပြီးလွယ်ကူသောစီမံခန့်ခွဲမှုနှင့် invocation အတွက်တံဆိပ်များကိုထည့်သွင်းထားသည်။

Balancing ဝန်

Load Balancing သည်စနစ်စွမ်းဆောင်ရည်နှင့်ရရှိနိုင်မှုကိုတိုးတက်စေရန်မတူညီသော Microservice ဖြစ်ရပ်များကိုတောင်းဆိုမှုများကိုဖြန့်ဝေနိုင်သည်။ PHP ပတ် 0 န်းကျင်တွင် Nginx ကိုပြောင်းပြန် proxy မှတဆင့်တောင်းဆိုမှုများကိုရှေ့သို့လွှဲပြောင်းရန် load Balancing server တစ်ခုအဖြစ်သင်အသုံးပြုနိုင်သည်။

 http {
    upstream My_Service {
        ဆာဗာ localhost: 8080;
        ဆာဗာ localhost: 8081;
        ဆာဗာ localhost: 8082;
    }

    ဆာဗာ {
        နားထောင် 80 နားထောင်ပါ။

        တည်နေရာ / My-service {
            proxy_pass http: // my_service;
        }
    }
}

အထက်ဖော်ပြပါပြင်ဆင်မှုသည် My_Service အမည်ရှိ back ည့်သည်များကိုသတ်မှတ်သည်။

ဝန်ဆောင်မှုခေါ်ဆိုမှု

MicrosServices အကြားခေါ်ဆိုမှုများသည်ဖြန့်ဝေထားသောစနစ်များတွင်သော့ချက်ချိတ်ဆက်ထားခြင်းဖြစ်သည်။ PHP သည် HTTP တောင်းဆိုမှုများသို့မဟုတ် RPC မူဘောင်များမှတဆင့် 0 န်ဆောင်မှု inter-compacen ဆက်သွယ်ရေးကိုအကောင်အထည်ဖော်နိုင်သည်။ အောက်ပါဥပမာသည် HTTP ခေါ်ဆိုမှုများကိုပြုလုပ်ရန် client ကိုအသုံးပြုသည်။

 buzzlehttpclet ကိုသုံးပါ။
guastehtpexistratrequestEquestEquestEquestexception ကိုသုံးပါ။

// http client ကို $ client = client အသစ်ကိုဖန်တီးပါ။

// Microsipactice ခေါ်ဆိုမှုကြိုးစားပါ {
    $ တုံ့ပြန်မှု = $ client-get ('http: // localhost / my-service / api');
    $ ဒေတာ = JSONS_DECODED ($ တုံ့ပြန်မှု -> GetBery (), စစ်မှန်သော);

    // microssperactice မှပြန်လာသောအချက်အလက်များကို // လုပ်ငန်းစဉ်
} ဖမ်း (တောင်းဆိုမှု $ $ ခြွင်းချက်) {
    // ခြွင်းချက်ကိုင်တွယ် // ...
}

ဥပမာတွင် "My Service" ၏ / API interface ဟုခေါ်သည်။ ပြန်လာသောအချက်အလက်များကိုစီးပွားရေးယုတ္တိဗေဒအရထပ်မံလုပ်ဆောင်နိုင်သည်။ အမှန်တကယ်စီမံကိန်းများတွင်သင့်တော်သောခေါ်ဆိုမှုနည်းလမ်းကိုမူဘောင်နှင့်လိုအပ်ချက်များအပေါ် အခြေခံ. ရွေးချယ်နိုင်သည်။

အကျဉ်းချုပ်

ဤဆောင်းပါးသည် Consul Service မှတ်ပုံတင်ခြင်း, Nginx Loading နှင့် Gulezle Service Invocation အပါအ 0 င် Microstice ဗိသုကာလက်ရာများကိုအကောင်အထည်ဖော်ရန် PHP ကိုအသုံးပြုခြင်း၏အဓိကနည်းပညာများကိုမိတ်ဆက်ပေးသည်။ ဤနည်းပညာများမှတစ်ဆင့်အလွန်အမင်းရရှိနိုင်သောနှင့်အလွယ်တကူအရွယ်အစားအလွယ်တကူအရွယ်အစားဖြန့်ဆေးစနစ်ကိုတည်ဆောက်နိုင်သည်။ လက်တွေ့ကျသောအပလီကေးရှင်းများတွင် 0 န်ဆောင်မှုဆိုင်ရာကျန်းမာရေးစစ်ဆေးမှုများ,

အထက်ပါအကြောင်းအရာသည် PHP Microssper ပိုင်လစ်ဖြန့်ဖြူးထားသော 0 န်ဆောင်မှုနှင့်ဖိတ်ကြားခြင်းတို့အတွက် Developer '' ရည်ညွှန်းချက်နှင့်လျှောက်လွှာအတွက်သင့်တော်သောလက်တွေ့လမ်းညွှန်ဖြစ်သည်။

မကြာသေးမီ ဆောင်းပါးများ