Nginx 动态发现方案与实践

一、背景 很多公司都有做动态调度系统,有些是基于 mesos+docker,有些采用了 google 的 K8s,或者是自研的系统,这些系统有一个明显的特征就是服务实例的ip会频繁更换。这种容器化的部署方式和传统的服务部署形式不一样,原有的服务都是部署在某些物理机或者云主机上,这些物理机或者云主机的…

Nginx 开启Brotli压缩,可提高网站加载速度

Brotli是Google推出的开源压缩算法,通过变种的LZ77算法、Huffman编码以及二阶文本建模等方式进行数据压缩,与其他压缩算法相比,它有着更高的压缩效率,性能也比我们目前常见的Gzip高17-25%,可以帮我们更高效的压缩网页中的各类文件大小及脚本,从而提高加载速度,提升网页浏览体验。 …

Nginx 动态SSL / TLS证书加载

对于以前版本的NGINX,管理安全站点和应用程序的SSL / TLS证书的典型方法是server为每个主机名创建一个单独的块,将证书和关联的私钥静态指定为磁盘上的文件。(为了便于阅读,我们将从现在开始使用证书来引用配对的证书和密钥。)然后在NGINX 启动时加载证书。使用NGINX 1.16.0 (…

Nginx 反向代理的另类应用案例

最近又接到了一个需求: 场景是部门引进的第三方应用,部署在各个网络区域,从OA办公区域无法直接访问。目前,运营人员都需要登陆Windows跳板机,才能打开这些应用的WEB控制台。既不方便,而且还有一定Windows服务器的维护工作量,于是希望通过运维手段来解决。 拿到这个需求后,我先问了下各个应用的…

Nginx 正向代理的另类应用案例

最近接到了一个需求:通过Nginx代理把现网一个自研代理程序给替换掉,感觉有点意思,也有所收益,简单分享下。 需求背景 部门的生产环境异常复杂,有部分第三方引入的系统位于特殊网络隔离区域,请求这些系统需要通过2层网络代理,如图所示: 中心源系统请求目标系统API的形式各异,我简单收集了下,至少有如下…

Nginx 反向代理 WebSocket

用Nginx给网站做反向代理和负载均衡是广泛使用的一种Web服务器部署技术。不仅能够保证后端服务器的隐蔽性,还可以提高网站部署灵活性。 今天我们来讲一下,如何用Nginx给WebSocket服务器实现反向代理和负载均衡。 什么是反向代理和负载均衡 反向代理(Reverse Proxy)方式是指以代理…

Nginx 实现正向代理

正向代理的概念 正向代理是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。 客户端必须要进行一些特别的设置才能使用正向代理。 下面以Nginx为例…

Nginx 通过 CORS 实现跨域

什么是CORS CORS是一个W3C标准,全称是跨域资源共享(Cross-origin resource sharing)。它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。 当前几乎所有的浏览器(Internet Explorer 8+, Fir…