集群

集群的概念
集 集合 集中 服务器的集合
群 一堆 一群
服务器的集合 解决实际网站运营过程中,出现的大流量、大并发的问题。解决整个网站架构,出现的突发问题。提高网站的可用性和稳定性。
服务器的概念:
①硬件 性能比较好的电脑主机 刀片机
②软件 能够某种或者多种服务器的软件

1.1 web服务软件

apache apache组织发布一款 web服务器软件 支持多种服务协议 是一款比较稳定的、功能齐全的服务器软件。相对目前使用要安装软件较大,臃肿一些。
nginx 俄罗斯人发明的一款服务器软件,支持多种服务器协议 邮件服务器 web服务器 反向代理服务器 缓存服务器 静态资源服务器 相对小巧 并发高
tengine 淘宝发起的 nginx的一个定制版 基本使用上和nginx无异
IIS 微软公司的服务器软件 最初是ASP使用 后来提高了CGI FASTCGI ISAP 方式给php使用 一般情况下使用不到
lighttpd 德国开发的一款服务器文件 小巧使用方便
tomcat apache组织的一款服务器软件 配合java使用 构建web后端解决方案

1.2 数据库

进行存储数据的服务器软件
集群里的数据库服务器,会使用多台数据库服务器,分布式数据库架构。
主从复制架构 从数据库服务器 同步主数据库的服务器的数据,进行业务中读写分离。
读从服务器,写主服务器
①关系型数据库
mysql mysqlAB=>sun(java)=>oracle
mariadb mysql分支 使用和mysql基本类似
oracle 大型商业数据库
sqlserver 微软公司的数据库
db2 IBM公司 蓝色巨人
postgresql 学院派数据库 加州伯克利大学
sqlite3 小型数据库 手机端软件使用
②非关系型数据库
nosql memcache redis mongodb
1.3 负载均衡
负载均衡是在多台服务器,进行请求分发的服务器。

硬件级别: F5 价格较高 几万到几十万不等 性能好
软件级别: 性能比高
lvs linux内置的软件
nginx upstream方式

1.4 资源服务器

一般把经常调用的图片、css、js单独存储在一台读写速度较快(ssd固态硬盘),带宽更宽的服务器。
某宝,京东的资源服务器

1.5反向代理

用途:
①用来代理请求,突破物理限制
②缓存服务器
概念:
正向代理: vpn(网络代理软件) shadowsocks 内网需要访问到外网的信息
反向代理: 外网需要访问到内网信息

squid 老牌的缓存软件 代理服务器
varnish 新型的代理服务器 性能更好

1.6 高可用

高度可用性 监控负载均衡服务器
如果负载均衡服务器宕(dang)机(服务器死机) down机
由高可用服务器,进行接管负载均衡的工作
keeplive 保持活跃
heartbit 心脏敲打

1.7 缓存软件

memcache redis

1.8 cdn内容分发

需求:
服务器在北京
两个用户 一个在天津 一个在上海
原来的情况:天津的用户访问网站较快
解决方案:
就近设置服务器,在杭州设置一台服务器,这样上海的用户访问也变快。
一些云服务商,就推出了cdn服务器,已经在各地搭建加载好服务器,只需要花钱购买使用就可以了。一般是以流量的方式进行收取费用。
cdn提供商:网宿 aliyun Tencent baidu
http://tool.chinaz.com/speedtest.aspx?host=www.baidu.com
集群示意图

二、Nginx服务器

nginx 概述

Nginx (“engine x”) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

2、Nginx特点

1)热部署:nginx在修改配置文件之后,不需要重启。
2)可以高并发连接:相同配置的服务器,nginx比apache能接受的连接多很多。
3)低的内存消耗:相同的服务器,nginx比apache低的消耗
4)处理响应请求很快:nginx处理静态文件的时候,响应速度很快。
5)具有很高的可靠性

3、Apache与Nginx服务器区别

)nginx和apache的软件底层架构不一样。
①:Nginx的并发性要比apache好很多;
②:nginx属于轻量级服务器软件,apache属于重量级软件;
③:nginx在处理静态页的效率要比apache好很多,apache在处理动态页面上的效率要比nginx高
④:apache在安全性要比nginx要好。
因此有一种不常用的组合:LNMPA。
2)运行模式不同的。
①:apache运行PHP是通过加载php5模块运行。由于是apache去加载php5模块,所以每次修改了php.ini配置文件需要重启apache。
②:nginx运行php是通过网络连接php-fpm(fastCGI)方式运行。 php-fpm是一个独立的软件(默认端口:9000)。因此在nginx下修改了php.ini配置文件需要重启php-fpm,而不需要重启nginx。

三、LNMP的安装与配置

