草庐IT

单体架构 微服务架构 分布式 微服务通信方式 网关与nginx

单体架构的优点和缺点,微服务架构的优点和缺点单体架构优点:架构简单,维护成本低缺点:各个模块耦合度太高,当对一个模块进行更新修改时,会影响到其他模块,要一起进行修改。当存在性能瓶颈的时候,需要对整个服务进行扩容,不能有针对性的扩容,如一个程序的主要功能时其中某个服务,要对其增加机器,但因为是单体架构只有一个jar包,所以只能所有功能一起升级,哪怕某些服务所需的性能很低。微服务架构缺点:架构复杂,维护成本高,会带来很多微服务架构的问题,比如说事务问题、网络问题优点:性能高、服务之间耦合度低,服务可以并行开发,开发周期短分布式和微服务的区别 分布式:分散部署分布式服务顾名思义服务是分散部署在不同的

Nginx优化&&安全&&防盗链

1.Nginx的页面优化 1.1Nginx的网页压缩 在Nginx的ngx_http_gzip_module压缩模块提供对文件内容压缩的功能。进行相关的配置修改,就能实现Nginx页面的压缩,达到节约带宽,提升用户访问速度 1.2 配置Nginx的图片缓存当Nginx将网页数据返回给客户端后,可设置缓存的时间,以方便在日后进行相同内容的请求时直接返回,避免重复请求,加快了访问速度。一般针对静态网页设置,对动态网页不设置缓存时间vim/usr/local/nginx/conf/nginx.conf 1.3  Nginx的连接超时设置HTTP有一个KeepAlive模式,它告诉web服务器在处理完

nginx代理WebSocket配置

代理WebSocket的示例配置#/etc/nginx/conf.d/proxy-http.confserver{listen8080;server_nameapi.mydomain.com;location/{proxy_passhttp://backend;proxy_http_version1.1;proxy_set_headerUpgrade$http_upgrade;proxy_set_headerConnection"upgrade";proxy_connect_timeout5;proxy_read_timeout90s;proxy_send_timeout10s;}}参数说明p

CentOS7安装Nginx详细步骤

1.首先,先去nginx官网下载压缩包:官网地址2.然后把压缩包上传到我们CentOS7上。上传完后接下来我们要安装一些依赖环境:3.安装gcc环境(因为我们nginx底层其实是C语言开发的):yuminstallgcc-c++如果有弹出Isthisok这种提示,直接输入y然后回车就好了。看到"完毕"说明安装完成了。4.然后接着输入命令:yuminstall-ypcrepcre-devel这个是用于解析正则表达式用的。5.然后,我们输入命令:yuminstall-yzlibzlib-devel这个命令是用于zlib压缩和解压缩的。6.最后,我们输入命令:yuminstall-yopensslo

Nginx跨域问题的解决方法

项目场景:Web前端开发经常会遇到跨域访问,如果没有办法让后台开放访问域,调用接口就会被浏览器拦截。解决跨域问题的方案,可以搭建一个后台服务做中间转发,也可以用nginxhttps://so.csdn.net/so/search?q=nginx转发。问题描述问题发生在nginx反向代理https://so.csdn.net/so/search?q=%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86springboot后端应用时,前端请求后端时发生Cros错误,如下图所示。原因分析:1.Nginx作为代理服务,需要配置允许跨域2.Springboot后台服务需要配置允许跨域

Nginx修复CORS漏洞方案(亲测可行)

漏洞介绍概述:CORS,跨域资源共享(Cross-originresourcesharing),是H5提供的一种机制,WEB应用程序可以通过在HTTP增加字段来告诉浏览器,哪些不同来源的服务器是有权访问本站资源的,当不同域的请求发生时,就出现了跨域的现象。当该配置不当的时候,就导致资源被恶意操作潜在危害:中CORS漏洞修复的时候,网上有发现太多的漏洞修复方案,走了很多弯路,试了好多种方案都没办法修复,要么没生效or容易绕过,下面这个修复方式亲测可以修复(修改下面域名即可),供参考:nginxCORS配置location/{   set$flag0;   if($http_origin='') 

Nginx http 文件服务器 中文名称文件乱码以及不能访问下载问题 (解决全过程)...

书接上文:在Windows环境下使用Nginx搭建HTTP文件服务器实现文件下载全步骤(详细)发现的中文乱码问题,终于自己解决了!^_^Nginxhttp文件服务器中文名称文件乱码以及不能访问下载问题(解决全过程)问题起因:首先是发现放在Nginx共享文件夹下的中文文件会出现乱码问题初步解决办法:检查conf下nginx.conf配置文件中的charset编码问题发现charset默认没有UTF-8编码,在server和location后分别加上如下代码charsetutf-8;但是仍然解决不了问题,捣鼓了半天,如果将配置文件的charsetutf-8改成gbk的话发现浏览器页面上是显示中文文

内网通过nginx代理实现邮件出网

前言通常安全设备都会提供邮件告警的方式,但一般安全设备都不直接给出网权限,所以可以在内网做邮件代理,用一台能出网的linux主机做代理,实现告警出网。下载编译nginx//安装包版本需要在1.10.0以上wgethttp://nginx.org/download/nginx-1.23.3.tar.gzyum-yinstallmakezlibzlib-develgcc-c++libtoolopensslopenssl-devel//安装依赖yuminstall-ypcre-devel//创建用户useradd-M-s/sbin/nologinnginx//解压文件tar-zxvfnginx-1.

Nginx 访问慢问题解决(慢1s)

问题场景:今天我们项目上做环境迁移。现象1:迁移之后突然发现页面访问速度变慢了;现象2:平均每个请求的访问都慢了1秒;现象3:但是访问前端静态页面的响应速度是正常的。问题修复:经排查,发现是HTTP版本的问题,Nginx默认HTTP版本为1.0,需要手动配置HTTP版本为1.1。proxy_http_version1.1;server中配置:server{listen80;server_namelocalhost;proxy_http_version1.1;......}location中配置:location/demoApi/{proxy_http_version1.1;includepro

docker部署nginx挂载配置文件报错

解决方法:在挂载nginx.conf文件时,先将配置文件放在宿主机指定的目录下如:-v/data/topnginx/nginx.conf:/etc/nginx/nginx.conf将nginx.conf文件先放在topnginx目录下,再运行dockerrun错误提示:docker:Errorresponsefromdaemon:failedtocreateshimtask:OCIruntimecreatefailed:runccreatefailed:unabletostartcontainerprocess:errorduringcontainerinit:errormounting"/d