nginx基础篇

news/2024/7/7 21:45:47 标签: nginx, 服务器, java

文章目录

  • 前言
  • 一、nginx介绍
  • 二、nginx应用场合
    • Nginx 作为 web 服务器
    • 正向代理
    • 反向代理
    • 负载均衡
    • 动静分离
  • 三、nginx的源码安装编译
    • 1.引入库
    • 2.读入数据
  • 总结


前言


nginx_12">一、nginx介绍

传统的 Web 服务器,每个客户端连接作为一个单独的进程或线程处理,需在切换任务时将 CPU 切换到新的任务并创建一个新的运行时上下文,消耗额外的内存和 CPU 时间,当并发请求增加时,服务器响应变慢,从而对性能产生负面影响。
Nginx 是开源、高性能、高可靠的 Web 和反向代理服务器,而且支持热部署,几乎可以做到 7 * 24 小时不间断运行,即使运行几个月也不需要重新启动,还能在不间断服务的情况下对软件版本进行热更新。性能是 Nginx 最重要的考量,其占用内存少、并发能力强、能支持高达 5w 个并发连接数,最重要的是,Nginx 是免费的并可以商业化,配置使用也比较简单。
其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

nginx_17">二、nginx应用场合

Nginx 作为 web 服务器

Nginx 可以作为静态页面的 web 服务器,同时还支持 CGI 协议的动态语言,比如 perl、php 等。但是不支持 java。Java 程序只能通过与 tomcat 配合完成。Nginx 专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率 ,能经受高负载的考验,有报告表明能支持高 达 50,000 个并发连接数。

正向代理

Nginx 不仅可以做反向代理,实现负载均衡。还能用作正向代理来进行上网等功能。 正向代理:如果把局域网外的 Internet 想象成一个巨大的资源库,则局域网中的客户端要访问 Internet,则需要通过代理服务器来访问,这种代理服务就称为正向代理。
简单一点:通过代理服务器来访问服务器的过程就叫正向代理。
需要在客户端配置代理服务器进行指定网站访问

反向代理

反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问。
我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器 IP 地址。
在这里插入图片描述

负载均衡

增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负载均衡
客户端发送多个请求到服务器服务器处理请求,有一些可能要与数据库进行交互,服务器处理完毕后,再将结果返回给客户端。

动静分离

为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速 度。降低原来单个服务器的压力。
在这里插入图片描述

nginx_39">三、nginx的源码安装编译

nginx官方源码 http://nginx.org
nginx安装依赖gcc、openssl-devel、pcre-devel、zlib-devel软件库
Pcre全称(Perl Compatible Regular Expressions),中文perl兼容正则表达式,pcre官方站点。
./configure --prefix --with;其中–prefix指的是安装路径,–with指的是安装本文件所依赖的库文件

1.引入库


2.读入数据

代码如下(示例):



总结


http://www.niftyadmin.cn/n/85161.html

相关文章

springbatch设置throttle-limit参数不生效

背景描述 当springbatch任务处理缓慢时,就需要使用多线程并行处理任务。 参数throttle-limit用于控制当前任务能够使用的线程数的最大值。 调整throttle-limit为10时,处理线程只有8,再次增大throttle-limit值为20,处理线程依旧为…

总结:电容在电路35个基本常识

1 电压源正负端接了一个电容,与电路并联,用于整流电路时,具有很好的滤波作用,当电压交变时,由于电容的充电作用,两端的电压不能突变,就保证了电压的平稳。 当用于电池电源时,具有交流…

【微信小程序】使用页面跳转并携带多个特定参数

前言在我们项目的搭建时常常会用到页面跳转,在微信小程序中也支持多个跳转类型。如(wx.switchTab\wx.reLauch\wx.redirectTo\wx.navigateTo\wx.navigateBack)等等,每一个路由API都是有相对应的特定跳转功能,在这里我就不赘述了。微信开发者文…

本地代码推送到Coding

话不多说,开门见山 一、coding准备 注册啊,建项目,这些就不用多说了。 1.创建一个代码仓库 填一下名称和描述就行,其他先不用填,然后点最下面完成创建就行。 2.保存代码仓库地址 二、本地代码仓库准备 已经是在…

GitHub推送报错:You‘re using an RSA key with SHA-1, which is no longer allowed

文章目录1、问题描述2、解决方案:重新生成密钥对3、将生成的公钥添加到GitHub4、向GitHub推送代码测试1、问题描述 在向GitHub推送代码的时候,执行git push命令出现如下问题: 原因是github不再支持RSA算法生成的密钥了,我们需要重…

DocEE:一种用于文档级事件抽取的大规模细粒度基准 论文解读

DocEE: A Large-Scale and Fine-grained Benchmark for Document-level Event Extraction 论文:NAACL2022.pdf (tongmeihan1995.github.io) 代码:tongmeihan1995/DocEE: DocEE: A Large-Scale and Fine-grained Benchmark for Document-level Event Ext…

重温一下C#的时间类型,并简单写一个定时器功能

🎉🎉 时间是一个非常抽象的概念,本篇文章我们不深究目前电脑上的时候是如何保持全网同步。主要是讲讲在使用C#编程语言里的时间类型。最后使用定时任务简单写一个提醒功能,比如:每天10点准时打开一次csdn首页&#xff…

Unity UI框架

一、简介 最近在各大网站看了一下 Unity3d 的 UI 框架,各种 UI 框架已经有很多的版本了,各有千秋,有的功能虽然写的完善,但用起来太复杂,有的框架功能不完善,搞个课程就上架了,还有什么 MVC 框…