lnmp和lamp的区别
1>需要安装nginx服务器
2>php需要重写安装
使用克隆方式,快速拥有一个虚拟机
克隆虚拟机必须关机状态
①克隆虚拟机

②存储虚拟机位置设置



③克隆完成可以启动使用

1、安装nginx

①启动克隆后好的虚拟机,并上传文件到/root/data目录

②查看并执行install_nginx.sh

shell > chmod +x install_nginx.sh
shell > ./install_nginx.sh


③查看安装目录,并启动nginx


启动nginx直接执行/usr/local/nginx/sbin/nginx


以上步骤,nginx就可以进行使用静态资源的解析操作了。返回静态页面,但是现在还是不能够使用php。
2、Nginx配置文件详解
nginx配置文件 /usr/local/nginx/conf/nginx.conf

为了能够方便操作查看nginx的配置文件,可以使用sftp工具结合编辑器进行线上查看修改

如果默认打开编辑器不是,想要使用的编辑器。


3、设置工作进程的数量& d单个进程的连接数(并发量)

5、虚拟主机的配置
语法格式:

一个server段就是一个虚拟机主机
①查看并创建修改一个新的虚拟机

把root网站路径,修改为html/ithm5


②解析域名并创建网站目录,编写网页文件
windows解析需要host文件
linux解析需要/etc/hosts
在win下解析域名,可以访问到linux的ip

创建目录,并编写网页文件


修改好nginx配置文件之后,重载nginx配置文件(热部署)。

6、nginx查看效果
nginx相关的操作命令

四、nginx和php关联

编辑一个php文件


1、安装php-fpm
①给php安装脚本权限并执行操作

shell > chmod +x install_php-nginx.sh
shell > ./install_php-nginx.sh


②复制php配置文件
主配置文件复制

php-fpm配置文件复制

③启动php-fpm

2、nginx.conf配置修改
①添加php解析段

②重载配置文件,查看解析php网页

shell > /usr/local/nginx/sbin/nginx -s reload

问题:
解决


以上操作配置,就完成了lnmp环境的搭建和使用。

五、配置nginx expires缓存功能

1、nginx缓存功能概述
浏览器从服务器取回一张图片。对于在一定时间内,不会发生数据改变的资源,可以通过服务器告知浏览器,没有超过此时间限制,就不需要再次请求服务器,直接返回缓存数据即可。
节省资源(服务器的请求,带宽资源)。
2、nginx.conf详细配置

以.xx结尾的或者是jpeg或者是jpg或者是png
就进行什么什么设置。
①修改缓存配置

重载配置文件
②查看访问请求
上传一个设置了缓存的图片
如果在设置配置文件之后,出现文件找不到的情况,还是网站根目录设置的问题。
需要把root参数尽量提到最上面



六、Nginx的gzip压缩设置

1、nginx的gzip压缩功能概述
gzip是服务器提供压缩方式,在服务器端进行压缩操作,传输的时候文件大小变小,传输更加快速。到浏览器端再进行解压操作。现在基本上大部分浏览器都是支持的。IE6不支持。
2、nginx.conf详细配置
很多东西压缩之后,反而变大。

第1行 开启gzip
第2行 使用http版本 现在使用1.1 设置为1.0
第3行 禁用 不给使用 IE1-6不使用
第4行 需要压缩的文件类型
①修改配置文件

②上传图片文件,重启配置文件,查看返回的响应信息

七、负载均衡的配置

1、负载均衡原理图

2、实战Nginx负载均衡服务器

①克隆两台新的虚拟机

②配置ithm5_lnmp负载均衡服务器
负载均衡服务器 192.168.127.123
web1 192.168.127.163
web2 192.168.127.164

weight 权重 优先访问
max_fails 最大失败次数 如果响应失败次数操作此数字,就不再给此服务器分发请求
fail_timeout 响应失败时间 超过此时间就被认为是失败了
③在不同web服务器写入不同测试信息,查看访问结果

发现可以进行分发请求了

3、SESSION丢失问题

①存储session的磁盘网络共享
②入库操作 memcache redis mysql
③ip一致性 同一用户访问以一台服务器

nginx 的三个应用场景
1静态资源服务:通过本地文件系统提供服务
2反向代理服务: nginx的强大的性能 缓存 负载均衡
3 API服务:OpenResty
主流web服务器
nginx的优点
1 高并发,高性能
2 可扩展性好
3 高可靠性
4热部署
5 BSD 许可证

API服务器和web防火墙 OpenRestry是一个很好的选择

