狂神说 Nginx 笔记

引入

在公司项目刚上线时,用户少,并发量小,此时一个jar包启动应用就够了,然后内部 Tomcat 返回内容给用户

在这里插入图片描述
当用户增多,并发量增大,一台服务器满足不了我们的需求

在这里插入图片描述
于是可以横向扩展,增加服务器;这时几个项目启动在不同的服务器上,用户要访问,就需要增加一个代理服务器了,通过代理服务器来帮我们转发和处理请求

在这里插入图片描述
我们希望这个代理服务器可以帮助我们接收用户的请求,然后将用户的请求按照规则帮我们转发到不同的服务器节点之上,可以按照服务器的性能提供不同的权重选择。保证最佳体验

简介

  • Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务
  • 其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好
  • Nginx 是一个安装非常的简单、配置文件非常简洁、Bug非常少的服务;Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级
  • Nginx代码完全用C语言从头写成。官方数据测试表明能够支持高达 50,000 个并发连接数的响应

作用

  • Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理

正向代理:代理客户端的 如vpn

在这里插入图片描述

反向代理:代理服务器的

在这里插入图片描述

  • Nginx提供的负载均衡策略有2种:内置策略和扩展策略;内置策略为轮询,加权轮询,IP Hash;IP Hash对客户端请求的IP进行Hash操作,然后根据Hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题
  • 动静分离:在我们的软件开发中,有些请求是需要后台处理的,有些请求是不需要经过后台处理的(如:css、html、jpg、js等文件),让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作,提高资源响应的速度
    在这里插入图片描述

常用命令

cd /usr/local/nginx/sbin/
./nginx  启动
./nginx -s stop  停止
./nginx -s quit  安全退出
./nginx -s reload  重新加载配置文件
ps aux|grep nginx  查看nginx进程

配置文件


http {
    
	upstream rainhey{      //rainhey是自定义的名称,用于location中引用
		server 127.0.0.1:8082/ weight=1;   //服务地址、端口    权重-比例,可以用来设置负载均衡
		server 127.0.0.1:8081/ weight=1;
	}
    
    server {
        listen       80;
        server_name  localhost;

        location / {			// nginx拦截所有 80端口的 /请求
            root   html;
            index  index.html index.htm;
			
			proxy_pass http://rainhey;     //  代理到rainhey服务列表中的服务
        }


### 回答1: 在他的教程中提到了Java配套笔记Nginx精讲。Java配套笔记是他为学习Java编程语言的学生准备的一套学习资料。这些笔记涵盖了Java的基础知识,包括语法、数据类型、运算符、流程控制等。此外,它还介绍了Java的面向对象编程概念,如类、对象、继承、多态等。这些笔记不仅提供理论知识,还包含了大量的实例和练习题,旨在帮助学生巩固所学的内容。 Nginx精讲是为想要深入学习Nginx的人准备的教程。Nginx是一个高性能的Web服务器和反向代理服务器,广泛用于构建高并发、高可靠性的网络应用。在这个教程中,详细介绍了Nginx的基本原理和使用方法。他解释了Nginx的配置文件结构和语法,以及如何使用Nginx处理静态资源、代理请求、负载均衡等常见任务。此外,他还分享了一些优化技巧和实战经验,帮助读者更好地理解和应用Nginx的Java配套笔记Nginx精讲都是他多年的学习和实践经验的总结。这些教程旨在帮助初学者更快地入门和掌握Java编程和Nginx的使用。他的讲解通俗易懂,配有大量的实例和练习,可以帮助读者更好地理解和应用所学的知识。无论是Java初学者还是想要深入学习Nginx的人,这些教程都是很有价值的学习资料。 ### 回答2: 的「java配套笔记 nginx精讲」指的是一套关于Java和Nginx的学习笔记和教程。 首先,Java是一种跨平台的编程语言,广泛应用于开发各种类型的应用程序。学习Java需要理解其基本语法、面向对象编程、多线程、异常处理等方面的知识,并且熟练运用Java的核心类库和开发工具。Java配套笔记可以提供一些实践案例和相关的学习资料,帮助学习者逐步掌握Java的编程技巧和应用开发。 而Nginx是一款高性能的Web服务器和反向代理服务器软件,常用于构建高性能、可靠且可扩展的Web应用架构。学习Nginx需要了解其基本原理、配置文件的编写、常用模块的使用等方面的知识。Nginx精讲的内容可能包括Nginx的安装与配置、HTTP服务器配置、负载均衡、缓存、反向代理等相关技术。通过学习Nginx的使用,可以提高Web应用的性能和稳定性。 由于字数有限,无法详细阐述上述两方面内容的具体细节。总而言之,「java配套笔记 nginx精讲」提供了Java和Nginx学习的学习资料和教程,帮助学习者系统地学习和掌握Java编程和Nginx服务器的使用。学习者可以通过这些学习材料和实践案例,逐步提升自己的技术水平,并应用到实际的项目开发中。 ### 回答3: Java配套笔记是一份针对Java开发学习者的学习指南,其中包含了Java语言的基础知识、常用的开发工具和框架、常见问题的解答等内容。这份笔记的编写者是,他是一位在Java开发领域有丰富经验的专家,因此这份配套笔记具有很高的可信度和实用性。 在Java配套笔记中,作者通过详细的讲解和实例演示,帮助读者了解Java语言的基本语法和特性,包括变量、数组、流程控制、面向对象编程等。同时,笔记中还介绍了常用的开发工具,如Eclipse和IntelliJ IDEA,以及流行的框架,如Spring和MyBatis,帮助读者快速入门并掌握实际应用。 而关于Nginx的精讲,也在这份配套笔记中有所涉及。Nginx是一种高性能的HTTP和反向代理服务器,常用于负载均衡、反向代理、静态文件服务等场景。笔记中介绍了Nginx的基本原理和使用方法,包括配置文件的编写、常见的配置示例和调优技巧等。读者可以通过学习这部分内容,更好地理解Nginx的工作原理,并能在实际项目中灵活应用。 总结来Java配套笔记是一份综合的学习资料,帮助Java开发者系统学习Java语言和相关工具,同时也包含了Nginx的精讲,帮助读者了解和应用这一常用的服务器软件。这份笔记的内容详实、实用,并且由经验丰富的专家亲自编写,因此对于想要学习Java开发和深入了解Nginx的人来,是一份不可多得的学习资源。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值