企业开源办公VPN工具 发表于 2022-10-18一.背景 公司之前有用PPTP搭建了一个办公VPN,但是平时大家也没怎么用. 疫情爆发,这玩意需求就上来了,但是PPTP效果实在是太差,刚连上几分钟就给我无缘无故给断了。。。很无奈,也找不到出现了什么问题。 还有一个不想用PPTP的原因就是,我macos的电脑不支持PPTP协议,找了一些替代品的软件也不行,最终抛弃这个PPTP的解决方案。既然老板想白嫖 ...阅读全文 »
DELL OMSA(SrvAdmin)-监控软件与Promethues结合 发表于 2022-09-21一.简介公司服务器都是买的Dell,硬盘这些做了raid5+1.那么我们平时肯定要关注raid磁盘的健康状态,因为磁盘一旦超过2块坏掉,那么整个数据就不能恢复了。那我们怎么查看raid的健康状态呢?Dell提供了一个OMSA的原生监控软件,可以来通过web界面查看服务器的raid相关运行状态.如下图:登录界面: 用户名和密码就是Linux主机上的账号、密码主页: 查看RAID硬盘健康状态,现在我 ...阅读全文 »
Canal增量订阅MySQL数据同步工具 发表于 2022-09-20一.背景我们在很多的业务场景都需要用到MySQL数据库进行存储,同时呢也会用到Redis缓存、Elasticsearch全文检索引擎等等。 最常见的业务场景就是MySQL和Redis缓存数据同步问题了。一般而言我们是怎么做的呢?我们常见做法就是在代码里面写逻辑,首先访问redis缓存,如果访问不到则访问mysql拿到数据,之后再更新缓存. 这种做法没问题,简单高效。 但是这种情况要牺牲的是你需要 ...阅读全文 »
Location优先级顺序与目录穿越漏洞 发表于 2022-09-20一.Location优先级顺序配置Nginx Location的时候如何确定Location匹配的优先级如下图:精准匹配=或者~^优先级:1 > 正则~或者~*匹配 > 空修饰符(一般匹配,取URI匹配最长的) > / (任意通用匹配)二.目录穿越漏洞如下配置Nginx Location:123location /file { root /var/www/h ...阅读全文 »
Nginx生产环境平滑升级 发表于 2022-09-20一.背景最近遇到一个比较尴尬而又实际的问题,那就是我们生产环境使用的Nginx是Centos6的老古董。业务需求需要加载Nginx的一个模块来实现,但是版本太老了,需要Nginx1.18之后才能支持,而我们的是Nginx1.12。 那升级Nginx是我们要做的事情。但是在生产环境你要考虑的东西很多,不像测试服,Nginx停掉服务,重新编译新的版本再启动。 我们线上的服务需要不间断地提供服务,否则 ...阅读全文 »
Kong实现禁止国外IP访问 发表于 2022-08-08 | 分类于 Nginx一.需求背景 最近公司观察到某些国外IP或者非中国大陆IP有扫描访问记录,出于业务安全考虑,公司的业务只对中国大陆进行开展,所以需要禁止国外IP访问,增加系统安全性.同时也避免某些黑产通过国外代理IP的方式来攻击到公司的业务.查询一些网上的资料,大部分人使用nginx_geoip2_module这个nginx的模块.再通过下载免费的geoiplite2 ...阅读全文 »
RabbitMQ实现延迟队列的方式 发表于 2022-07-011.背景 最近在做类似拍卖系统的上架功能,卖家上架物品以后,例如到期时间24小时或者48小时,如果无竞拍者或者购买者,则物品自动下架到用户的邮件中。诸如电商用户下单,30分钟未支付,则自动取消订单,归还库存.实现这些类似的业务场景,大家想到最简单的方式和我想的差不多如下.看看是否和你想的基本一致.1.1 MySQL+轮询 &nbs ...阅读全文 »
rsync+inotify文件实时同步 发表于 2022-04-05简介 最近有一个比较特殊的需求,某个服务提供文件上传功能。但是由于要解决单点问题,所以会程序会部署在多台服务器上实现高可用。但是也会随之带来一个和共享cookie类似的问题,那就是文件存储也应该是共享的.其实大部分同学想到的,第一个肯定是使用NFS来解决。大家通过NFS mount到同一个目录即可实现. 但是为什么我们没有选择这个解决方案呢? 那是因为之前不知道是我们使用不当 ...阅读全文 »
Kong集群(hybrid混合)部署模式 发表于 2022-02-10一.简介上一篇文章简单入门和了解到了Kong自定义插件开发方式。紧跟着,这篇主要介绍Kong集群部署模式。生产环境/流量较大的环境下,我们的Kong就要解决单点问题和性能问题,单个Kong节点无法满足我们高并发、高访问量的需求。那么我们自然想到,Kong自身有提供集群部署模式么?答案是肯定的。 如果Kong自身没有提供集群模式,那么我们也可以自己通过负载均衡的模式,在前端架设一个高可用的7 ...阅读全文 »
2022最新Kong插件开发教程 发表于 2022-01-29一.前言很久没更新博客内容了~,之前一直想看Api网关的开源框架Kong,但是奈何各种事情打扰也没静下心来学习。不知道是什么缘故,之前总感觉Kong很难,入门门槛高。不过经过这几天的学习,发现和学习一个Nginx也没太多区别。可能人对自己未知的事物总是抱有一种恐惧感吧。今天分享记录一下Kong插件开发的基本流程。 二.原理分析Kong本身就是一个Lua包,并且是在Openresty的基础之上 ...阅读全文 »