自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

运维网咖社

致力于运维体系的探索和运维技术的研究实践!!

  • 博客(27)
  • 收藏
  • 关注

原创 ELK之ES2.4.1双实例平滑升级调优至5.2.1踩坑并supervisor管理记

ES老集群用的2.4.1版本,跑的比较好就一直没动,最近看资料ES5.X已经稳定,并且性能有较大提升,心里就发痒了,但由于业务要保持高可用的属性,就得想一个平滑升级的方案,最后想到了多实例过度的办法,5.X版本网上介绍配置变化较大,也做好了踩坑准备,确定好要升级后,立刻动手。一、对应升级改造方案  使用端口9220和9330 安装并配置好新的ES5.2.1实例——>关掉logstash

2017-03-04 10:27:19 2534 1

原创 玩儿透ELK体系大型日志分析集群方案设计.搭建.调优.管理

实时日志分析作为掌握业务情况、故障分析排查的一个重要手段,目前使用最多最成熟的莫过于ELK方案,整体方案也有各种架构组合,像(Rsyslog/filebeat/...)->Elastic->Kibana、(Rsyslog/filebeat/...)->Redis->Logstash->Elastic->Kibana、(Rsyslog/filebeat/...)-...

2017-01-19 21:44:40 4675

原创 WebService之nginx+(php-fpm)结构模型剖析及优化

随着php脚本语言使用的普及,目前webserice服务大部分都在用nginx+(php-fpm)的结构,了解了其工作过程后才可以在各个方面想办法做调整优化和故障排查,从以下几点总结一下这种模型。一、nginx和php-fpm的关系和分工nginx是web服务器,php-fpm是一个PHPFastCGI进程管理器,两者遵循fastcgi的协议进行通信,nginx负责静态类似html文件的处理,ph

2017-01-07 21:19:59 499

原创 大型互联网应用如何进行流量削峰,应对瞬间请求?

大型互联网应用经常要处理流量高峰问题,这也是我所负责业务经常要面对的事情,比如遇到一个热点事件、策划一个活动或者push一个页面,访问的骤增带来读写流量的骤增,对应每个模块都面临考验,那么有哪些方法可以做到流量削峰或者说流量削峰要从哪几个方面考虑呢,说下我的总结:1、系统基于微服务的架构设计,弹性扩展瓶颈模块服务器资源;2、接入层以及各微服务模块极大的用好cache,增加QPS,从而加大整个集群的

2017-01-07 21:19:57 8658

原创 产品运维角度分析大型互联网应用架构设计与优化的“4要素”

作为一名互联网产品运维,对什么是好的产品(技术架构角度)有自己的感悟(我负责运维的产品高峰日访问量在10个亿,机器分布在全国不同机房,虽也有大小问题,但整体运行不错)。产品运维是一个既要和开发又要和各基础运维打交道的职务,要考虑到结构、扩容、容灾、高可用和优化等各方面的事宜,又要研究产品的逻辑本身(排障时需要),工作中发现,一个好的互联网产品不仅在优秀的代码本身,更体现在后期的易运维性、可扩展性、

2017-01-07 21:19:53 841

原创 在互联网你的请求是如何被引导、劫持的?

做cache有诸多好处,比如对于运营商而言可以节省网间流量(省钱)、提高用户体验(静态内容、视频等加速),对于网站主通过CDN做了cache后可以提高用户体验(加速),当然也有非法获利者通过cache设备洗流量加广告等也挣到了钱,那么这个过程他们是怎么把一个请求引导到他们的服务器上的呢??原理是什么???最近刚好遇到我们的业务被劫持的问题,趁此机会做一个总结,抛砖引玉供大家一起探讨。我将其分为三个

2017-01-07 21:19:50 1832

原创 nginx多条件if判断后rewrite,减轻后端php工作压力(随笔)

