2020-09-06

2023-11-01

第二章  Nginx虚拟主机和负载均衡
1、虚拟主机:
 
虚拟主机(英语:virtual hosting)或称 共享主机(shared web hosting),又称虚拟服务器,是一种在单一主机或主机群上,实现多网域服务的方法,可以运行多个网站或服务的技术。虚拟主机之间完全独立,并可由用户自行管理,虚拟并非指不存在,而是指空间是由实体的服务器延伸而来,其硬件系统可以是基于服务器群,或者单个服务器。

其技术是互联网服务器采用的节省服务器硬件成本的技术,虚拟主机技术主要应用于HTTP,FTP,EMAIL等多项服务,将一台服务器的某项或者全部服务内容逻辑划分为多个服务单位,对外表现为多个服务器,从而充分利用服务器硬件资源。如果划分是系统级别的,则称为虚拟服务器。
 
 
 
2、优点
2.1费用低廉
1、相对于购买独立服务器,网站建设的费用大大降低,为普及中小型网站提供了极大便利。
2、虚拟主机之间完全独立,在外界看来,每一台虚拟主机和一台独立的主机完全一样。由于多台虚拟主机共享一台真实主机的资源,每个虚拟主机用户承受的硬件费用、网络维护费用、通信线路的费用均大幅度降低。
3、许多企业建立网站都采用这种方法,这样不仅大大节省了购买机器和租用专线的费用,网站服务器管理简单,诸如软件配置、防病毒、防攻击等安全措施都由专业服务商提供,大大简化了服务器管理的复杂性;同时也不必为使用和维护服务器的技术问题担心,更不必聘用专门的管理人员。
2.2提升效率
1、网站建设初期,购买服务器到安装操作系统和应用软件需要较长的时间,而租用虚拟主机通常只需要几分钟的时间就可以开通,因为主要的注册域名查询服务商都已经实现了整个业务流程的电子商务化,选择适合自己需要的虚拟主机,在线付款之后马上就可以开通了。
2、虚拟主机技术的出现,是对Internet技术和网络发展的重大贡献,由于多台虚拟主机共享一台真实主机的资源,大大增加了服务器和通讯线路的利用率,使得一台服务器上能够毫无冲突地配置多个网络IP地址,这意味着人们能够利用虚拟主机把若干个带有单独域名的站点建置在一台服务器上,不必再为建立一个站点而购置单独的服务器和用巨资申请专线作为网络信息出口。
 
3、缺点
3.1功能限制
某些功能受到服务商的限制,比如可能耗用系统资源的论坛程序、流量统计功能等。网站设计需要考虑服务商提供的功能支持,比如数据库类型、操作系统等。一般虚拟主机为了降低成本没有独立IP地址,就是用IP地址不能直接访问网站(因为同一个IP地址对应有多个网站)
3.2访问速度及流量限制
1、一台服务器上的不同虚拟主机是各自独立的,并由用户自行管理。但一台服务器主机只能够支持一定数量的虚拟主机,当超过这个数量时,用户将会感到性能急剧下降。
2、某些虚拟主机网站访问速度过慢,这可能是由于主机提供商将一台主机出租给数量众多的网站,或者服务器配置等方面的原因所造成的,这种状况网站自己无法解决,对于网站的正常访问会产生不利影响;
3、有些服务商对网站流量有一定限制,这样当网站访问量较大时将无法正常访问。
3.3自主性差
虚拟主机不能由客户随意的安装软件及远程桌面等操作。
 
4、负载均衡
负载均衡,英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行,例如FTP服务器、Web服务器、企业核心应用服务器和其它主要任务服务器等,从而协同完成工作任务。
负载均衡构建在原有网络结构之上,它提供了一种透明且廉价有效的方法扩展服务器和网络设备的带宽、加强网络数据处理能力、增加吞吐量、提高网络的可用性和灵活性。
现有的负载均衡算法主要分为静态和动态两类。静态负载均衡算法以固定的概率分配任务,不考虑服务器的状态信息,如轮转算法、加权轮转算法等;动态负载均衡算法以服务器的实时负载状态信息来决定任务的分配,如最小连接法、加权最小连接法等。

5、负载均衡的作用
负载均衡:分摊到多个操作单元上进行执行,和它的英文名称很匹配。就是我们需要一个调度者,保证所有后端服务器都将性能充分发挥,从而保持服务器集群的整体性能最优,这就是负载均衡。
负载均衡这里面涉及的东西相对也是比较多的,理论就不说太多了,网上,书上很多,今天我们就利用Nginx服务器来实现一个简单的负载均衡
 
