TCP အခြေပြုအပြည့်အဝ duplex ဆက်သွယ်ရေးပရိုတိုကောတစ် ဦး သည် TCP အခြေပြုအပြည့်အဝ Duplex Communicen Communication Protocol ဖြစ်သည်။ ဤအင်္ဂါရပ်သည်တိုက်ရိုက်စကားပြောခြင်း, အချိန်မှန်ဒေတာတွန်းအားပေးခြင်းနှင့်အခြားအခြေအနေများအတွက်အလွန်သင့်လျော်သည်။ အမှန်တကယ်ဖြန့်ကျက်မှုတွင် Nginx သည်များသောအားဖြင့် webscess connection တောင်းဆိုမှုများကိုရှေ့သို့ချီ။ စီမံရန်ပြောင်းပြန် proxy server အဖြစ်အသုံးပြုရန်လိုအပ်သည်။
ပထမ ဦး စွာ NGINX ကိုသင်၏ဆာဗာပတ် 0 န်းကျင်တွင်မှန်ကန်စွာတပ်ဆင်ထားကြောင်းသေချာပါစေ။ အကယ်. ၎င်းကို install မလုပ်ပါကသက်ဆိုင်ရာ installation command ကိုကွပ်မျက်ခြင်းဖြင့်လုပ်ငန်းလည်ပတ်မှုစနစ်အရဖြန့်ကျက်မှုကိုဖြည့်စွက်နိုင်သည်။
Nginx Support Websoet ဝက်ဘ်ဆိုက်များစေရန်, configuration files များကိုချိန်ညှိရန်လိုအပ်သည်။ HTTP Module တွင်ထည့်သွင်းထားသော configuration ၏ဥပမာတစ်ခုမှာ -
မြေပုံ $ http_upgrade $ connection_upgrade { ပုံမှန်အဆင့်မြှင့်တင်ခြင်း, '' အနီးကပ်; } အထက်ပြန် {{ ဆာဗာ 127.0.0.1:8080; }
ဤပြင်ဆင်မှု၏ရည်ရွယ်ချက်မှာ 0 န်ဆောင်မှုခံယူသူတောင်းဆိုမှုခေါင်းစဉ်ရှိ အဆင့်မြှင့်တင်မှု ခေါင်းစဉ်ကို Proxy အသုံးပြုရန်အတွက်စိတ်ကြိုက် variable variable_upgrade သို့မြေပုံဆွဲရန်ဖြစ်သည်။ တစ်ချိန်တည်းမှာပင်အထက်ကျောထောက်နောက်ခံအမည်ရှိ Backend အမည်ရှိသောဆာဗာတစ်ခုသတ်မှတ်ထားသည်မှာ local port 8080 ကိုညွှန်ပြသည်။
လိုက်ဖက်သည့်လမ်းကြောင်းများအတွက်ဝက်ဘ်ဆိုက်များတောင်းဆိုမှုများကိုကိုင်တွယ်ရန်အောက်ပါ တည်နေရာ ပြင်ဆင်မှုကို ဆာဗာ ပိတ်ပင်တားဆီးမှုသို့ထည့်ပါ။
တည်နေရာ / ဝက်ဘ်ဆိုက်များ { proxy_pass http: // backend; proxy_http_version 1.1; proxy_set_header $ http_upgrade; proxy_set_header ဆက်သွယ်မှု $ Connection_upgrade; }
ဤ configuration ကို proxy လမ်းကြောင်း, forwarding address ကိုသတ်မှတ်ရန်နှင့်လိုအပ်သောတောင်းဆိုမှုဆိုင်ရာနေရာများကိုသေချာစေရန်နှင့်လိုအပ်သောတောင်းဆိုမှုဆိုင်ရာနေရာများကိုသတ်မှတ်ရန်လိုအပ်သည်။
configuration file ကိုပြုပြင်ပြီးနောက်ဖိုင်ကိုသိမ်းပြီးပိတ်ပါ, ထို့နောက် configuration ကိုအကျိုးသက်ရောက်စေရန် Nginx 0 န်ဆောင်မှုကိုပြန်လည်စတင်ပါ။
sudo 0 န်ကြီးဌာန Nginx ပြန်လည်စတင်
သင် websocket client tood ကိုသုံးနိုင်သည်သို့မဟုတ်ဝက်ဘ်ဆိုက်ချိတ်ဆက်မှုသည်မှန်ကန်မှုရှိမရှိစစ်ဆေးရန်ရိုးရှင်းသောဝဘ်စာမျက်နှာတစ်ခုဖန်တီးနိုင်သည်။ ဒီနေရာမှာအခြေခံဥပမာတစ်ခုပါ။
var ws = waxock အသစ် ("WS: // သင့်ရဲ့ jusddain / websces"),); ws.Onopen = function () {) console.log ("websock on ချိတ်ဆက်"); }; ws.Onmessage = function ကို (ဖြစ်ရပ်) { console.log ("" + Event.data), }; ws.Onclose = function () {) console.log ("websces မှအဆက်ပြတ်"); };
အထက်ပါကုဒ်ကို HTML ဖိုင်တစ်ခုအဖြစ်သိမ်းဆည်းပြီးသင်၏ browser တွင်ဖွင့်ပါ။ ဖွံ့ဖြိုးသူ tool တွင်အောင်မြင်သောဆက်သွယ်မှုကိုအောင်မြင်စွာဆက်သွယ်ရန်အချက်ပြပါကပြင်ဆင်မှုသည်အောင်မြင်သည်။
Nginx ၏ proxy function ကို configure လုပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် backend application များအတွက် websocket protocol ကိုထောက်ပံ့ပေးနိုင်သည်။ ဤနည်းလမ်းသည်ဆက်သွယ်ရေးထိရောက်မှုကိုတိုးတက်စေသည်သာမက Nginx ၏စွမ်းဆောင်ရည်မြင့်မားခြင်းနှင့်လုံခြုံရေးဝိသေသလက္ခဏာများကိုစနစ်တစ်ခုလုံးကိုပိုမိုတည်ငြိမ်စေရန်နှင့်အရွယ်အစားစေသည်။ Nginx ကိုယ်တိုင်က websocket protocol ကိုမကိုင်တွယ်နိုင်ကြောင်းသတိပြုသင့်သည်မှာ၎င်းသည်အလယ်အလတ် proxy တစ်ခုအနေဖြင့်သာဆောင်ရွက်သည်။ ပိုမိုရှုပ်ထွေးသော websocket Service 0 န်ဆောင်မှုယုတ္တိဗေဒကိုသင်အကောင်အထည်ဖော်ရန်လိုအပ်ပါကအပြောင်းအလဲများအတွက်သီးသန့် backet ည့်သည်ကွန်ယက်ဆာဗာကိုအသုံးပြုရန်အကြံပြုသည်။