TH小破站

  • 首页
  • 容器
    • 认识Docker
    • DockerFile详解
  • k8s
    • 认识Kubernetes
    • Kubernetes部署--(kubeadm方式)
    • kubeasz部署k8s集群
    • Ansible-binary部署k8s集群-1.31.2
  • Ceph
    • 认识分布式存储
    • CPEH部署
  • CI/CD
    • DevOps认识
    • 部署--Gitlab
  • ELK
    • ELK简介
    • Elasticsearch
    • Kibana部署
    • Logstash
    • ELK--收集 tomcat 日志(实战)
  • HD
    • 认识--大数据
    • Hadoop-单机部署
    • Hadoop-伪分布部署
    • Hadoop-完全分布部署
    • Hadoop-(HA)完全分布部署
    • Ambari自动部署--Hadoop
  • Nginx
    • Nginx功能介绍
    • Nginx安全选项
    • Nginx配置文件简单介绍
    • 网站服务器部署
  • 监控
    • ZABBIX-部署(yum)
    • ZABBIX-编译安装
  • 云计算
    • KVM 概述
    • OpenStack企业级部署(T版)
    • OpenStack之dashboard部署
    • OpenStack-controller的高可用
    • openstack(Caracal版_ubuntu版本)部署
  • 数据库
    • mariadb与mysql
    • mysql主从
    • MySQL--冷备(实战)
    • MySQL--热备(dump表)
    • MySQL--热备(dump库)
    • 数据恢复实战案例
    • Xtrabackup实现MySql8.x全量备份
    • MyCat实现数据库读写分离
    • MHA实现数据库高可用
    • Percona XtraDB(PXC)实现数据库集群高可用
    • 数据库压力测试
    • PostgreSQL 基操
    • PostgreSQL备份恢复
    • PostgreSQL高可用
    • MongDB安装配置基础使用
    • MongoDB实现复制集
    • MongoDB备份还原
  • 自动化
    • ssh远程服务原理及配置
    • Ansible剧本文件应用
    • Ansible管理服务介绍
    • Ansible自动化部署node_exporter(包含升级,回滚)
    • Saltstack-部署安装
  • 脚本
    • 一键查看服务器资源利用率
    • 一键生成SSL证书
    • 保存指定数量的文件/目录
    • 初始化服务器
    • 扫描可用IP
    • 批量分发SSH密钥
    • 监控多主机磁盘脚本
    • 一键安装MySQL8.x脚本
    • Python脚本监控ES集群
    • 资源巡检脚本
    • 查看各用户使用的cpu占比
热衷于分享
架构师成长之路 !!!

网站服务器部署

前置

网站服务通讯过程原理

第一个历程:用户浏览器访问网站域名
第二个历程:需要对访问域名进行解析
第三个历程:需要建立三次握手过程
第四个历程:需要发送HTTP协议对应请求数据包HTTPs(安全协议)
第五个历程:需求发送HTTP协议对应响应数据包HTTPs(安全协议)
#第四第五过程会持续一段时间
第六个历程:需要完成四次挥手过程

HTTP请求数据包结构:

#请求4个部分
1)请求行
GET / HTTP/1.1
a   b  c
a:请求数据方法
            有GET (获取下载)请求指定的页面信息,并返回实体主体。(从指定网站服务器获取指定数据信息)POST(提交上传)将本地的信          息提交到网站服务中进行存储
b:请求数据信息
            有具体请求信息/oldboy/oldboy01/oldboy . jpg没有具体请求信息/(默认首页信息做响应)
c:请求协议信息
            HTTP 1.0属于TCP短链接方式实现通讯一次连接--一次请求
            HTTP 1.1属于TCP长链接方式实现通讯一次链接--多次请求
            HTTP 2.0属于TCP长连接(复用)对应并发访问处理能力更强
            https://www.cnblogs.com/ heluan/p/8620312.html
2)请求头
User-Agent: curl/7.29.0
            告知服务端访问网站客户端程序是什么谷歌火狐IE -- PC
                        IPhone安卓--移动端