6、分类
1、轮询法
轮询法,就是将用户的请求轮流分配给服务器,就像是挨个数数,轮流分配。这种算法比较简单,他具有绝对均衡的优点,但是也正是因为绝对均衡它必须付出很大的代价,例如它无法保证分配任务的合理性,无法根据服务器承受能力来分配任务。
2、随机法
随机法,是随机选择一台服务器来分配任务。它保证了请求的分散性达到了均衡的目的。同时它是没有状态的不需要维持上次的选择状态和均衡因子[5]。但是随着任务量的增大,它的效果趋向轮询后也会具有轮询算法的部分缺点。
3、最小连接法
最小连接法,将任务分配给此时具有最小连接数的节点,因此它是动态负载均衡算法。一个节点收到一个任务后连接数就会加1,当节点故障时就将节点权值设置为0,不再给节点分配任务。
4、散列:根据请求源的 IP 的散列(hash)来选择要转发的服务器。这种方式可以一定程度上保证特定用户能连接到相同的服务器。如果你的应用需要处理状态而要求用户能连接到和之前相同的服务器,可以考虑采取这种方式。
 
搭建Nginx虚拟主机实验步骤如下:
实验环境:Centos7.3操作系统,
实验步骤:
搭建Nginx虚拟主机
 
首先卸载系统内置的Apache服务
卸载httpd保证Apache服务和Nginx服务不发生冲突
[root@localhost ~]# yum -y remove httpd
安装相关依赖包:
[root@localhost ~]# yum -y install gcc gcc-c++ proc-devel zlib-devel openssl-devel
[root@localhost ~]# useradd -M -s /sbin/nologin nginx
 
解压Nginx包并且安装
[root@localhost yfr]# tar zxf nginx-1.11.5.tar.gz -C /usr/src/
[root@localhost yfr]# cd /usr/src/nginx-1.11.5/ 进入解压后的Nginx目录
[root@localhost nginx-1.11.5]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-stream
上述命令中:
prefix:将httpd安装到指定目录
User:指定用户
Group:指定用户组
with-http_stub_status_module:启动HTTP模块,并且兼容HTTPD
with-stream:开启反向代理模块
 
[root@localhost nginx-1.11.5]# make && make install 编译安装
 
对nginx进行调优,并检测
[root@localhost nginx-1.11.5]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
创建软连接,程序路径并不在默认的搜索路径中,为了是该服务在使用时更加方便,可以为相关的程序添加符号连接。
 
[root@localhost nginx-1.11.5]# ls -l /usr/local/sbin/nginx
lrwxrwxrwx. 1 root root 27 Nov  4 02:05 /usr/local/sbin/nginx -> /usr/local/nginx/sbin/nginx
 
[root@localhost nginx-1.11.5]# nginx -t 检测服务配置文件是否成功
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost nginx-1.11.5]# nginx 启动nginx
[root@localhost nginx-1.11.5]# netstat -anpt | grep nginx 查看nginx启动情况
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      7583/nginx: master  
 
启动之后来编写nginx启动脚本,并且添加到系统进程中。
[root@localhost nginx-1.11.5]# vim /etc/init.d/nginx
#!/bin/bash
#####################Welcome to nginx##################
#chkconfig:2345 99 20
#descrition:this is a nginx web server
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
 
case " 1 " i n         s t a r t )                 1" in     start)          1"in    start)        PROG
        echo “startting nginx…”
;;
    stop)
        kill -s QUIT $(cat $PIDF)
        echo “stopping nginx…”
;;
    restart)
        $0 stop
        $0 start
;;
    reload)
        kill -s HUP $(cat $PIDF)
        echo “reload nginx…”
