网站首页 > 博客文章 正文
什么是Nginx
在web时代,apache、tomcat、undertow都是大名鼎鼎的web服务容器,但是今天编者要介绍的是另一款web服务器nginx,可能大家并没有听过。但是Nginx同Apache一样都是一种WEB服务器。基于REST架构风格,以统一资源描述符(Uniform Resources Identifier)URI或者统一资源定位符(Uniform Resources Locator)URL作为沟通依据,通过HTTP协议提供各种网络服务。Apache的发展时期很长,在Apache大行其道的时代,互联网产业远比不上现在。所以它被设计为一个重量级的。它不支持高并发的服务器。在Apache上运行数以万计的并发访问,会导致服务器消耗大量内存。操作系统对其进行进程或线程间的切换也消耗了大量的CPU资源,导致HTTP请求的平均响应速度降低。这些都决定了Apache不可能成为高性能WEB服务器,轻量级高并发服务器Nginx就应运而生了。而要真正的对Nginx下一个定义,它究竟是什么,能干些什么呢?Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。
反向代理又是个什么鬼
在了解反向代理之前,我们先来聊聊啥是正向代理。正向代理,架设在客户机与目标主机之间,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。典型的正向代理应用场景有哪些?各位看官看着这里马上就可能会脱口而出了,找个代理服务器翻墙就是正向代理的典型应用。不错,那么对应的反向代理又是什么呢?所谓反向代理,就是架设在服务器端,通过缓冲经常被请求的页面来缓解服务器的工作量,将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器与目标主机一起对外表现为一个服务器。明白了吧,正向代理就是为我们这些散户服务的,而反向代理是为那些有服务资源的庄家服务的。
Nginx的安装
- 首先进入到http://nginx.org/en/download.html进行安装包的下载
- 注意自己的操作系统,里面的安装包有的是针对linux环境下的,有的是针对window环境下的,看官注意自行区分一下。
- 安装Nginx,对下载后的Nginx压缩包进行解压
- 启动Nginx。有两种方式,一种是直接双击运行上图中的Nginx.exe,另外一种就是
- 打开cmd命令窗口,切换到nginx解压目录下,输入命令 nginx.exe 或者 start nginx。
- 采取以上两种方式启动了Nginx后,可以通过在浏览器中访问http://localhost:80来验证Nginx是否成功启动,如果一切正常的话,浏览器页面中应该出现下图:
- 配置Nginx
- 可能各位看官注意到了,浏览器中的访问端口是8999,这是因为不好意思我的80端口被占用了,所以我把Nginx的服务端口改了,那么如何修改Nginx的服务端口以及其他的配置呢?秘密就在安装路径下的conf文件夹下的nginx.conf文件:
- 看到没有,这里被改成了8999,同时告诉大家,当我们修改了nginx的配置文件nginx.conf 时,不需要关闭nginx后重新启动nginx,只需要执行命令 nginx -s reload 即可让改动生效。
- 关闭Nginx。如果使用cmd命令窗口启动nginx,关闭cmd窗口是不能结束nginx进程的,可使用两种方法关闭nginx:
- 输入nginx命令 nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx)
- 使用taskkill taskkill /f /t /im nginx.exe
Nginx的安装先讲到这里,那么如何利用nginx代理服务器做负载均衡呢?请听下回分解!
猜你喜欢
- 2024-10-29 jfinal vue ElementUI OA HRM的前后端分离CRM系统源码免费分享
- 2024-10-29 如何项目性能优化?压力测试,数据分析,代码实战
- 2024-10-29 Spring Boot 3 使用 Java 17 和 Jakarta EE 9,并支持GraalVM 的原生 Java
- 2024-10-29 走进Spring Boot源码学习之路和浅谈入门
- 2024-10-29 7 种提升 Spring Boot 吞吐量神技
- 2024-10-29 教你Spring Boot 2.3 优雅关闭的新姿势
- 2024-10-29 拥抱Kubernetes,再见了Spring Cloud
- 2024-10-29 美团动态线程池实践思路,开源了(美团 线程池)
- 2024-10-29 Spring Boot性能优化:提高响应速度的秘密
- 2024-10-29 Java 9 和Spring Boot 2.0纷纷宣布支持的HTTP/2到底是什么?
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)