先说下我对nginx配置文件的认识:      nginx的配置文件可以看成是一个程序,一个按照程序员思维习惯进行语法设置的nginx配置程序,编写简单便于理解,而且配合着各种变量和if判断等指令可以灵活的做各种策略设置。      工作中,每当一个请求过来,都会执行一遍配置文件,配置文件的各个变量也会伴随着重新开辟一套,也就是说每个请求是相互独立的存在空间,而配置文件里的指令集的多少会根据编译模

2017-01-07 21:19:47 584

原创 老nginx集群向tengine的升级改造,性能提升数倍

集群服务器使用nginx+fpm(php)的结构,这种结构的性能很大程度的瓶颈在fpm这一层,随着业务发展,访问量的增加,为了保证用户体验,我们在通过各种手段去提升集群的吞吐量和服务质量——机器扩容、业务分池、MC/REDIS的local化等等,做下来看到的效果是明显的,不过量级上的提升还是迫切需要,于是想到了在web服务器上在下下功夫,集群使用的nginx版本有点历史,版本就不说了,不过一直跑的

2017-01-07 21:19:45 1737

原创 理解TIME_WAIT,彻底弄清解决TCP: time wait bucket table overflow

一直对这个问题知其然而不知其所以然,这些日子再次碰到,看了很多的资料,彻底解决一下,呵呵,先上个图,所有理解围绕着此图来看,此图描述了四次挥手的整个过程:650) this.width=650;" title="QQ截图20160425180531.png" alt="wKiom1cd6_mwEZr2AACU62IiAp4333.png" src="http://s5.51cto.com/wyfs

2017-01-07 21:19:39 15959

原创 Nginx/tengine做cache时缓存机制—存不存、存多久、用不用方法论

Nginx/tengine(后面名称只写nginx了)单纯做cache性能比不过ats,特别是在磁盘处理方面,不过论综合能力nginx就是大拿了,他集web服务器、负载均衡、cache三种能力于一身,可以说是非常综合性的选手。比如说一个中型网站的场景选型,前端是负载,后端托着一堆apache服务器,现在该到前端负载选型的了,虽然lvs和ha单纯从负载的性能要比nginx好一些,但我还是会选ngin

2017-01-07 21:19:36 2173

原创 Nginx/tengine里的那些timeout时间

老早用nginx时就零零散散的接触这些时间,一直没静下心系统的梳理一遍,其实理解了这些时间的作用和设置,对配置tengine(nginx)线上业务的优化有不可小觑的作用,对nginx的工作流程也会有更深的理解,目前我线上配置是服务http小文件(非视频和下载类)的,具体参数配置如下,因为没有看过nginx的源码,纯从运维角度理解: client_header_timeout 10s; client

2017-01-07 21:19:32 1605

原创 Nginx/Tengine服务启动管理脚本(未使用系统funtions函数)

tengine是淘宝对于nginx1.6.2的一个二次开发,性能比原生态nginx更好,这几天在做测试,想应用到现有的架构里。源码包安装后就牵涉到一个添加到系统服务方便管理问题,到网上搜nginx启动脚本一大堆,但不是自己写的总归不放心,再者好多用的是系统的/etc/rc.d/init.d/funtions函数来实现的,虽然看着很健壮,但想到出了问题后又得研究怎么排查,一不做二不休干脆写一个,把脚

2017-01-07 21:19:29 1459

原创 十几万连接几M的流量,吓死“宝宝”了

某局点升级(nginx变ats,同时去掉前端的nginx负载层),升级之后服务就不正常,硬生生的看着十几万连接,没有流量,各种排错,可谓是把心提到嗓子眼惊心动魄的半小时,虽然做了很好的业务机制,服务不正常用户可以直接回源,不过对于我们的流量而言肯定是个锯齿了,回顾一下排查过程。    升级过程不说了,升完后对业务配置、健康心跳、磁盘设置、本地回源DNS简单做了检查,没发现问题。接下来就是切流量过来

