WebSockets ເປັນເທັກໂນໂລຢີໄຄລເອິນ-ເຊີບເວີ ທີ່ແພ່ຫຼາຍເຊິ່ງຈະຊ່ວຍໃນການແລກປ່ຽນຂໍ້ຄວາມ ແລະ ໂຕ້ຕອບແບບທັນທີພາຍໃນແອັບພລິເຄຊັນຂອງທ່ານໂດຍສ້າງການເຊື່ອມຕໍ່ TCP ແບບ full-duplex ຢ່າງຕໍ່ເນື່ອງລະຫວ່າງເຊີບເວີ ແລະ ບຣາວເຊີຂອງໄຄລເອິນ ການໃຊ້ຂ່ອງທາງການສື່ສານດັ່ງກ່າວສົ່ງຜົນໃຫ້ latency ຕໍ່າຫຼາຍ ແລະ ເກີດການໂຕ້ຕອບທີ່ວ່ອງໄວ ເຮັດໃຫ້ໝັ້ນໃຈໄດ້ວ່າ streaming ຜ່ານ proxies ແລະ firewalls ທັງ upstream ແລະ downstream ໃນເວລາດຽວກັນ
Huk-Com Cloud ຈັດກຽມ WebSockets ຂັ້ນສູງ ແລະ ເສີມດ້ວຍການປະສານລວມເທັກໂນໂລຢີນີ້ເຂົ້າກັບ Shared Load Balancer and NGINX-balancer ທ່ານຈຶ່ງສາມາດນໍາໃຊ້ໄດ້ເຖິງຈະບໍ່ມີ IP address ພາຍນອກແນບກັບເຊີບເວີຂອງທ່ານໂດຍການຮັບ proxy ພອດຕ່າງໆທີ່ແອັບ WebSockets ໃຊ້ໄປຍັງພອດດຽວ – 80 ສໍາລັບ HTTP ແລະ 443 ສໍາລັບ HTTPS
ວິທີການໃຊ້ WebSockets ທີ່ງ່າຍທີ່ສຸດສໍາລັບແອັບພລິເຄຊັນຄືວາງNGINX balancer ໄວ້ດ້ານໜ້າ-ສາມາດເບິ່ງລາຍລະອຽດໄດ້ທີ່ນີ້ແນວໃດກໍຕາມວິທີການດັ່ງກ່າວອາດຈະບໍ່ສອດຄ່ອງກັບຄວາມຕ້ອງການຂອງທ່ານໃນຂະນະທີ່ແອັບພລິເຄຊັນຍັງຄົງຕ້ອງການໃຊ້ເທັກໂນໂລຢີນີ້ເພື່ອນໍາໄປປະຕິບັດ ໃນກໍລະນີນີ້ເຮົາຮອງຮັບ WebSockets ຢ່າງເຕັມຮູບແບບສໍາລັບແອັບພລິເຄຊັນເຊີບເວີທີ່ມີຢູ່ ເຊິ່ງລວມເຖິງ Apache (ສໍາລັບການບໍລິການແອັບ PHP, Ruby ແລະ Python) ແລະ NGINX (ສໍາລັບແອັບ PHP ແລະ Ruby)
ຂະບວນການລວມ WebSockets ອາດແຕກຕ່າງກັນໄປໃນແຕ່ລະແອັບພລິເຄຊັນ ແຕ່ສໍາລັບການຕັ້ງຄ່າຝັ່ງເຊີບເວີ Jelastic ໄດ້ຈັດກຽມຕົວຢ່າງການກໍານົດຄ່າສໍາລັບແຕ່ລະໂໜດທີ່ກ່າວເຖິງເບື້ອງຕົ້ນ ດັ່ງນັ້ໜທ່ານສາມາດ uncomment ແລະ ແກ້ໄຂເລັກໜ້ອຍຕາມຂໍ້ກໍານົດຂອງແອັບພລິເຄຊັນ (ເຊັ່ນໝາຍເລກ listening port)
ການສ້າງ Environment ແລະການ Deploy Application
1. ຄລິກປຸ່ມ New Environment ດ້ານເທິງຊ້າຍຂອງແດຊບອດ
![](https://docs.ruk-com.cloud/wp-content/uploads/2021/10/environment-1.jpg)
2. ພາຍໃນໜ້າຕ່າງ Environment Wizard ທີ່ປະກົດຂຶ້ນໃຫ້ສະລັບໄປທີ່ແທັບພາສາ ແລະ ເລືອກແອັບພລິເຄຊັນເຊີບເວີທີ່ທ່ານຕ້ອງການ (ຍົກຕົວຢ່າງແອັບພລິເຄຊັນ Apache PHP) ຈາກນັ້ນເລື່ອນ cloudlets ເພື່ອກໍານົດຈໍານວນຊັບພະຍາກອນ ຕັ້ງຊື່ environment ຂອງທ່ານແລ້ວຄລິກ Create
![environment wizard](https://docs.jelastic.com/websockets-apache-nginx/02-environment-wizard.png)
3. ພາຍໃນບໍ່ເທົ່າໃດນາທີ environment ຂອງທ່ານຈະປະກົດໃນໜ້າແດຊບອດ
![environment for WebSockets created](https://docs.jelastic.com/websockets-apache-nginx/03-environment-for-websockets-created.png)
4.ອັບໂຫຼດ ແລະ deploy ແອັບພລິເຄຊັນຂອງທ່ານທີ່ Deployment Manager ຫຼືຜ່ານບ່ອນເກັບມ້ຽໜໄລຍະໄກ GIT/SVN (ທ່ານສາມາດເບິ່ງຄໍາແນະນໍາເພີ່ມເຕີມໄດ້ທີ່ຄູ່ມີ deployment)
![WebSockets application deployed](https://docs.jelastic.com/websockets-apache-nginx/04-websockets-application-deployed.png)
ໂປຣເຈັກທີ່ທ່ານ deploy ແລ້ວຈະສະແດງລາຍການໃນສ່ວນດ້ານລຸ່ມຂອງແຜງຄວບຄຸມ environment
ການກໍານົດຄ່າເຊີບເວີ ແລະ ແອັບພລິເຄຊັນ
WebSockets ພາຍໃນ Apache server ຮອງຮັບໂມດູນ proxy_wstunnel_module ເຊິ່ງຖືກເພີ່ມໂດຍຄ່າເລີ່ມຕົ້ນເມື່ອສ້າງເຊີບເວີສໍາລັບ NGINX server ນັ້ນຈະໃຊ້ຄວາມສາມາດຂອງການຝັງ proxy ເຊິ່ງການເຊື່ອມຕໍ່ WebSockets ຄ້າຍຄືກັບວິທີ NGINX-balancer ເຮັດດັ່ງນັ້ນມາເລີ່ມຕົ້ນກໍານົດຄ່າແອັບພລິເຄຊັນຂອງທ່ານຕາມຂັ້ນຕອນນີ້
1. ຄລິກປຸ່ມ Config ຖັດຈາກໂໜດແອັບເຊີບເວີຂອງທ່ານ
![Apache config](https://docs.jelastic.com/websockets-apache-nginx/05-apache-config.png)
2. ໃນແທັບ Configuration Manager ເຮັດຕາມຂັ້ນຕອນດັ່ງນີ້:
- ສໍາລັບ Apache app server
ເຂົ້າໄປທີ່ໄດເຣັກທໍຣີ conf ແລ້ວຫາໄຟລ httpd.confຍົກເລີກຄອມເມັ້ນຄໍາສັ່ງດ້ານລຸ່ມນີ້ (ປະມານວັກທີ 962)
<Location /ws>
ProxyPass ws://127.0.0.1:<PORT>
ProxyPassReverse ws://127.0.0.1:<PORT>
</Location>
ຈາກນັ້ນປ່ຽນພາຣາມິເຕີທັງສອງເປັນໝາຍເລກພອດທີ່ແອັບພລິເຄຊັນ WebSockets ຂອງທ່ານ listen (ເຊັ່ນ 9000)
ກວດສອບໃຫ້ແນໃຈວ່າທ່ານໄດ້ກໍານົດຄ່າດັ່ງຮູບນີ້
![Apache httpd conf](https://docs.jelastic.com/websockets-apache-nginx/06-apache-httpd-conf.png)
ກົດປຸ່ມ Save ດ້ານເທິງເພື່ອບັນທຶກ
- ສໍາລັບ NGINX app server
ເຂົ້າໄປທີ່ໄດເຣັກທໍຣີ conf ເລືອກໄຟລ nginx.conf ແລ້ວຄົ້ນຫາ #Websocket ແລະຍົກເລີກຄອມເມັ້ນຄໍາສັ່ງຕໍ່ໄປນີ້:
upstream websocket {
server 127.0.0.1:<PORT>;
}
…
location /ws {
proxy_pass http://websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
ຈາກນັ້ນແທນທີ່ຄ່າ <PORT> ດ້ວຍໝາຍເລກພອດທີ່ກ່ຽວຂ້ອງ ແລະ ກົດປຸ່ມSave
![NGINX WebSockerts configs](https://docs.jelastic.com/websockets-apache-nginx/07-nginx-websockerts-configs.png)
3. ທັງໝົດນີ້ຄືການກໍານົດຄ່າເຊີບເວີທີ່ທ່ານຕ້ອງສ້າງ ຈາກນັ້ນກໍານົດຄ່າແອັບພລິເຄຊັນທີ່ທ່ານ deploy ໂດຍເຂົ້າໄປທີ່ໄຟລການກໍານົດຄ່າຂອງແອັບພິເຄຊັນທ່ານເພື່ອຕັ້ງຄ່າ WebSocketsແລະປັບ ws path ທີ່ມີຢູ່ໃນໄຟລຕາມຮູບແບບຖັດໄປ:
ws://{env_domain}{path_to_ws_file}
ໂດຍທີ່
- {env_url} ແທນທີ່ດ້ວຍໂດເມນຂອງ environment ທ່ານ (ສາມາດເບິ່ງໄດ້ທີ່ໃຕ້ຊື່ environment ທີ່ແດຊບອດ)
- {path_to_ws_file} ຈໍາເປັນຕ້ອງປ່ຽນເສັ້ນທາງໄປທີ່ໄຟລເຊິ່ງຄວນເຂົ້າເຖິງໄດ້ເມື່ອສ້າງການເຊື່ອມຕໍ່ WebSockets
![application WebSockets path](https://docs.jelastic.com/websockets-apache-nginx/08-application-websockets-path.png)
4. Save ແລະ Restartແອັບພລິເຄຊັນເຊີບເວີຂອງທ່ານ
![Apache restart](https://docs.jelastic.com/websockets-apache-nginx/09-apache-restart.png)
5. ຫຼັງຈາກ Restart ສໍາເລັດແລ້ວຄລິກປຸ່ມOpen in Browserເພື່ອຮຽກໃຊ້ແອັບພລິເຄຊັນຂອງທ່ານໃນແທັບບຣາວເຊີໃໝ່
![open in browser](https://docs.jelastic.com/websockets-apache-nginx/10-open-in-browser.png)
6. ທ່ານຈະເຫັນວ່າແອັບພລິເຄຊັນນໍາໃຊ້ໄດ້ແລ້ວ
![WebSockerts chat application](https://docs.jelastic.com/websockets-apache-nginx/11-websockerts-chat-application.png)
ທ່ານຈະໄດ້ຮັບປະໂຫຍດຈາກການຖ່າຍໂອນຂໍ້ຄວາມທີ່ວ່ອງໄວຢ່າງເຫັນໄດ້ຊັດຈາກການນໍາໃຊ້ WebSockets Protocol