;;
    *)
                                             
        echo "USAGE:KaTeX parse error: Expected 'EOF', got '#' at position 96: …t nginx-1.11.5]#̲ chmod +x /etc/… {
 59         #    proxy_pass   http://127.0.0.1;
 60         #}
 61 }
 
 62     server {
 63         listen       80;
 64         server_name  www.taobao.com;
 65
 66         #charset koi8-r;
 67
 68         #access_log  logs/host.access.log  main;
 69
 70         location / {
 71             root   /var/www/taobao;
 72             index  index.html index.htm;
 73         }
 74
 75         #error_page  404              /404.html;
 76
 77         # redirect server error pages to the static page /50x.html
 78         #
 79         error_page   500 502 503 504  /50x.html;
 80         location = /50x.html {
 81             root   html;
 82         }
 83
 84         # proxy the PHP scripts to Apache listening on 127.0.0.1:80
 85         #
 86         #location ~ .php$ {
 87         #    proxy_pass   http://127.0.0.1;
 88         #}
 89
 90         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:90    00
 91         #
 92         #location ~ .php$ {
 93         #    root           html;
 
创建网页目录,配置相关的网页文件
[root@localhost nginx-1.11.5]# mkdir -p /var/www/baidu
[root@localhost nginx-1.11.5]# mkdir -p /var/www/taobao
 
编辑虚拟主机的网页内容
[root@localhost nginx-1.11.5]# vim /var/www/baidu/index.html

www.baidu.com

[root@localhost nginx-1.11.5]# vim /var/www/taobao/index.html

www.taobao.com

[root@localhost nginx-1.11.5]# vim /etc/hosts配置本地缓存 192.168.199.52 www.baidu.com 192.168.199.52 www.taobao.com   启动Nginx服务并且访问 [root@localhost nginx-1.11.5]# systemctl restart nginx [root@localhost nginx-1.11.5]# netstat -anpt | grep nginx tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      7386/nginx: master   [root@localhost nginx-1.11.5]# firefox www.baidu.com

[root@localhost baidu]# firefox www.taobao.com

负载均衡
 
首先我们需要准备三台虚拟机,其中一台搭建好Nginx,并且配置好系统启动项,其余两台使用YUM工具,安装HTTPD服务
[root@localhost ~]# vim 1.sh
#!/bin/bash
 
yum -y remove httpd
yum -y install gcc gcc-c++ proc-devel zlib-devel openssl-devel
useradd -M -s /sbin/nologin nginx
cd /home/yfr/
tar zxf nginx-1.11.5.tar.gz -C /usr/src/
cd /usr/src/nginx-1.11.5/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
make && make install
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
ls -l /usr/local/sbin/nginx
nginx -t
nginx
netstat -anpt | grep nginx
~                                                                                      
~                                                                                      
~                                                                                      
:x
[root@localhost ~]# chmod +x 1.sh 给脚本加执行权限
[root@localhost ~]# . 1.sh 执行脚本
 
启动之后来编写nginx启动脚本,并且添加到系统进程中。
[root@localhost nginx-1.11.5]# vim /etc/init.d/nginx
#!/bin/bash
#####################Welcome to nginx##################
#chkconfig:2345 99 20
#descrition:this is a nginx web server
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
 
case " 1 " i n         s t a r t )                 1" in     start)          1"in    start)        PROG
        echo “startting nginx…”
;;
    stop)
        kill -s QUIT $(cat $PIDF)
        echo “stopping nginx…”
;;
    restart)
        $0 stop
        $0 start
;;
    reload)
        kill -s HUP $(cat $PIDF)
        echo “reload nginx…”
;;
    *)
                                             
        echo “USAGE:$0 { start | stop | restart | reload }”
        exit 1
esac
exit 0
[root@localhost nginx-1.11.5]# chmod +x /etc/init.d/nginx 给启动脚本加执行权限
[root@localhost nginx-1.11.5]# chkconfig --add nginx 添加Nginx启动脚本到系统进程中
[root@localhost nginx-1.11.5]# chkconfig nginx on 启动Nginx这个进程
[root@localhost nginx-1.11.5]# chkconfig --list nginx 查看Nginx的启动权限
 
Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.
 
      If you want to list systemd services use ‘systemctl list-unit-files’.
      To see services enabled on particular target use
      ‘systemctl list-dependencies [target]’.
 
nginx           0:off 1:off 2:on 3:on 4:on 5:on 6:off
 
剩下两台虚拟机安装HTTPD,并且去网页根目录,更改网页
[root@localhost ~]# yum -y install httpd
 
首先去第一台HTTPD服务器上去配置,并且启动
[root@localhost ~]# vim /var/www/html/index.html

This is httpd-server1

[root@localhost ~]# systemctl start httpd [root@localhost ~]# systemctl stop firewalld [root@localhost ~]# netstat -anpt | grep httpd tcp6       0      0 :::80                   :::*                    LISTEN      14214/httpd              第二台HTTPD服务器上去配置 [root@localhost ~]# vim /var/www/html/index.html

This is httpd-server2