Host: www.baidu.com
访问网站地址信息
ww . jd.com--- /www/前端代码
用户访问
                web服务器
                shouji.jd.com --- / shouji/前端代码channel.jd.com --- /channel/前端代码
3)空行
4)请求主体I
                GET:没有请求主体
                POST:可以看到请求主体信息HTTP响应数据包结构:
​
#HTTP响应数据包结构:4个部分:
1)起始行
HTTP/1.1 200 OK
 a        b   c   
    bc ---响应的状态码和状态码描述信息20x ---正确响应状态码信息 200
                                 30x ---对访问信息做了跳转处理
                                    301:永久跳转
                                        wwW.360buy.com浏览器
                                                --->请求信息     -->web服务端
                                                <--响应信息(301) <--web服务端
                                                PS:请浏览器保存记录跳转后域名地址
                                                --->请求信息     -->web服务端
                                                <--响应信息(200) <--web服务端
                                                www.360buy.com 浏览器  
                                    302:临时跳转
                                        www.360buy.com 浏览器
                                                --->请求信息 -->web服务端
                                                <--响应信息(302) <- -web服务端
                                                -->请求信息  -->web服务端
                                                <--响应信息(200) <---web服务端
                                40x ---用户端访问出现错误异常导致
                                    404:用户访问资源信息不存在
                                    403:用户访问资源被限制了
                                    401:用户身份验证失败
                                50x ---服务端出现异常情况
                                    500 - lnternal Server Error:内部服务器错误,服务器遇到了意料不到的情况,不能完成                                                              客户的请求。这是一个较为笼统的报错,一般为服务器的设                                                              置或内部程序问题导致。例如:SELinux开启,而又没有为                                                               HTTP设置规则许可,客户端访问就是500.
                                    502 - Bad Gateway (重点):坏的网关,一般是代理服务器请求后端服务时,后端服务不可用                                                           或没有完成响应网关服务器。这通常为反向代理服务器下面的节                                                           点出问题所致。反向代理服务器无法与后面的web服务节点服务                                                           器建立联系.
                                    503 - Service Unavailable:服务当前不可用,可能是服务器超载或停机维护导致的,或者                                                            是反向代理服务器后面没有可以提供服务的节点.
​
                                    504 - Gateway Timeout:网关超时,一般是网关代理服务器请求后端服务时,后端服务没有                                                         在特定的时间内完成处理请求。多数是服务器过载导致没有在指定                                                        的时间内返回数据给前端代理服务器。
2)响应头
    Server: Tengine:---告知客户端服务端使用web程序
    Content-Type: text/html:---处理用户访问信息类型
    Content-Length: 154---响应数据信息字节大小
    Connection: keep-alive ---使用TCP长链接方式进行通讯Date: Tue,15 Dec 2020 01;46:59 GMT
    Location: https://www.oldboyedu.com/---指定跳转后的地址信息
3)空行
4)响应主体
    具体请求内容信息响应
​
​

网站服务资源类型介绍

#静态资源信息:
    1.根据请求uri信息识别数据扩展名,确认是否是静态信息
        url: Uniform Resource Locator统一资源定位器
        uri: Uniform Resource Identifier 
        https:/litem.jd.com/19210609679.html
        a        b            c
            a:访问网站协议信息
            b:访问网站url地址信息
            c:访问网站uri地址信息
​
        xxx.html/js/css/png/jpg/mp3/mp4/ avi .....
        mime.types(nginx) ---媒体资源类型文件(文件中会记录静态资源类型)
    2.确认网站架构中是否有数据库服务器支持: 不需要有数据库服务 静态资源网站主要用于用户端访问查看
        没有数据库服务支持,增加前端开发人员压力
    3.数据请求访问效率效率最高 
