Skip to content

分类:程序猿的东西

利用CDN代理规避网络线路问题

事发原因是部分广东移动用户无法访问API,因为我们的API部署在单节点的七层网络负载均衡后面,所以一旦用户到负载均衡的线路中断就直接挂掉了。相当于一个单点故障。 移动客服大概从来都没有遇到这种问题,打电话过去竟然一时不知该转接哪个部门。实在是一塌糊涂。 但是咱们也不能干等着,一个…

从根本修复:upstream sent too big header while reading response header from upstream

报错背景 某个用户的个人主页发生了报错,其他用户都没有问题。因为是同一份代码,所以问题应该在数据上。 初步尝试 搜索了一轮都是说修改nginx的buffer配置,这不难理解,就是让nginx允许接收足够big的header。这是一个急则治标的方法,但是我尝试了之后并不能解决。所以…

CDN概述和全站加速

CDN概述 首先了解CDN是什么,全称是Content Delivery Network 中文翻译“内容分发网络”。简单解释就是把资源也就是内容分布式存储,然后利用DNS技术的支持,使得用户可以在最近的网络节点访问数据。这样不仅节省了网络消耗,也避免了单点拥塞和单点故障。也因为C…

scrapy爬虫教程摘要(一)——基本流程

简介 scrapy是一个基于python的爬虫框架,提供了一套比较完整的爬虫解决方案,包括模拟cookie,referer,ajax等,并且支持代理,失败重试等爬虫攻防操作。可以让你专注于数据本身而不需要处理太多底层的东西。 今天整理一部分操作要点在这里以供速查和快速入门。 项目…

jumpserver堡垒机搭建和授权

堡垒机简述 堡垒机是一个服务器授权和管理的不错的方案,虽然有种种缺点,但是对小团队来说依然是不错的方案。 引入堡垒机的优点之一是方便管理和授权,用堡垒机的身份验证即可管理其他机器而不需要我去每台机上做授权,登录每台机的授权和限制也是统一管理的。另外一个是经过堡垒机发送的命令都会被…

Linux扩展权限控制ACL

Linux基本都权限控制一定不陌生,每个文件/文件夹基于 user group other 三种用户身份分别具有读、写、执行的权限,我们可以用chmod命令来修改。但是这种设置方式比较比较简单暴力。比如我某个密码文件我需要能被执行程序读取但不希望被同一主机的其他用户读取。如果单通…

chmod的第四位数

前几天看到一个命令是chmod 2770 /srv/projecta,不禁纳闷。因为从来见到的都是三位数,表示用户,群组,其他用户的读写执行权限。如今出来第四位“2”就不能理解了。 其实这是文档和目录的另一个特殊标记,第四位也是一个八进制数字,其中的三个bit分别表示SUID,S…

Linux用户与组的基本管理

用户和组的基本概念 默认情况下一个用户会拥有一个同名的私有组,比如我们用ls -l 时候会经常看到某个文件所属的用户和组是相同的就是这个原因。一个用户可以加入多个组,但是同一时间只有一个是有效组,有效组的概念可以在创建文件的时候体现出,当前用户创建一个文件的所属组就是当前的有效组…

利用nginx反向代理拷贝网站

需求 源自一个比较奇特的需求,需要把原来的网站换个域名展示,比如用B域名显示A域名下的内容。但是B域名不能与A域名部署在同一服务器,也就是说不能在A的nginx配置中设置多域名。虽然我拥有A网站的全部代码,但是我并不想在另一台机器上部署一整套的复杂的环境。 尝试 于是乎,想到了最…

深度优先搜索DFS的非递归算法——PHP实现

概念 深度优先搜索算法(英语:Depth-First-Search,DFS)是一种用于遍历或搜索树或图的算法。沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所在边都己被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为…

负载均衡、hosts和服务端渲染发生的不良反应

为了更简单的部署https,我们将https开通在了负载均衡上,负载均衡统一转发到80端口。 为了节省一丢丢网络消耗,把本机支持的域名用hosts指向127.0.0.1。 为了更好的SEO我们的网页用了服务端渲染。 于是接口请求https就没有经过负载均衡直接访问了本机443端口…

纪念侦破服务器负载悬案

近来服务器一直会有一些突发的负载高峰,而且还很有规律性,每十分钟一个高峰,同时可以看到TCP连接数和网络也会迎来高峰。 首先怀疑是外部流量所致,开始有几次逮到百度爬虫正在爬取,以为是百度周期性爬取。 后来发现百度没在爬的时候依然有此现象,怀疑是服务器上的定时任务积攒所致,因为有许…

MySQL查询导出到csv

问题 这其实是个常用技能,大部分GUI工具都提供了一些相关的操作,但是由于我用的都是基于WEB的管理工具,对结果条目超长,查询时间超长就很难适应。所以常常需要去终端导。 终端里面众所周知的导出工具是mysqldump,不过这个工具适合整表导出和备份之用,如果需要指定查询和输出格式…

Elasticsearch参数search_type与分布式原理

要不是遇到这个坑我不会去了解这个参数。 ——《论通读文档的重要性》 问题 起因是搜索结果排序的时候遇到一个奇怪的问题,一个在我理解应该排第一的结果被放在了后面,而且评分相差接近两倍之多。 分析 通过explain发现结果中第一的那个文档与我认为应该排第一的文档的idf竟然相差甚远…

阿里云MaxCompute实操记录之导入数据

MaxCompute有一套自己的导数据脚本格式,不过对于新手只要打开数据集成就可以看到创建引导。新手建议使用向导模式,只要填表就可以完成的差不多。不过对于普通数据库的导入来说,还是有其特殊性。 首先要了解ODPS的表多是分区表,需要指定一个分区键,在他的创建引导下,分区键默认为$…

MIUI无法安装证书问题

小米手机使用Charles抓https需要联机下载证书,但是MIUI下载安装一直出错,看到过很多相同遭遇的人,尝试过点击安装,从存储安装,一直无效,提示没有证书。 原因竟然是小米自带浏览器的坑,换chrome后当场安装成功