nginx功能介绍和基本安装
一、简介
nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;nginx可以作为一个HTTP服务器进行网站的发布处理,另外nginx可以作为反向代理进行负载均衡的实现。
二、功能介绍
2.1、nginx负载均衡
负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡(Load Balance)其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。--百度百科
nginx提供的负载均衡能力主要包括Http负载均衡,和UDP和TCP负载均衡;
2.1.1、负载均衡算法
1、Round Robin:请求在服务器之间均匀分布,并考虑服务器权重(默认算法)
- upstream backend {
- server backend1.example.com;
- server backend2.example.com;
- }
2、Least Connections:在考虑服务器权重的同时,向活动连接数最少的服务器发送请求
- upstream backend {
- least_conn;
- server backend1.example.com;
- server backend2.example.com;
- }
3、IP Hash:向其发送请求的服务器由客户端IP地址确定。在这种情况下,要么使用IPv4地址的前三个八位字节,要么使用整个IPv6地址来计算哈希值。该方法保证来自同一地址的请求可以到达同一服务器,除非该服务器不可用
- upstream backend {
- ip_hash;
- server backend1.example.com;
- server backend2.example.com;
- }
如果其中一个服务器需要从负载均衡组中暂时移除,可以用down参数标记它,以保持当前客户端IP地址的散列。将由此服务器处理的请求自动发送到组中的下一个服务器。
- upstream backend {
- server backend1.example.com;
- server backend2.example.com;
- server backend3.example.com down;
- }
4、Generic Hash:向其发送请求的服务器由用户定义的键确定,该键可以是文本字符串、变量或组合。例如,密钥可以是成对的源IP地址和端口,或者是URI。
- upstream backend {
- hash $request_uri consistent;
- server backend1.example.com;
- server backend2.example.com;
- }
5、Least Time(NGINX Plus独有):对于每个请求,NGINX Plus选择平均延迟最低且活动连接数最少的服务器,其中最低平均延迟是根据包含到最短时间指令的以下哪些参数计算:
header :从服务器接收第一个字节的时间
last_byte:从服务器接收完整响应的时间
last_byte inflight:从服务器接收完整响应的时间,考虑到不完整的请求
- upstream backend {
- least_time header;
- server backend1.example.com;
- server backend2.example.com;
- }
6、Random:每个请求都将被传递到随机选择的服务器。如果指定了两个参数,NGINX首先考虑服务器权重随机选择两个服务器,然后使用指定的方法选择其中一个服务器
least_conn:活动连接数最少
least_time=header(NGINX Plus):从服务器接收响应头的最小平均时间($upstream_header_time)
least_time=last_byte(NGINX Plus):从服务器接收完整响应的最小平均时间($upstream_response_time)
- upstream backend {
- random two least_time=last_byte;
- server backend1.example.com;
- server backend2.example.com;
- server backend3.example.com;
- server backend4.example.com;
- }
注意:在配置Round Robin以外的任何方法时,将相应的指令(hash、ip_hash、least_conn、least_time或random)放在upstream {}块中服务器指令列表的上方
其他设置:
Server Weights:默认情况下,NGINX使用Round-Robin方法根据请求的权重在组中的服务器之间分发请求。server指令的weight参数设置服务器的权重;默认值为1:
- upstream backend {
- server backend1.example.com weight=5;
- server backend2.example.com;
- server 192.0.0.1 backup;
- }
2.1.2、第三方算法
第三方的负载均衡策略的实现需要安装第三方插件
1、fair:按照服务器端的响应时间来分配请求,响应时间短的优先分配
- #动态服务器组
- upstream dynamic_zuoyu {
- server localhost:8080;
- server localhost:8081;
- server localhost:8082;
- fair; #实现响应时间短的优先分配
- }
2、url_hash:按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,要配合缓存命中来使用。同一个资源多次请求,可能会到达不同的服务器上,导致不必要的多次下载,缓存命中率不高,以及一些资源时间的浪费。而使用url_hash,可以使得同一个url(也就是同一个资源请求)会到达同一台服务器,一旦缓存住了资源,再此收到请求,就可以从缓存中读取。
- #动态服务器组
- upstream dynamic_zuoyu {
- hash $request_uri; #实现每个url定向到同一个后端服务器
- server localhost:8080;
- server localhost:8081;
- server localhost:8082;
- }
2.2、缓存
缓存(cache),原始意义是指访问速度比一般随机存取存储器(RAM)快的一种高速存储器,通常它不像系统主存那样使用DRAM技术,而使用昂贵但较快速的SRAM技术。缓存的设置是所有现代计算机系统发挥高性能的重要因素之一。--百度百科
一般一个请求有:客户端缓存,代理端缓存(nginx),服务器缓存(redis、Memcache等)
- 客户端第一次向Nginx请求数据a;
- 当Nginx发现缓存中没有数据a时,会向服务端请求数据a;
- 服务端接收到Nginx发来的请求,则返回数据a到Nginx,并且缓存在Nginx;
- Nginx返回数据a给客户端应用;
- 客户端第二次向Nginx请求数据a;
- 当Nginx发现缓存中存在数据a时,则不会请求服务端;
- Nginx把缓存中的数据a返回给客户端应用
2.3、网络服务器
2.3.1、web服务器
Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。目前最主流的三个Web服务器是Apache、 Nginx 、IIS。-- 百度百科
nginx作为web服务器的优点:
- 轻量级,同样起web 服务,比apache占用更少的内存及资源 ,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎。在高连接并发的情况下,Nginx是Apache服务器不错的替代品: Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一. 能够支持高达 50,000 个并发连接数的响应, 这归功于Nginx为我们选择了 epoll and kqueue 作为开发模型.
- 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能
- 高度模块化的设计,编写模块相对简单
- 社区活跃,各种高性能模块出品迅速啊
- Nginx本身就是一个反向代理服务器
- 负载均衡能力突出,Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务, 也可以支持作为 HTTP代理 服务器对外进行服务. Nginx采用C进行编写, 不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多
apache是同步多进程模型,一个连接对应一个进程;nginx是异步的,多个连接(万级别)可以对应一个进程,一般来说,需要性能的web 服务,用nginx 。如果不需要性能只求稳定,那就apache 吧。
当使用nginx作为web服务器时,其必须通过fastcgi协议结合php-fpm使用,而不能像apache那样直接将php作为自身的一个模块来处理请求。
当请求交给php-fpm处理之后,当前这个连接是不能断开的,nginx怎么处理这个连接?连接始终是存在,nginx要维持一段内存空间,保存连接的相关信息(客户端信息,请求报文等),称为接收缓冲区,而当nginx准备好数据之后,是通过发送缓存区响应请求给客户端,所以维持一个请求或者说是一段会话是需要空间的。
如果客户端能理解fastcgi报文,nginx直接将php-fpm数据处理好的通过fastcgi协议传送过来的响应报文给到客户端,拿到一位数据就放到发送缓冲区中,客户端直接拿到,这个过程就是同步的,nginx就是做了透明转发。但是上述的过程是不行的,客户端是无法理解的,php-fpm处理之后的fastcgi协议报文完全送给nginx之后,nginx需要处理成客户端能识别的http报文才行,所以存储fastcgi协议报文也是需要空间的,所以这种方式下是异步的
多个请求可能是相同的资源,所以我们可以再nginx中加缓存,当请求过来时,先查看缓存是否存在且没有过期,有的话,nginx取出缓存数据封装响应报文给到客户端,没有缓存再向动态服务器php-fpm请求数据,php-fpm返回数据后,nginx先缓存起来,再响应给客户端,这样就大大减少了动态服务器的压力。
2.3.2、反向代理
正向代理:如果把局域网外的 Internet 想象成一个巨大的资源库,则局域网中的客户端要访问 Internet,则需要通过代理服务器来访问,这种代理服务就称为正向代理。
反向代理:其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问,我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器 IP 地址。
2.3.3、动静分离
动静分离:为了提高网站的响应速度,减轻程序服务器(Tomcat,Jboss等)的负载,对于静态资源比如图片,js,css等文件,我们可以在反向代理服务器中进行缓存,这样浏览器在请求一个静态资源时,代理服务器就可以直接处理,而不用将请求转发给后端服务器。用户请求的动态文件比如servlet,jsp则转发给Tomcat,Jboss服务器处理,这就是动静分离。这也是反向代理服务器的一个重要的作用。
动静分离主要是通过nginx+tomcat来实现,其中nginx处理图片、html、JS、CSS等静态文件,tomcat处理jsp、servlet等动态请求。所以可以利用nginx作为文件服务器,在公司的内网搭建文件服务器,提供下载功能,挺方便。
动静分离从目前实现角度来讲大致分为两种:一种是纯粹把静态文件独立成单独的域名,放在独立的服务器上,也是目前主流推崇的方案;另外一种方法就是动态跟静态文件混合在一起发布,通过 nginx 来分开。
2.3.4、压缩和解压缩
压缩响应通常显著的减少传输数据的大小。然而,压缩发生在运行时,它也会增加相当大的处理开销对性能有负面的影响。Nginx在发送响应到客户端时执行压缩,但不对已经压缩的响应“二次压缩”。
默认情况下,NGINX仅压缩MIME类型的响应text/html。要压缩其他MIME类型的响应,请包含gzip_types指令并列出其他类型。
2.4、高可用性
高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。如果一个系统能够一直提供服务,那么这个可用性则是百分之百,但是天有不测风云。所以我们只能尽可能的去减少服务的故障
Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP (Virtual Router Redundancy Protocol ,虚拟路由器冗余协议)功能。因此,Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的高可用解决方案软件
Keepalived高可用服务之间的故障切换转移,是通过VRRP 来实现的。
在 Keepalived服务正常工作时,主 Master节点会不断地向备节点发送(多播的方式)心跳消息,用以告诉备Backup节点自己还活着,当主 Master节点发生故障时,就无法发送心跳消息,备节点也就因此无法继续检测到来自主 Master节点的心跳了,于是调用自身的接管程序,接管主Master节点的 IP资源及服务。而当主 Master节点恢复时,备Backup节点又会释放主节点故障时自身接管的IP资源及服务,恢复到原来的备用角色
2.5、邮件代理
NGINX可以将IMAP,POP3和SMTP协议代理到承载邮件帐户的上游邮件服务器之一,因此可以用作电子邮件客户端的单个端点。这可能带来许多好处,例如:
- 轻松扩展邮件服务器的数量
- 根据不同的规则选择邮件服务器,例如,根据客户的IP地址选择最近的服务器
- 在邮件服务器之间分配负载
使用--with-mail用于电子邮件代理功能的--with-mail_ssl_module参数和用于SSL / TLS支持的参数编译了Mail模块
三、编译安装
3.1、安装依赖
- yum -y install gcc automake autoconf libtool make gcc-c++
- #安装pcre
- cd /usr/local/src
- wget https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz
- tar -zxvf pcre-8.44.tar.gz
- cd pcre-8.44
- ./configure
- make
- make install
- #安装zlib
- cd /usr/local/src
- wget http://zlib.net/zlib-1.2.11.tar.gz
- tar -zxvf zlib-1.2.11.tar.gz
- cd zlib-1.2.11
- ./configure
- make
- make install
- #安装openssl
- cd /usr/local/src
- wget http://www.openssl.org/source/openssl-1.1.1d.tar.gz
- tar -zxf openssl-1.1.1d.tar.gz
- cd openssl-1.1.1d
- ./Configure darwin64-x86_64-cc --prefix=/usr
- make
- make install
3.2、安装nginx
官网:https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-open-source/#sources
- cd /usr/local/src
- wget http://nginx.org/download/nginx-1.18.0.tar.gz
- tar -zxvf nginx-1.18.0.tar.gz
- cd nginx-1.18.0
- ./configure \
- --sbin-path=/usr/local/nginx/nginx \
- --conf-path=/usr/local/nginx/nginx.conf \
- --pid-path=/usr/local/nginx/nginx.pid \
- --with-http_gzip_static_module \
- --with-http_stub_status_module \
- --with-file-aio \
- --with-http_realip_module \
- --with-http_ssl_module \
- --with-stream \
- --with-mail=dynamic \
- --with-pcre=/usr/local/src/pcre-8.44 \
- --with-zlib=/usr/local/src/zlib-1.2.11 \
- --with-openssl=/usr/local/src/openssl-1.1.1d
- make
- make install
3.3、编译参数
make是用来编译的,它从Makefile中读取指令,然后编译。
make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
configure命令是用来检测你的安装平台的目标特征的。它定义了系统的各个方面,包括nginx的被允许使用的连接处理的方法,比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本,执行结束时,它会创建一个Makefile文件。nginx的configure命令支持以下参数:
--prefix=path #定义一个目录,存放服务器上的文件 ,也就是nginx的安装目录。默认使用 /usr/local/nginx。
--sbin-path=path #设置nginx的可执行文件的路径,默认为 prefix/sbin/nginx.
--conf-path=path #设置在nginx.conf配置文件的路径。nginx允许使用不同的配置文件启动,通过命令行中的-c选项。默认为prefix/conf/nginx.conf.
--pid-path=path #设置nginx.pid文件,将存储的主进程的进程号。安装完成后,可以随时改变的文件名 , 在nginx.conf配置文件中使用 PID指令。默认情况下,文件名 为prefix/logs/nginx.pid.
--error-log-path=path #设置主错误,警告,和诊断文件的名称。安装完成后,可以随时改变的文件名 ,在nginx.conf配置文件中 使用 的error_log指令。默认情况下,文件名 为prefix/logs/error.log.
--http-log-path=path #设置主请求的HTTP服务器的日志文件的名称。安装完成后,可以随时改变的文件名 ,在nginx.conf配置文件中 使用 的access_log指令。默认情况下,文件名 为prefix/logs/access.log.
--user=name #设置nginx工作进程的用户。安装完成后,可以随时更改的名称在nginx.conf配置文件中 使用的 user指令。默认的用户名是nobody。
--group=name #设置nginx工作进程的用户组。安装完成后,可以随时更改的名称在nginx.conf配置文件中 使用的 user指令。默认的为非特权用户。
--with-select_module --without-select_module #启用或禁用构建一个模块来允许服务器使用select()方法。该模块将自动建立,如果平台不支持的kqueue,epoll,rtsig或/dev/poll。
--with-poll_module --without-poll_module #启用或禁用构建一个模块来允许服务器使用poll()方法。该模块将自动建立,如果平台不支持的kqueue,epoll,rtsig或/dev/poll。
--without-http_gzip_module #不编译压缩的HTTP服务器的响应模块。编译并运行此模块需要zlib库。
--without-http_rewrite_module #不编译重写模块。编译并运行此模块需要PCRE库支持。
--without-http_proxy_module #不编译http_proxy模块。
--with-http_ssl_module #使用https协议模块。默认情况下,该模块没有被构建。建立并运行此模块的OpenSSL库是必需的。
--with-pcre=path #设置PCRE库的源码路径。PCRE库的源码(版本4.4 - 8.30)需要从PCRE网站下载并解压。其余的工作是Nginx的./ configure和make来完成。正则表达式使用在location指令和 ngx_http_rewrite_module 模块中。
--with-pcre-jit #编译PCRE包含“just-in-time compilation”(1.1.12中, pcre_jit指令)。
--with-zlib=path #设置的zlib库的源码路径。要下载从 zlib(版本1.1.3 - 1.2.5)的并解压。其余的工作是Nginx的./ configure和make完成。ngx_http_gzip_module模块需要使用zlib 。
--with-cc-opt=parameters #设置额外的参数将被添加到CFLAGS变量。例如,当你在FreeBSD上使用PCRE库时需要使用:--with-cc-opt="-I /usr/local/include。.如需要需要增加 select()支持的文件数量:--with-cc-opt="-D FD_SETSIZE=2048".
--with-ld-opt=parameters #设置附加的参数,将用于在链接期间。例如,当在FreeBSD下使用该系统的PCRE库,应指定:--with-ld-opt="-L /usr/local/lib".
--add-module=<PATH> #静态加载第三方模块
--add-dynamic-module=<PATH> #动态加载第三方模块
四、nginx常用命令
- [root@lgh1 nginx]# ./nginx -h
- nginx version: nginx/1.18.0
- Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]
- Options:
- -?,-h : this help
- -v : show version and exit #显示 nginx 的版本
- -V : show version and configure options then exit #显示 nginx 的版本,编译器版本和配置参数
- -t : test configuration and exit #测试配置参数并退出
- -T : test configuration, dump it and exit# 测试配置参数,dump出并退出
- -q : suppress non-error messages during configuration testing #在配置测试期间禁止显示非错误消息
- -s signal : send signal to a master process: stop, quit, reopen, reload #发送信号给主进程;包括stop(停止), quit(退出),
reopen(重新打开日志文件), reload(重新加载配置文件)- -p prefix : set prefix path (default: /usr/local/nginx/) #设置nginx的路径
- -c filename : set configuration file (default: /usr/local/nginx/nginx.conf) # 为Nginx指定一个配置文件
- -g directives : set global directives out of configuration file #从配置文件中设置全局指令
./nginx #启动nginx
五、配置文件格式说明
- ... #全局块
- events { #events块
- ...
- }
- http #http块
- {
- ... #http全局块
- server #server块
- {
- ... #server全局块
- location [PATTERN] #location块
- {
- ...
- }
- location [PATTERN]
- {
- ...
- }
- }
- server
- {
- ...
- }
- ... #http全局块
- }
1、全局块:配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。
2、events块:配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
3、http块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。
4、server块:配置虚拟主机的相关参数,一个http中可以有多个server。
5、location块:配置请求的路由,以及各种页面的处理情况
参考:
https://www.cnblogs.com/1214804270hacker/p/9325150.html
https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/
https://zhuanlan.zhihu.com/p/91296785
https://www.cnblogs.com/fuzhongfaya/p/8944951.html
https://www.cnblogs.com/crazymagic/p/11029487.html
https://www.cnblogs.com/knowledgesea/p/5175711.html
nginx功能介绍和基本安装的更多相关文章
- Charles系列一:Charles功能介绍、下载安装和界面简介
一:Charles主要功能介绍 Charles是一个HTTP代理/HTTP监视器/反向代理,使开发和测试人员能够查看机器和Internet之间所有的HTTP和SSL/HTTPS流量,这包括请求,响应. ...
- Nginx功能介绍
Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的. 从2004年发布至今,凭借开元的力量,已经接近成熟与完善. Nginx功能丰富,可作为HTTP服务器,也可作 ...
- Nginx的介绍以及编译安装详解
Nginx的介绍以及编译安装详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Nginx(全称”engine x“)诞生背景 apache主要优点是功能丰富且足够稳定,但是其 ...
- Nginx的介绍和安装详解
[介绍+安装]Nginx的介绍和安装详解 == 介绍和安装 == Nginx是一个自由.开源.高性能及轻量级的HTTP服务器及反转代理服务器, 其性能与IMAP/POP3代理服务器相当.Nginx ...
- Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...
- fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址)
fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址) 最新的Fedora 21终于正式发布了,Fedora Server 是一款强大可定制化的操作系统,包括了最好最 ...
- 3.Nginx常用功能介绍
Nginx常用功能介绍 Nginx反向代理应用实例 反向代理(Reverse Proxy)方式是指通过代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并且从内部网络服 ...
- 服务注册发现consul之一:consul介绍、安装、及功能介绍
Consul 是一套开源的分布式服务发现和配置管理系统,由 HashiCorp 公司用 Go 语言开发.它具有很多优点.包括:基于 raft 协议,比较简洁: 支持健康检查, 同时支持 HTTP 和 ...
- nginx在CentOs下的安装及配置
前言: 先介绍一下nginx: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.其特点是占有内存少,并发能力强, ...
随机推荐
- 树莓派ssh总掉线
之前入手了一个树莓派,但是远程ssh连接经常掉线,开始以为是电源不行,导致机器重启,后面加了一个显示器,观察了一段时间,发现机器并没有重启,应该是WiFi掉线了,在网上发现,树莓派如果一段网络没有流量 ...
- python3.x 基础一
1.python 格式化print #/usr/bin/env python #-*- coding: utf-8 -*- #Author:jenvid.yang # 连接符号+,可以连接多个变量或者 ...
- Spring 基于注解的配置 简介
基于注解的配置 从 Spring 2.5 开始就可以使用注解来配置依赖注入.而不是采用 XML 来描述一个 bean 连线,你可以使用相关类,方法或字段声明的注解,将 bean 配置移动到组件类本身. ...
- 基于Javaee的影视创作论坛的设计与实现
基于Javaee的影视创作论坛的设计与实现主要用功能包括: 首页推荐.用户管理.影片管理.评论管理. 预告片管理.海报管理.公告管理.数据检索.用户注册与登录等等功能.统结构如下 (1)后台管理: 管 ...
- 通过Python扫描代码关键字并进行预警
近期线上出现一个bug,研发的小伙伴把测试环境的地址写死到代码中,在上线前忘记修改,导致线上发布的代码中使用了测试环境地址. 开发过程中虽然有各种规范制度,但是难免有粗心,与其责备不如通过技术手段将问 ...
- SpringBoot2.x快速入门指南(一)
SpringBoot2.x快速入门指南(一) 准备工作 IDE: IntelliJ IDEA 2020.3 Java环境 jdk1.8 在官网快速创建SpringBoot项目 下面开始进入正题: 进入 ...
- 换个角度学习ASP.NET Core中间件
中间件真面目 关于ASP.NET Core中间件是啥,简单一句话描述就是:用来处理HTTP请求和响应的一段逻辑,并且可以决定是否把请求传递到管道中的下一个中间件! 上面只是概念上的一种文字描述,那问题 ...
- Bank2
Account: package banking2; //账户 public class Account { private double balance;// 账户余额 public Account ...
- cisco-GNS3-pix防火墙基本配置实操(持续更新)
一.ASA和PIX基础配置 1.ASA防火墙配置 1.GNS配置 因为使用的GNS3的版本可能不同,gns配置asa防火墙的步骤可能不同 在低版本的gns中直接在qemu选项里可以直接配置,参考:ht ...
- 使用docker方式构建prometheus监控的学习
一.背景:近期学习部署prometheus监控系统,经研究发现prometheus提供docker运行模式.根据我的经验,能够使用docker模式构建系统一定多快好省. 二.环境: 1.centos7 ...