
Nginx服务企业级架构
文章平均质量分 72
Lnmp架构
我的紫霞辣辣
须知少时凌云志 曾许人间第一流
展开
-
Redhat8.6编译安装openssl-3.1.4 httpd-2.4.58
【代码】Redhat8.6编译安装openssl-3.1.4 httpd-2.4.58。原创 2023-11-20 20:24:57 · 399 阅读 · 0 评论 -
SSL证书格式转换
openssl命令将cer格式转换crt如下两种方式进行尝试转换openssl x509 -inform DER -in certificate.cer -out certificate.crtopenssl x509 -inform PEM -in certificate.cer -out certificate.crtopenssl命令将pfx格式转换keyopenssl pkcs12 -in certificate.pfx -nocerts -nodes -out certific.原创 2022-01-10 16:58:40 · 1828 阅读 · 0 评论 -
Virtual Private Network(虚拟专用网络隧道)详解
VPN概述VPN简介VPN(全称:Virtual Private Network)虚拟专用网络,是依靠ISP和其他的NSP,在公共网络中建立专用的数据通信的网络技术,可以为企业之间或者个人与企业之间提供安全的数据传输隧道服务。在VPN中任意两点之间的链接并没有传统专网所需的端到端的物理链路,而是利用公共网络资源动态组成的,可以理解为通过私有的隧道技术在公共数据网络上模拟出来的和专网有同样功能的点到点的专线技术,所谓虚拟是指不需要去拉实际的长途物理线路,而是借用了公共Internet网络实现的。VPN原创 2021-06-09 14:42:23 · 89521 阅读 · 54 评论 -
报错信息 : Access denied for user ‘root‘@‘db01‘(using password: YES) source=“exporter.go:146“
我使用Prometheus监控Mysql数据库,监控成功之后,一直出现如下报错:Error pinging mysqld: Error 1045: Access denied for user ‘root’@‘db01’(using password: YES) source=“exporter.go:146”查看数据库所有的用户信息,我们发现数据库默认建立了很多空用户MariaDB [mysql]> select User,Host from user;+----------+----原创 2021-06-09 09:33:55 · 515 阅读 · 0 评论 -
Prometheus+Grafana 监控Linux主机和数据库
监控监控就是实时的帮助我们来监控或者探测我们部署的服务是否正常运行常用的监控zabbix优点:组件比较全,缺点:性能不高(zabbix底层用的是Msql数据库)当zabbix监控大型集群的时候,怎么优化(如何优化数据库)当数据库中一个表中数据超过2000w的时候,数据库的性能急剧下降阿里云云监控腾讯云蓝鲸监控普罗米修斯性能比较高,底层使用(时序数据库,时序数据库性能比Mysql数据库性能高很多)原生支持监控容器部署普罗米修斯官网:https://promethe原创 2021-06-08 15:37:39 · 2846 阅读 · 1 评论 -
Nginx 性能优化 超详细!!!
性能优化概述基于Nginx性能优化,那么在性能优化这一章,我们将分为如下几个方面做介绍首先,我们需要了解性能优化要考虑哪些方面。然后我们需要了解性能优化必须要用到的压力测试工具ab。最后我需要了解系统上有哪些注意和优化的点,以及Nginx配置文件做哪些调整。我们在性能优化工作前,我们重点需要考虑哪些方面,和了解哪些方面首先需要了解我们当前系统结构和瓶颈,了解当前使用的是什么,运行的是什么业务,都有哪些服务,了解每个服务最大能支撑多大的并发,比如Nginx作为静态资源服务的并发是多少,最高的原创 2021-05-30 23:40:36 · 10793 阅读 · 2 评论 -
Nginx 常见问题汇总
Nginx多Server优先级在开始处理一个http请求时,nginx会取出header头中的Host变量,与nginx.conf中每个server的server_name进行匹配,以此决定到底由哪一个server来处理这个请求。但nginx如配置多个相同的server_name,会导致server_name出现优先级访问冲突。- web01服务器(192.168.15.7)1. 创建配置文件server1vim /etc/nginx/conf.d/server1.confserver {原创 2021-05-28 13:02:38 · 3269 阅读 · 0 评论 -
高可用 Keepalived
什么是高可用一般指的是两台机器启动着相同的业务系统,当一台机器down机了,另外一台服务能够快速的接管,对于访问的用户是无感知的。高可用实现的工具通常服务高可用,我们选择使用keepalived软件实现。keepalived如何实现高可用keepalived基于VRRP协议实现的,VRRP虚拟路由冗余协议,主要用于解决单点故障问题。VRRP解决原理高可用keepalived使用场景通常业务需要保证7×24小时不down级,比如公司内部OA系统,每天公司人员都需要使用,则不允许原创 2021-05-27 11:31:56 · 1238 阅读 · 1 评论 -
HTTPS协议详解
HTTPS安全证书基本概述为什么需要使用HTTPS,因为HTTP不安全。当我们使用HTTP网站时,会遭到劫持和篡改,如果采用HTTPS协议,那么数据在传输的过程中是加密的,所以黑客无法窃取或者篡改数据报文信息,同时也避免网站传输时信息泄露。场景模拟正常访问情况(本地hosts文件代替DNS解析服务)- web01服务器3. 修改Nginx配置文件vim /etc/nginx/conf.d/test.nana.com.confserver { listen 80;原创 2021-05-26 11:45:14 · 1007 阅读 · 0 评论 -
Nginx Rewrite重写
Rewrite基本概述什么是RewriteRewrite主要实现url地址重写,以及重定向,就是把传入Web的请求重定向到其他URL的过程。Rewrite使用场景地址跳转,用户访问www.nana.com这个URL时,将其定向至一个新的域名 dada.nana.com。协议跳转,用户通过http协议请求网站时,将其重新跳转至https协议方式。伪静态,将动态页面显示为静态页面方式的一种技术,便于搜索引擎的录入,同时减少动态URL地址对外暴露过多的参数,提升更高的安全性。搜索引擎,SEO优原创 2021-05-25 20:32:36 · 1211 阅读 · 0 评论 -
Nginx动静分离详解
Nginx动静分离基本概述动静分离,通过中间件将动态请求和静态请求进行分离那为什么要通过中间件将动态请求和静态请求进行分离?减少不必要的请求消耗,同时能减少请求的延时。Nginx动静分离场景实践实验架构实验环境主机 服务 服务 地址lb01 负载均衡 Nginx Proxy 192.168.15.5 Web01 静态资源 Nginx Static 192.168.15.7Web02 动态资源 Tomcat Serve原创 2021-05-25 12:15:54 · 1539 阅读 · 1 评论 -
Nginx四层负载均衡详解
Nginx四层负载均衡什么是四层负载均衡四层负载均衡基于传输层协议包来封装的(如:TCP/IP),那我们前面使用的七层指的是应用层,它的组装在四层基础之上,无论是四层还是七层都是这是OSI网络模型。四层负载均衡应用场景四层+七层来做负载均衡,四层可以保证七层的负载均衡的高可用性。如nginx就无法保证自己的服务高可以用,需要依赖lvs或者keepalive来做。如 : TCP协议的负载均衡,有些请求是TCP协议的(mysql,ssh),或者说这些请求只需要使用四层进行端口的转发就可以了,所原创 2021-05-24 09:31:57 · 2760 阅读 · 0 评论 -
Nginx七层负载均衡详解
Nginx负载均衡基本概述Nginx负载均衡在生产环境中的其他名称: 负载 负载均衡 调度 load balance LB公有云的其他名称:SLB 阿里云负载均衡QLB 青云负载均衡CLB 腾讯负载均衡ULB ucloud负载均衡为什么需要使用负载均衡当我们的Web服务器直接面向用户,往往要承载大量并发请求,单台服务器难以负荷,我使用多台Web服务器组成集群,前端使用Nginx负载均衡,将请求分散的打到我们后端服务器集群中,实现负载的分发。那么会大大提升系统原创 2021-05-11 18:47:56 · 4684 阅读 · 10 评论 -
Nginx代理服务详解
Nginx代理服务代理的基本概述代理一词往往并不陌生,该服务我们常常用到,如(代理理财,代理租房,代理收货等等),如下图所示:在没有代理模式的情况下,客户端和Nginx服务端,都是客户端直接请求服务端,服务端直接响应客户端。那么在互联网请求里面,客户端往往无法直接向服务端发起请求,那么就需要用到代理服务,来实现客户端和服务通信,如下图所示:Nginx代理服务常见模式Nginx作为代理服务,按照应用场景模式进行总结,代理可分为正向代理和反向代理。正向代理,(内部上网)客原创 2021-05-10 23:03:01 · 3019 阅读 · 5 评论 -
LNMP架构拆分详解
拆分数据库至独立服务器为什么要进行数据库的拆分由于单台服务器运行LNMP架构会导致网站访问缓慢,当系统内存被吃满时,很容易导致系统出现oom(内存过载)。出现系统过载时,系统会自动kill掉Mysql数据库释放内存(kill掉的是最占用内存的软件,不一定是数据库,数据库服务本身是很占用内存)。一旦数据库被系统kill掉了,那么Redis的数据可能还没有来得及存储到mysql,有可能会导致数据丢失的情况。模拟oom(内存过载),系统自动杀死占用内存空间最大的内存打开一个终端,输入命令:s原创 2021-05-09 18:35:05 · 2729 阅读 · 4 评论 -
搭建LNMP架构服务
LNMP架构概述什么是LNMPLNMP是一套技术的组合,L=Linux、N=Nginx、M=MySQL/Mariadb、P=PHP/PythonLNMP架构是如何工作的首先Nginx服务是不能处理动态请求,那么当用户发起动态请求时,Nginx又是如何进行处理的。当用户发起http请求,请求会被Nginx处理,如果是静态资源请求Nginx则直接返回,如果是动态请求Nginx则通过fastcgi协议转交给后端的PHP程序处理,具体如下图所示...原创 2021-05-08 10:31:13 · 715 阅读 · 15 评论 -
ab压力测试工具
安装ab压力测试工具yum install httpd-toolsab命令使用格式及其常用的参数ab -n 50 -c 20 http://192.168.15.7/download/-n : 总的请求数-c : 同时并发20个请求压力测试工具输出内容详解[root@web02 ~] ab -n 50 -c 20 http://192.168.15.7/download/This is ApacheBench, Version 2.3 <$Revision: 14.原创 2021-05-07 18:47:22 · 182 阅读 · 0 评论 -
Nginx常用基础模块
Nginx目录索引ngx_http_autoindex_module模块处理以斜杠字符("/")结尾的请求,并生成目录列表。当ngx_http_index_module模块找不到索引文件时,通常会将请求传递给目录索引模块。用法一: 开启索引模块功能,如果index模块找不到/code目录下index.html文件时,不会报错403,会将/code目录下的目录结构生成一个目录列表传递给客户端。cd /etc/nginx/conf.d/vim game.confserver {原创 2021-05-06 21:34:14 · 426 阅读 · 1 评论 -
Nginx基本简介
Nginx基本简述Nginx是一个开源且高性能,可靠的Http Web服务、代理服务。开源: 直接获取源代码高性能: 支持海量并发可靠: 服务稳定我们为什么选择Nginx服务Nginx非常轻量功能模块少(源代码仅保留http与核心模块代码,其余不够核心代码会作为插件来安装)代码模块化(易读,便于二次开发,对于开发人员是非常友好的)互联网公司都选择NginxNginx技术成熟,具备的功能是企业最长使用而且最需要的适合当前主流架构趋势,微服务,云架构,中间层统一技术栈,降低维原创 2021-05-05 16:04:46 · 3962 阅读 · 5 评论 -
HTTP协议简介
HTTP协议简介什么是超文本?(HyperText)包含有超链接和各种多媒体元素标记的文本。这些超文本文件彼此链接,形成网状(Web),因此又被称为网页(Web Page)。这些链接使用URL表示。最常见的超文本格式是超文本标记语言HTML。什么是URL?URL即统一资源定位符,用来唯一标识网络中的某一个文档。URL由协议,主机和端口(默认80)以及文件名三部分构成。https: //www.baidu.com :80 /s?tn=10018800_hao_pg&原创 2021-04-30 12:19:22 · 363 阅读 · 0 评论 -
SSH远程管理服务
SSH远程管理服务远程管理服务器介绍ssh远程管理服务连接的原理ssh远程连接方式,私钥连接方法ssh服务的配置文件 /etc/ssh/sshd.configssh远程连接暗转防范思路(放值入侵)总结ssh服务相关命令 ssh scpansible批量管理服务介绍absible软件部署ansuble服务简单使用远程管理服务SSH概念介绍SSH :安全的远程连接 数据信息是加密的 port : 22 SSH服务默认可以用root用户远程连接TELMET : 不安全的远程连接原创 2021-04-24 16:09:04 · 352 阅读 · 0 评论 -
sersync实时同步 解决单点NFS单点故障问题
一般中型公司的页面访问量pv (页面浏览量) 6千万uv (独立用户浏览量) 2千QPS (每秒查询率) 10w-20w原创 2021-04-23 11:07:44 · 3048 阅读 · 0 评论 -
NFS共享存储
NFS什么是NFS?共享存储,⽂件服务器NFS基本概述NFS是Network File System的缩写及⽹络⽂件系统。NFS主要是在局域网内使用(也可以使用在公网上,但是不适用)。NFS主要功能是通过局域⽹络让不同的主机系统之间可以共享⽂件或⽬录。网络存储:glusterfs、ceph、OSS分布式:将多台机器,组成像一台机器一样使用微服务:将一台机器,拆分成多台机器使用nginx页面编辑下载nginx1. 准备两台机器web1 192.168.15.原创 2021-04-21 21:52:32 · 3331 阅读 · 0 评论 -
inotify+rsync服务搭建
nfs+rsync案例客户端需求:1.客户端提前准备存放的备份的⽬录,⽬录规则如下:/backup/nfs_172.16.1.31_2018-09-022.客户端在本地打包备份(系统配置⽂件、应⽤配置等)拷⻉⾄/backup/nfs_172.16.1.31_2018-09-023.客户端最后将备份的数据进⾏推送⾄备份服务器4.客户端每天凌晨1点定时执⾏该脚本5.客户端服务器本地保留最近7天的数据, 避免浪费磁盘空间服务端需求:1.服务端部署rsync,⽤于接收客户端推送过来的备份数据2.服原创 2021-04-21 12:37:11 · 338 阅读 · 0 评论 -
文件系统
文件系统什么是文件系统?文件是操作系统提供给用户操作硬盘的一个功能也就是说操作系统中肯定有一段代码是专门用来提供文件的功能操作系统中----》包含的一段代码----》文件系统----》提供操作硬件的功能----》文件每一个分区对应一个文件系统文件系统的底层原理一个文件系统的数据分为两个部分,一部分是inode,还有一部分是block。在inode中,每一个inode号码都会指向一个文件或者目录。每一个文件都必须有一个inode,因此有可能发生inode已经用光,但是磁原创 2021-04-19 17:16:39 · 173 阅读 · 0 评论 -
rsync 备份数据的底层原理 rsync选项补充 软链接与硬链接 增量备份 增量备份脚本文件
rsync 备份数据的底层原理rsync+inotify=》制作异地镜像站点(实时同步)目的 : 为异地备份做好准备工作rsync传递数据可以简单总结为三步先验证用户身份检查源路径到底需要传哪些文件,默认quick check算法传输rsync命令有上百个选项,主要分为两大类 :一类是检测,检测是在源目录里面进行的。如果改变检测机制,一般情况下,会增加数据校验的可靠性,降低检查的效率。还有一类是传输(比如要不要改变传输文件的属性),传输只传输源目录数据改动的部分。在源目录中,需要原创 2021-04-18 16:22:48 · 1366 阅读 · 0 评论 -
scp完全复制 rsync服务搭建
备份的三种类型全量备份备份数据: 每次都把当前数据完整的copy一份恢复数据: 只需要找到对应的时间点那一份数据,覆盖当前数据即可差异备份备份数据: 每次备份都用当前的数据跟第一次的全量备份数据进行比较,找出差异,然后进行备份恢复数据: 只需要先恢复第一次备份的结果,然后再恢复对应时间点的差异备份结果即可增量备份备份数据: 每次备份都是用当前的数据跟上一次的数据进行比较,找出差异,然后进行备份恢复数据: 全量备份+增量1+增量2+增量3...+当前增原创 2021-04-15 20:47:48 · 511 阅读 · 0 评论 -
搭建企业架构服务模型
搭建架构服务⼀、名词的介绍⼆、企业⼈员结构模型三、架构图项⽬:⼿机的APP,每⼀个APP就是⼀个项⽬,针对互联⽹⾏业,⼀家电商公司就是⼀个项⽬架构:维护⼀个项⽬所有组件组成⼀个整体 lnmp:linux nginx mysql php lamp:linux Apache MySQL php lnmt:linux nginx MySQL Tomcat lamt:linux Apache MySQL Tomcat 除了这些以外,还有很多服务:缓存、ELK、⼤数据 集群:多台原创 2021-04-15 12:22:22 · 449 阅读 · 0 评论