မျက်မှောက်ခေတ် 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 အတွက်တံဆိပ်များကိုထည့်သွင်းထားသည်။
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 '' ရည်ညွှန်းချက်နှင့်လျှောက်လွှာအတွက်သင့်တော်သောလက်တွေ့လမ်းညွှန်ဖြစ်သည်။