[root@localhost ~]# systemctl start httpd [root@localhost ~]# systemctl stop firewalld [root@localhost ~]# netstat -anpt | grep httpd tcp6       0      0 :::80                   :::*                    LISTEN      14638/httpd            回到第一台服务器上去配置Nginx负载均衡的配置项 [root@localhost nginx-1.11.5]# vim /usr/local/nginx/conf/nginx.conf  33     #gzip  on;  34     upstream web { 在这里配置相关的IP以及轮询  35     server 192.168.199.53:80 weight=5;  36     server 192.168.199.54:80;  37 }  38     server {  39         listen       80;  40         server_name  localhost;  41  42         #charset koi8-r;  43  44         #access_log  logs/host.access.log  main;  45  46         location / {  47             proxy_pass    http://web;  48             index  index.html index.htm;  49         }  50 [root@localhost nginx-1.11.5]# nginx -t 检测配置文件是否出现问题 nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful   启动Nginx服务并且验证结果 [root@localhost nginx-1.11.5]# systemctl restart nginx 重启nginx服务 [root@localhost nginx-1.11.5]# netstat -anpt | grep nginx tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      7370/nginx: master   [root@localhost nginx-1.11.5]# firefox 192.168.199.52 可以看到这里出现的是第一台HTTPD服务器的内容

使用F5刷新之后,就会变成第二个HTTPD服务器的内容

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2020-09-06 的相关文章

  • 站点启用/中不允许使用 nginx“mail”和“stream”指令

    当我尝试在 nginx 中使用流或邮件指令时遇到问题 我正在使用 nginx 1 16 1 和 Ubuntu 18 04 4 LTS 这是我的 nginx conf user www data worker processes auto p
  • 从 Nginx 到 Express.js 上的 socket.io 的反向代理上“无法获取”

    我已经关注了通过私有网络让 Node js 在两台 Ubuntu 14 04 服务器上通过 Nginx 工作 Node js 位于 myappserver 上 通过私有 IP myprivatewebserver 访问 并通过 mypubl
  • 使用 client_body_in_file_only 进行 nginx 文件上传

    晚上好 我需要将静态内容上传到 nginx 服务器 1 9 因此上传模块不适用于此版本 我读过这篇文章 Nginx 直接文件上传 无需通过后端传递 https coderwall com p swgfvw nginx direct file
  • 比较 nginx+Apache+mod_wsgi 与 nginx+uWSGI?

    在生产中使用 nginx Apache mod wsgi 与 nginx uWSGI vurtualenv 有何优缺点 我在自 2007 年以来开发的 mod wsgi 中看到了第一个变体的优点 并且具有更稳定的版本和易于管理 第二种变体的
  • Kong - 验证上游 ssl(ssl_proxy 打开)

    我已经成功为 API 安装了 kong 网关 该 API 通过上游负载平衡到多个目标 应用程序服务器 现在 我有一个我的应用程序服务器的自签名证书 kong 和目标之间的 ssl 握手应该失败 我推断 kong 不验证上游证书 经过一些研究
  • 为什么 nginx 接受 Host 标头与 server_name 不匹配的请求?

    我有一个这样设置的站点 nginx 作为代理服务器 通过 UNIX 套接字代理为 Django 站点提供服务的 Gunicorn 实例的请求 这是我的 nginx 配置 server listen 80 server name api my
  • nginx 将虚拟目录重写为文件

    这应该很容易做到 但我的头撞在墙上了 如果我收到对 www mysite com mypath 的请求 我想提供 www mysite com myotherpath thisfile html 的内容 我如何使用 nginx 配置来做到这
  • Nginx反向代理(proxy_pass)不传递子文件夹

    我想在子文件夹配置中运行应用程序 Mattermost 例如 https www example com mattermost https www example com mattermost location mattermost gzi
  • Node + Express + Nginx 未设置 Cookie

    我有一个使用 Express 的 Node 应用程序 我尝试为我的客户端设置 cookie 它在本地环境 http 上运行良好 但是一旦我投入生产 https 我就很好地收到了cookie 我可以在响应中看到它 但它没有设置 任何想法 Ng
  • 如何将多个域路由到多个节点应用程序?

    我习惯了典型的 Lamp Web 托管环境 您只需单击 cpanel 中的几个按钮 您的域就会被分区并映射到 htdocs 中的文件夹 我经常使用 Node js 但做同样的事情似乎并不那么简单 如果我有多个节点应用程序 并且我想将doma
  • 如何在位置中使用 Nginx Regexp

    Web 项目将静态内容放入 some content img 文件夹中 url规则为 img some md5 但文件夹中的位置 content img 前两位数字 Example url example com img fe5afe048
  • WebSockets 监听 UNIX 域套接字?

    是否可以在 nginx 服务器后面设置一个 WebSockets 服务器来处理 UNIX 域套接字上的连接 我目前在同一台计算机上有多个 WebSocket 服务器实例 并且存在端口共享问题 所有实例都必须分配一个唯一的端口 我想避免这种情
  • nginx 匹配位置中的特定单词

    我在匹配 nginx request body 变量中的特定单词时遇到问题 如果正文请求中有特殊单词 我想代理传递 所以我的方法是这样的 location php if request body proxy pass http test p
  • 如何在运行 NGINX Docker 容器的 AWS EC2 上启用 HTTPS?

    我在 AWS 上有一个运行 Amazon Linux 2 的 EC2 实例 在上面 我安装了 Git docker 和 docker compose 完成后 我克隆了我的存储库并运行docker compose up让我的生产环境启动 我访
  • 我可以在 Nginx Conf 中添加多少个服务器块

    知道我可以在 Nginx 配置中添加多少个服务器块吗 我需要将它用于具有多个子域的反向代理 每个客户端一个子域 它能成功支持 10 000 个服务器块吗 有没有相关的基准研究 这实际上并不是一个你有多少人的问题can但你有多少 能够妥善处理
  • 为什么 opcache 没有刷新?

    我用guzzlehttp guzzle封装在拉拉维尔 8 升级到后PHP 8 I get Symfony Component ErrorHandler Error FatalError Invalid opcode 117 2 0 in f
  • nginx位置正则表达式,匹配多次

    如何在 nginx 位置正则表达式中多次匹配 看来 x x 语法永远不起作用 例如 location abc w 1 3 从来不工作 您必须引用包含以下内容的位置 or 人物 location abc w 1 3 否则 nginx 将其解析
  • 使用nginx容器作为反向代理时的原始url

    我有一个 Web 应用程序部署为码头集装箱 我也有一个nginx容器 使用dnsmasq解析器 设置为充当 Web 应用程序前面的反向代理 它的 80 端口映射到主机 我的应用程序使用 SSO 身份验证 当我使用身份提供商登录时 回调 ur
  • Openresty 中的并发模型是什么?

    我很难理解 openresty 或 nginx 的并发模型 我读了Lua变量作用域 http wiki nginx org HttpLuaModule Lua Variable Scope 它解释了变量的生命周期 但它没有说明对它们的并发访
  • 连接被拒绝:当uwsgi和nginx在不同容器中时

    我正在尝试设置两个 docker 容器 是的 无需 docker compose 分开 一个带有 nginx 另一个带有带有基本 Flask 应用程序的 uwsgi 我在 docker 内的同一网络中运行容器我的 nginx 配置已添加 链

