ITPub博客

首页 > 数据库 > 数据库开发技术 > nginx介绍与源码安装解析,开启高效定制化web之路!

nginx介绍与源码安装解析,开启高效定制化web之路!

原创 数据库开发技术 作者:yj11290301 时间:2024-05-29 19:00:00 0 删除 编辑


点击蓝字,立即关注

nginx源码深度解析



开启高效之路!

前言


      在互联网的浪潮中,高性能的Web服务器如同一座座灯塔,指引着网络数据的安全高效流动。其中,Nginx作为一个轻量级、高性能的HTTP和反向代理服务器,以及邮件代理服务器,以其稳定性、功能丰富及低资源消耗脱颖而出,成为业界的宠儿。今天,让我们一起揭开Nginx的神秘面纱,深入探索其核心特性、工作机制,并一同走进其源码世界,提升对这一强大工具的理解和应用能力。


除了精彩的内容,我们还为大家精心准备了一份粉丝福利,记得查看文章末尾哦!



往期回顾

#

微信公众号纸团样式使用教程

#

如何正确转载公众号文章?

#

公众号名称如何修改,有什么注意

#

西部陆海新通道加速甘肃跨境贸易

一、Nginx介绍



  Nginx(“enginex”)是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。和apache一样,都是web服务器软件,因为其性能优异,所以被广大运维喜欢。又因为nginx是一个轻量级的web服务器,相比apache来说**资源消耗更低**。

延伸版本:tengine(淘宝)、openresrt(章亦春)等

- http://nginx.org 官网
- http://www.nginx.cn/doc/index.html 中文文档


1.为什么选择Nginx



Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性:作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎。能够支持高达 50,000 个并发连接数的响应,感谢 Nginx 为我们选择了 epoll and kqueue 作为开发模型.作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP,也可以支持作为 HTTP代理服务器 对外进行服务。Nginx 用 C 编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好的多。作为邮件代理服务器: Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。

Nginx 安装非常的简单,配置文件 非常简洁(还能够支持perl语法),Bugs非常少的服务器: Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够在 不间断服务的情况下进行软件版本的升级。


    2.Nginx和Apache对比



    - 静态文件处理能力:nginx高于apache
    -资源消耗:nginx优于apache,因为nginx是异步处理模型,只需要几个进程就能够处理大量在线请求,而apache2.4仍然是进程模型或者线程模型,即仍然采用大量线程来处理大量在线请求。
    -Apache支持的模块很多,而且也比较稳定。而nginx由于出现的比较晚,所以在这方面可能比不上Apache。
    - nginx本身就是一个反向代理服务器,而且支持7层负载均衡。
    - nginx处理动态页面很鸡肋,一般只用与处理静态页面和反向代理。




    二、nginx源码安装

    一、nginx源码下载
    **官网:**http://nginx.org/
    **源码包:** nginx-1.19.3.tar.gz

    **源码包下载:**

    wget-http://nginx.org/download/nginx-1.19.3.tar.gz -P /usr/src

    1.nginx安装


    2.1、下载nginx源码包
    [root@zutuanxue ~]# wget http://nginx.org/download/nginx-1.19.3.tar.gz -P /usr/src
    [root@zutuanxue src]# cd /usr/src
    2.2、安装nginx依赖包
    [root@zutuanxue ~]# yum -y install gcc pcre-devel zlib-devel  - gcc: 源码编译工具   - pcre-devel:nginx url_rewrite 功能提供包   - zlib-devel:nginx 压缩功能提供包
    2.3、解压nginx源码,并进入源码包
    [root@zutuanxue src]# tar xf nginx-1.19.3.tar.gz[root@zutuanxue src]# cd nginx-1.19.3
    2.4、配置nginx源码
    [root@zutuanxue nginx-1.19.3]# ./configure --prefix=/usr/local/nginx    配置目的:      1)检查环境 是否 满足安装条件     依赖解决      2)指定安装方式    配置文件   命令文件  各种文件放哪里   开启模块功能【内置模块  三方模块】      3)指定软件安装在那里
    2.5、编译nginx源码
    [root@zutuanxue nginx-1.19.3]# make -j4
    2.6、安装nginx


    [root@zutuanxue nginx-1.19.3]# make install
    nginx相关目录


    nginx path prefix: “/usr/local/nginx”nginx binary file: “/usr/local/nginx/sbin/nginx”nginx modules path: “/usr/local/nginx/modules”nginx configuration prefix: “/usr/local/nginx/conf”nginx configuration file: “/usr/local/nginx/conf/nginx.conf”nginx pid file: “/usr/local/nginx/logs/nginx.pid”nginx error log file: “/usr/local/nginx/logs/error.log”nginx http access log file: “/usr/local/nginx/logs/access.log”
    nginx启动管理


    配置文件测试:/usr/local/nginx/sbin/nginx -tNginx启动:/usr/local/nginx/sbin/nginxNginx关闭:killall –s QUIT nginx
    nginx启动测试


    nginx安装完毕,接下来就可以启动nginx了,nginx启动后如何测试nginx的启动状态呢?可以通过以下三种方式去测试,这个可以根据自己的习惯选择一种测试就行了。


    - 使用netsata命令查看启动端口[root@zutuanxue ~]# netstat –ntpl- 使用losf命令查看启动端口[root@zutuanxue ~]# lsof -i :80- 使用文本浏览器访问nginx默认网站	[root@zutuanxue ~]# elinks [http://IP](http://ip/)


    测试页面内容如下

    总结



      nginx作为一个轻量级、高性能的Web服务器,不仅在处理高并发的网站服务中表现出色,其丰富的功能集和模块化设计也为现代Web服务提供了强大的支持。

    通过学习和研究nginx,我们可以更好地理解其背后的技术原理,优化我们的网站和应用的性能。

      同时,参与到nginx社区中来,不仅是对个人技能的提升,更是对开源文化的一种贡献和支持。

    随着技术的发展,让我们一起期待nginx在未来带来更多的可能性。



    END



    扫码关注我们



    敬请关注博主,我们将持续为您带来云计算行业及更多前沿技术的最新信息,助您把握技术动态,领先一步!”


    若您渴望深入了解云计算知识,或希望与云计算、运维、网络等领域的精英们共同交流学习,欢迎您私信博主,引荐您加入专业交流群。在这里,您可以与各路大咖切磋技艺,共享行业前沿资讯,一同成长进步。期待您的参与,让我们共同开启云计算领域的探索之旅!



    微信号 | a2459155652
    商务合作|学术交流|简历指导


    扫码关注
    云计算运维学习交流群



    独家粉丝福利大放送!


    🌟亲爱的朋友们,你是否对云计算充满好奇,想要深入了解这一前沿科技?那么,现在就有一个绝佳的机会摆在你面前!🌟

    💡**只要简单两步,你就能轻松获取珍贵的云计算资料一份!**💡

    1️⃣ 立即关注博主:不错过任何一次与前沿科技近距离接触的机会!

    2️⃣ 回复关键词“云计算资料”:打开通往云计算知识宝库的大门!

    🎁这份资料包含了云计算的精华内容,无论是初学者还是专业人士,都能从中获得宝贵的启示和收获。🎁

    点个「在看」再走吧!





    原文作者:网络豆云计算学堂;如有侵权,请联系管理员删除。

    请登录后发表评论 登录
    全部评论

    注册时间:2023-09-15

    • 博文量
      76
    • 访问量
      33957