Nginx与服务器集群相关推荐

  1. 搭建服务器集群——Windows7系统中nginx与IIS服务器搭建集群实现负载均衡

    转载:https://www.cnblogs.com/xiongze520/p/10308720.html 分布式,集群,云计算机.大数据.负载均衡.高并发······当耳边响起这些词时,做为一个菜鸟 ...

  2. 10分钟搭建服务器集群——Windows7系统中nginx与IIS服务器搭建集群实现负载均衡...

    10分钟搭建服务器集群--Windows7系统中nginx与IIS服务器搭建集群实现负载均衡 原文:10分钟搭建服务器集群--Windows7系统中nginx与IIS服务器搭建集群实现负载均衡 分布式 ...

  3. nginx两台文件服务器集群,keepalived结合nginx状态检测脚本实现对web服务器集群的高可用...

    实验环境 两台CentOS-7.5虚拟机 web1:10.0.11.203 web2:10.0.11.204 VIP :10.0.11.210 web类型:nginx 客户端:自用笔记本(win10) ...

  4. nginx负载均衡,服务器集群配置,服务器挂机自动切换

    1. 首先打开nginx/conf/nginx.conf修改如下配置 http {#在http中添加下面内容#隐藏 Nginx 的版本号,提高安全性. server_tokens off;#指令指定允 ...

  5. Nginx中配置服务的反向代理(服务器集群技术)

    需求:安装两个tomcat服务,通过nginx反向代理. 1:安装两个及以上tomcat 2:配置tomcat 修改端口:打开bin目录下的server.xml文件 修改下面三个端口, 不能重复防止冲 ...

  6. (七)centos7案例实战——nginx+keepalived高可用服务器集群搭建

    前言 本节内容延续之前的内容,往期博客已经介绍了如何安装nginx服务器以及将nginx安装成为一个系统服务,本节内容是在前期内容的基础上,搭建一个高可用的nginx服务器集群,主要使用Keepali ...

  7. 常见的服务器集群负载均衡技术:二三四七层负载均衡,DNS、LVS、F5、nginx负载均衡

    服务器集群负载均衡技术 LB:load balance负载均衡器.有时也叫做director. DNS负载均衡 DNS负载均衡,最基础的是轮询方式,循环返回不同的服务器IP地址.可以同时返回多个服务器 ...

  8. Nginx负载均衡集群介绍

    第1章 集群介绍 1.1 集群简介 1.1.1 什么是集群 简单说,集群就是一组(若干个)相互独立的计算机,利用高速通信网络组成的一个较大的计算机服务系统,每个集群节点(即集群中的每台计算机)都是运行 ...

  9. Nginx配置——搭建 Nginx 高可用集群(双机热备)

    Nginx配置--搭建 Nginx 高可用集群(双机热备) https://blog.csdn.net/zxd1435513775/article/details/102508573?utm_medi ...

最新文章

  1. 昨天,JetBrains 推出“下一代 IDE”,快看有哪些值得期待的功能!
  2. 以下不是python文件读写方法的是-Python 文件I/O
  3. pdf批量添加图章_给PDF批量添加文本链接
  4. 四十一、深入Java中的 File类
  5. 分布式是什么意思_机架式ups是什么意思?与分布式DPS有何不同之处?
  6. 厉害了!谷歌新发布的半监督学习算法降低4倍错误率
  7. yml配置mysql自动重连_数据库和Doctrine(转载自http://www111cnnet/phper/332/85987htm) - Doctrine...
  8. Jquery JS 正确的比较两个数字大小的方法
  9. python 将字符串转换为字典
  10. DeepFake捏脸真假难辨,汤姆·克鲁斯比本人还像本人!
  11. 尔雅 2017大学计算机基础答案,2018超星尔雅大学计算机基础答案
  12. FTP、FTPS 与 SFTP 简介
  13. NOIP2015斗地主
  14. c语言编程温度转换源,c语言编程,将华氏温度转换成摄氏温度。转换公式为:c=5/9 * (f-32),其中f代表华氏温度...
  15. 【问题解决】seckill-秒杀项目 -- 服务端异常
  16. 蒟蒻的WA之路——二分法学习
  17. 最全架构设计实践方法论(一)
  18. TP5序列化和反序列化报错!缓存溢出
  19. 高效利用团购,方便隔离生活
  20. 最优化方法期末考试复习

热门文章

  1. FIddler+Proxifer 实现PC客户端抓包
  2. 科研TCO-PEG-Chondroitin sulfate;TCO-PEG-CS;反式环辛烯-聚乙二醇-硫酸软骨素
  3. 一篇文章带你了解AO、GO
  4. 数据仓库基础理论笔记
  5. 安徽科技学院 信网学院网络文化节 高庆
  6. 前端转安卓开发!妈妈再也不用担心我的面试,满满干货指导
  7. 【虚拟语气练习题】对现在的虚拟
  8. 工业相机的传感器靶面大小
  9. Android进阶必备:滑动冲突解决与事件分发机制(附视频讲解)这篇看完还不懂请寄刀片
  10. c++ 的vector sort遇到栈错误