2017-01-07 21:19:26 453

原创 大并发下TCP内存消耗优化小记(86万并发业务正常服务)

最近在做一个大并发服务的测试(目前测到86万,当然有大量长连接,每天打的日志高到170多g,不打算继续测了),业务系统为反向代理ATS,服务的内容为动态域名,大部分的url很长,不过打开后的值只是0或1这样的标记。    当服务器在几万并发时,一般不需要考虑TCP连接消耗内存的问题,但当服务器承载几十万并发时,会暴漏出各种的问题,因此不得不考虑TCP连接对内存资源的消耗,当然跑到86万的并发需要对

2017-01-07 21:19:23 5233

原创 CDN的cache节点(http)结构及工作原理总结(图自画)

无数的cache节点再加上调度就是一个cdn,当然这玩意如果放在运营商里面就是个cache,一来可以帮运营商节省流量,节省其到别的运营商的回源带宽,二来提高用户的用户体验,让用户访问速度更快,结构图如下:650) this.width=650;" src="http://s2.51cto.com/wyfs02/M00/7F/00/wKiom1cPSAfj_xAOAADpDp_qBCY949.png

2017-01-07 21:19:20 965

原创 深入浅出剖析内容分发网络CDN业务架构

CDN学名内容分发网络,作用的web加速,对于厂家而言,希望把简单的东西复杂化,好多卖钱,对于一个技术人员来说,希望把复杂的东西简单化,以便研究其根本。CDN曾经一度被"专家"和厂家炒作成庞然大物,非常高端、高科技,非蓝汛、网速这种专业公司而不可做,随着web网站的普及发展,越来越多的站长接触到了这一个东西,现在我用通俗语言来剖析一下,看你是否还觉得它神秘莫测?    有人把它比作是和互联网平级的

2017-01-07 21:19:17 528

原创 ATS通过header头重写解决HIT/502故障

某局点的ats经常出现HIT/502的故障,客户一旦发飙,这是个扯不清的问题,如果是MISS/502那可以说是源站错误,但HIT/502就与ats业务系统有关系了。    经过手动测试,同一个url直接回源连续访问,偶尔就有502,问题很明显了,源站是不稳定的。分析后发现源站使用某厂家的CDN做的分发,造成了源站不稳定,我们拿到的是CDN的内容,而且返回的502信息中还有明确的max-age,at

2017-01-07 21:19:14 773

原创 mysql互主自动化配置脚本

在做mysql主从和互主配置时,如果一步一步操作,经常会调整半天,浪费时间。其实原理很简单,通过IO线程对bin-log进行相互同步,然后有个sql线程把bin-log执行一遍,为了防止相互打架,设置一个offset,于是就想怎么样提高效率,最短的时间把环境搭建好,好在只要想就是有办法的,写个shell脚本,执行完搞定,脚本里对mysql本身并未做过多优化,只保证保主从、互主的成功,分享出来,在研

2017-01-07 21:19:11 546

原创 linux下PXE无人值守环境自动安装脚本

当时单位要安装一套linux的PXE无人值守装机程序,装完后花了九牛二虎之力写了一个自动安装脚本,以便今后安全方便,不过后来就没怎么用了,甚至都有些淡忘了,哈哈,分享出来,有研究PXE自动安装的可以看看,在使用的时候里面的ip地址要换掉的。#!/bin/sh#writer:gaolixuyum -y install dhcp tftp-server vsftpd syslinux xinetd

2017-01-07 21:19:08 912

原创 shell脚本——爬取域名一级页面元素并判断其可缓存性

来了一个域名如何判断其缓存与否,高大上的专业爬虫当然可以做分析,如果不是很严谨的分析,通过shell脚本也可以实现,来看看我这个一层页面的小爬吧,哈哈哈,先脚本执行后的结果图:650) this.width=650;" src="http://s5.51cto.com/wyfs02/M00/7C/D6/wKioL1bZGG_QERYEAAE4F_-W1L8999.png" title="QQ%E5

