什么是基于Nginx的Wesocket负载均衡
admin
2023-03-16 07:41:16
0

下文给大家带来什么是基于Nginx的Wesocket负载均衡,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经验做一个解答。

分享一个基于NginxWesocket的负载均衡。

1.在mac电脑安装nginx

brew install nginx

2.安装完成以后nginx的配置文件路径

 /usr/local/etc/nginx/nginx.conf

3.编辑配置文件进行配置

在http块

新增配置

    #gzip  on;

   map $http_upgrade $connection_upgrade {

        default upgrade;

        '' close;

    } 

    upstream ws_server {

      server qa.server.com:2048;

      server qa.server.ai:2048;

   }


  server {

 listen   2048;

  server_name localhost;


  location /ws { 

   proxy_pass http://ws_server/ws;

    proxy_redirect off;

    proxy_http_version 1.1;

    proxy_set_header Upgrade $http_upgrade;

    proxy_set_header Connection "upgrade";

   }

}

什么是基于Nginx的Wesocket负载均衡

简要说明一下,nginx监听2048端口,把请求转发到qa.server.h,qa.server.test

客户端通过这个地址 连接:ws://localhost:2048/ws


之前一直有疑问,为什么ws协议要通过http协议来代理?


ws 协议的握手部分是借用http协议了,在握手完成以后进行了协议的切换(header部分的upgrade)。

这个查看网络连接


    1. Request URL:

      ws://localhost:2048/ws

    2. Request Method:

      GET

    3. Status Code:

    4. 101 Switching Protocols


  1. Response Headersview source

    1. Connection:

      upgrade

    2. Date:

      Fri, 15 Sep 2017 01:48:28 GMT

    3. sec-websocket-accept:

      r+ZclgKaM7r9b6RklYinaGUcvwE=

    4. Server:

      nginx/1.12.1

    5. upgrade:

      websocket

  2. Request Headersview source

    1. Accept-Encoding:

      gzip, deflate, br

    2. Accept-Language:

      en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4

    3. Cache-Control:

      no-cache

    4. Connection:

      Upgrade

    5. Host:

      localhost:2048

    6. Origin:

      http://localhost:8000

    7. Pragma:

      no-cache

    8. Sec-WebSocket-Extensions:

      permessage-deflate; client_max_window_bits

    9. Sec-WebSocket-Key:

      yoh4s/VG9x099oJEoP4FNA==

    10. Sec-WebSocket-Version:

      13

    11. Upgrade:

      websocket

    12. User-Agent:

      Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36

看了以上关于什么是基于Nginx的Wesocket负载均衡,如果大家还有什么地方需要了解的可以在行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,技术工程师在行业内拥有十几年的经验了。

 




相关内容

热门资讯

药王更替GIP靶点锋芒毕露 博... 来源:滚动播报 (来源:北京商报) 过去两年,减重药赛道极速完成了路径更迭。以礼来替尔泊肽为代表的G...
无凸轮十二轴弹簧机选型指南:东... 导语:在弹簧制造领域,无凸轮十二轴弹簧机凭借高精度、高效率、高灵活性的优势,成为新能源、航天航空、精...
AI 隐藏“思维链”,是怕被人... OpenAI 这些年最不缺的,就是被放大的人。 Sam Altman 当然不用说,几乎已经成了这家公...
美媒:以色列在伊拉克沙漠秘密建... 据《华尔街日报》5月9日报道,知情人士透露,以色列在伊拉克沙漠地带建立了一个秘密军事据点,以支持其针...
特朗普:预计“很快”收到伊朗对... △美国总统特朗(资料图)当地时间5月9日,央视记者获悉,美国总统特朗普表示,他预计“很快”会收到伊朗...
伊朗拟对霍尔木兹海峡的海底电缆... 据伊朗法尔斯通讯社5月9日报道,伊朗为途经霍尔木兹海峡、承担互联网通信业务的海底光缆,提出了一套管理...
美国一客机起飞过程中撞上行人,... △资料图当地时间5月9日,央视记者获悉,一架从丹佛国际机场飞往洛杉矶的航班在起飞过程中撞上一名闯入跑...
凤凰女记者战地日记丨这哪里还算... 【编者按】这是凤凰卫视驻伊朗记者李睿的战地日记。她身处德黑兰,既是战争的亲历者,也是观察者。在她的日...
中国发布禁令,禁止美国制裁中国... 2026年4月24日美国发布公告,把中国5家石化企业列入制裁名单,理由是参与或协助伊朗的石油交易,引...
电力系统母线安全保护领域取得关... (来源:中国电力新闻网) 转自:中国电力新闻网 近日,山西铝业自主研发的《弧光保护系统安装优化方法、...