#动态资源信息:
    1.根据请求uri信息识别数据扩展名,确认是否是动态信息
        xxx.php/jsp/asp ....
    2.确认网站架构中是否有数据库服务器支持:必须有数据库服务动态资源网站可以实现用户端交互过程,减轻前端开发人员压力
    3.数据请求访问效率效率较低
​

网站服务访问度量方式

#IP:统计分析客户端用户IP数量,并且根据用户IP信息的不同,分析访问网站客户端区域情况
    awk '{print $1} '/var/log/nginx/access.log|sort |uniq|wc -l
    参考数值:不够精确
    100人局域网--NAT--访问京东--- IP 一个
#PV:统计分析客户端访问页面数量
    参考数值:访问流程过于复杂时,PV量自然会增加
#UV:统计网站独立访客数量
    cookie:服务端分配给每个客户端用户标识信息信息保存在客户端浏览器中
            登录过程---张三用户访问(标识信息)(连接持续建立)
    session:服务端记录用户访问信息或者用户访问行为信息保存在服务端本地
            登录过程---认证用户信息记录某个cookie用户信息已经登录过了
            如:看视频30分钟,会记录时常
            http://alexa.chinaz.com/alexa_more.aspx
#并发量:在某一个时刻,同时有多少客户端在访问web服务端
#服务器数量:web服务集群中服务器数量+其他架构服务器I
    通过压力测试,检测服务器并发访问承载量

网站服务概念作用介绍

#静态服务程序:处理用户访问静态资源
nginx:***
    1.服务工作原理:epoll检索信息功能性能更高开发难度高
    2.服务功能多样:web服务器负载均衡功能数据缓存功能
    3.服务使用场景:国内大部分公司都在使用nginx搭建web服务
apache:
    1.服务工作原理: select遍历查询过程性能较低开发难度低
#去宿舍找人:一个一个门去找==select ,宿舍管理员进行询问==索引信息
https ://www.cnblogs.com/aspirant/p/9166944.html*
    2.服务功能单一:
    3.服务使用场景:国企
#动态服务程序:处理用户访问动态资源
    php:处理PHP语言编写动态资源
    tomcat:处理JAVA语言编写动态资源
    uwsgi:处理python语言编写动态资源代码
​

网站服务部署安装

配置nginx的yum源仓库

vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

1)安装方式一:yum安装

yum -y install nginx

2)安装方式二:编译安装

安装依赖

yum install -y pcre-devel openssl-devel
yum install -y gcc
yum install -y make zlib-devel gcc-c++ libtool
#pcre-devel:可以实现兼容perl语言正则表达式? ? ?
#openssl-devel:可以实现基于HTTPS协议方式进行数据传输
​

下载并解压nginx包

wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar xf nginx-1.24.0.tar.gz -C /opt/service/

创建虚拟nginx用户

useradd -M -s /sbin/nologin nginx

配置

配置:
./configure --prefix=/app/nginx-1.24 --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module
#参数介绍:
    --prefix=PATH            set installation prefix
        指定软件程序安装路径/ app/nginx-1.18
    --sbin-path=PATH         set nginx binary pathname
        软件有关命令文件保存指定路径/usr/bin/
    --modules-path=PATH       set modules path
        软件所有生成模块信息保存路径
    --conf-path=PATH          set nginx.conf pathname软件配置文件保存路径
    --error-log-path=PATH     set error log pathname软件生成错误日志保存路径
    --pid-path=PATH           set nginx.pid pathname
    --lock-path=PATH          set nginx.lock pathname
    --user=USER               set non-privileged user for worker processes
        设置程序启动后worker进程管理用户
    --group=GROUP             set non-privileged group for worker processes
        设置程序启动后worker进程管理用户组
    --with-http_ssl_module      启动nginx服务HTTPs访问功能
    --with-http_stub_status_module  启用nginx服务状态监控功能
​

编译安装

make && make install
#如果编译安装有问题就执行下面命令
make clean

启动

/app/nginx-1.24/sbin/nginx

COPYRIGHT © 2025 TH小破站. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

渝ICP备2023013789号

渝公网安备50011702500926号