2017-01-07 21:19:05 753

原创 shell脚本——linux主机监控

写着玩儿的,在init 5级别,运行后会主动生成两个窗口,对系统以及系统上的主要服务进行监控,并及时刷新,抛砖引玉,分享一下。650) this.width=650;" src="http://s2.51cto.com/wyfs02/M02/7C/D7/wKiom1bZExnikBOrAAA8FYXAEb8968.png" style="float:none;" title="QQ截图201603

2017-01-07 21:19:02 265

原创 ATS巧玩儿缓存策略增加动态服务吞吐量

先看一下策略调整后瞬间的流量图:650) this.width=650;" src="http://s4.51cto.com/wyfs02/M02/7D/34/wKiom1biPgniuMbYAABokJ_0Sig253.png" style="width:224px;height:258px;" title="QQ截图20160311112756.png" width="224" height=

2017-01-07 21:18:59 908

原创 调整ATS日志处理机制及相关脚本

在ATS的尝试使用中,日志处理是很重要的一环,我在研究这个时候花了不少精力,首先我们测试用的ATS是5.3.2版本,默认打印的是二进制日志squid.blog,一天一切割,当然也可以变为文本日志,不过ATS自带的很牛逼的分析traffic_logstats就用不了了,怎么办呢?苦思冥想,最后想了个好办法,打两套日志,文本日志存档,供我们看,二进制日志一天一删除,哈哈,问题圆满解决。为了迎合线上的访

2017-01-07 21:18:56 862

原创 ATS代理缓存工作机制流程图(自画)

为了方便了解学习ats的代理缓存工作机制,抽时间画了一张单node节点的工作流程图,分享出来交流学习,此图经过了多次修改,画工一般,包涵见谅!!!注:ATS直接读写裸盘,不需要格式化挂盘。650) this.width=650;" src="http://s5.51cto.com/wyfs02/M00/7F/01/wKiom1cPX1DydO16AAE-99DDuRE550.png" title=

2017-01-07 21:18:53 765 1

原创 说说为什么要有CNAME

做互联网、CDN都少不了去和CNAME打交道,工作中也遇到很多关于CNAME的知识,现在对CNAME做一个总结,为什么要有CNAME,以及CNAME存在的价值是什么,抛砖引玉,纯属个人理解!!!1、降低多域名、多服务器、多业务的运维成本。通过将域名CNAME到新的地址后,降低权威DNS配置的复杂性,将变化频繁的配置(比如说A记录、MX记录)、功能业务(智能多线、CDN分发)等切割分离,出现故障后排

2017-01-07 21:18:51 5471

原创 透过ATS缓存配置看如何判断HTTP资源是否可缓存方法论

缓存有个大原则,就是在不影响用户、不触犯法律的前提下,尽量多的将资源缓存到本地。哪些HTTP资源可以cache哪些不能cache,ATS对可缓存性有一套系统的判断机制,设置灵活,可以对全局进行配置也可以对个别资源单独配置,可以针对单个url进行配置也可以针对文件后缀类型进行配置,可以对正常资源进行配置也可以对故障信息(状态码400以上)进行配置,可以对静态资源进行配置也可以对动态资源单独配置,现在

2017-01-07 21:18:48 1648

原创 回眸总结linux的启动过程

学弟问我linux的启动过程,突然被雷到了,竟然忘的那么透彻,脑袋飘来6个字——“岁月是把杀猪刀”,于是恶补 ,写成日志,起码原理上的东西不能丢,发展才是硬道理,最近做一个高并发(70万)的服务测试中也深深感受到对linux系统的理解还需要更加的深刻,废话不多说,总结如下:       1、系统加电后,bios读取硬件信息,读取启动设备,读取0磁头0柱面的1扇区的主引导记录mbr,并将启动控制权移

2017-01-07 21:18:45 177

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除