随机推荐

  • 网络流媒体(七)———RTSP

    RTSP协议介绍 RTSP协议的一些分析 一 一些字符串函数的使用 RTSP协议的一些分析 二 printf类似函数 sscanf以及log保存到内存中 printf输入重定位 1 简介 DSP产生的媒体流需要通过网络传送到客户端 如图1
  • python编程遵循哪些规律_Python实操(3):python编程规范

    选择pythoncharm作为Python开发ide也是在网上查了好长时间 这两天了解到visual studio code强大 易用 同时也一直用visual studio做c c 开发 所以决定把以后的开发平台切换到微软系 换平台以后发
  • 前后端分离:SpringBoot项目部署服务器操作步骤详细

    部署后端 SpringBoot到服务器 首先就是对自己项目application yaml进行配置 此处使用过多mysql8 0 spring datasource url jdbc mysql 127 0 0 1 3306 book se
  • 计算机网络笔记and题解

    上次博客就写了一点划分子网和子网掩码相关的计算 然后还要一个重要的五分类编址CIDR 也就是构造超网 无分类编址CIDR Classless Inter Domain Routing 正式名字是无分类域间路由选择 特点 1 CIDR消除了传
  • 秒级数据转化为分钟级数据sql编写

    前言 利用python读取hive 将hive中秒级数据转化为以10分钟为间隔的数据 除时间与设备id外所有字段的值求平均值 代码 连接hive 创建连接通道 并且得到连接通道的钥匙 句柄 conn connect host 地址 port
  • 存储过程解析

    使用存储过程来解决涨工资 涨工资 总裁涨1000 经理涨800 其他人涨400 伪代码 ResultSet rs select empno job from emp While rs next Int eno rs getInt empno
  • Stable diffusion加载safetensors 模型出现Exception: device privateuseone:0 is invalid

    一 问题 博主用CPU硬解 Stable diffusion sd v1 4 ckpt能跑 但换成v1 5 pruned emaonly safetensors等最新格式的模型就出现Exception device privateuseon
  • MATLAB数据可视化

    MATLAB数据可视化 二维绘图 plot命令 plot y plot x y plot x y s 常见的二维绘图常用设置选项 fplot 三维绘图 plot3 mesh 函数 绘制参数网状表面图 surf 函数 绘制三维阴影曲面图 辅助
  • 蓝桥杯:三羊献瑞(答案不唯一)

    目录 题目描述 题目分析 测试用的代码 Java 答案 因为我个人做选择题有把所有可能性列举的习惯 所以我习惯性列举一下 发现答案并不像题目里面说的 三羊献瑞是唯一的 具体看我的测试用例 Test 但是结果呢 题目描述 本题为填空题 只需要
  • 软件测试和软件开发哪个发展更好

    经常有想转IT行业的同学 在了解软件测试和软件开发之后不知道转那个岗位好 今天就系统的 从多个维度来比较软件测试与软件开发 具体包括从基本素质要求 性格要求 入职门槛 知识结构 竞争压力 职业发展 职业前景等 希望能给在选择软件测试与开发朋
  • java设计模式之抽象工厂模式

    什么是抽象工厂设计模式 抽象工厂模式是一种创建型设计模式 它提供了一种创建一系列相关或依赖对象的方法 而无需指定它们具体的类 抽象工厂模式是工厂方法模式的扩展 它使用一组相关的工厂来创建对象 而工厂方法模式只是使用一个单一的工厂 在抽象工厂
  • APP移动端测试+安装+ADB命令的介绍

    重点 app测试的内容 add命令 monkey命令 次重点 模拟器的安装 雷电 夜神 android的自带的模拟器使用 常规测试 真机测试 简单了解云测Testing 腾讯云 在职小伙伴下周演示 了解 市场有的移动端的操作系统有 1 an
  • LeetCode技巧篇(一)prefix sum 前缀和

    介绍 前缀和 prefix sum 是算法题中比较实用的一种技巧 当算法题的背景是整数型数组且出现 子数组和 或者 连续的子数组 既可以考虑使用前缀和来求解会得到不错的效果 假设给定的数组A各个元素分别为 那么我们可以得到一个前缀和数组B
  • ICCV 2023

    点击下方卡片 关注 CVer 公众号 AI CV重磅干货 第一时间送达 点击进入 gt 3D点云和Transformer 交流群 本文介绍我们在ICCV 2023上接收的论文 PointCLIP V2 Adapting CLIP for P
  • snull驱动环境搭建与测试分析

    Here are possible values for the network numbers Once you put these lines in etc networks you can call your networks by
  • SpringBoot/Spring Cloud常见注解(面试)

    RequestMapping 在Spring MVC 中使用 RequestMapping 来映射请求 也就是通过它来指定控制器可以处理哪些URL请求 将请求和处理请求的控制器方法关联起来 建立映射关系 这个控制器方法请求路径为http l
  • inno setup的安装及简单使用

    文章目录 安装 使用 1 添加中文安装字体 2 制作使用管理员权限启动的安装包 2 1下载安装 Resource Hacker http www angusj com resourcehacker 2 2 安装并打开ResourceHack
  • C++ ——模板 & 标准模板库STL

    C 知识基础 流操作符 类 基础 初始化和重载 类 高级 继承和多态 模板 标准模板库STL 目录 C 一 模板 1 函数模板 2 类模板 二 标准模板库STL 1 容器类 Container 2 迭代器 Iterator 3 泛型算法 总
  • PF_INET AF_INET

    在写网络程序的时候 建立TCP socket sock socket PF INET SOCK STREAM 0 然后再绑定本地地址或连接远程地址时需要初始化sockaddr in结构 其中指定address family时一般设置问AF
  • 2020-09-06

    第二章 Nginx虚拟主机和负载均衡 1 虚拟主机 虚拟主机 英语 virtual hosting 或称 共享主机 shared web hosting 又称虚拟服务器 是一种在单一主机或主机群上 实现多网域服务的方法 可以运行多个网站或服