运维
wang_quan_li
高级工程师,CSAI顾问团顾问,PHP策进会(PEA)兰州常委,首批陇原青年创新人才扶持计划人选,甘肃省省属科研院所科技创新团队——情报研究与信息服务模式创新团队成员。先后取得程序员、软件设计师、系统分析师资格。
展开
-
一次网站登录慢故障排查
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://baiying.blog.51cto.com/1068039/1545096 昨天上午到公司,研发发邮件通知说有用户反映登录我们A站速度很慢,登录进去之后的操作都是正常的,所以基本可以排除网络与服务器压力大的因素。 那么接下来就是看看数据库与缓存是否成转载 2014-11-22 17:47:57 · 1026 阅读 · 0 评论 -
php5.5使用Opcache加速PHP的配置详解
在前版本中我们加速php都会使用像php-accelerator zend之类的工具来进行加速优化了,但如果你使用了php5.5版本可以直接使用自带的Opcache加速PHP哦,下面就为大家介绍一下配置步骤吧。使用腾讯云服务器已经有一段时间了。购买的是腾讯云服务器系统是CentOS6.3版本的Linux发行版。前段时间还一直折腾这HHVM—->来自Facebook开源开发的PH转载 2014-12-16 16:40:33 · 965 阅读 · 0 评论 -
善用php-fpm的慢执行日志slow log分析PHP执行效率和程序BUG
启用 php-fpm 的 slow log 日志,查看执行时间过长的php文件,并将执行时间过长的进程直接终止掉!看看效果如何!具体操作方法也简单,就修改一个文件,执行命令:# vi /usr/local/php/etc/php-fpm.confPHP 5.3.3 之前版本设置如下: The timeout (in seconds) for serving a sin转载 2014-12-16 17:13:23 · 702 阅读 · 0 评论 -
使用 Vagrant就可以轻易部署N+台机器
大数据地兴起对应用程序提出了更高地要求,其中高可伸缩性就是当今任何Web都应具备的条件之一。那么如何才能学好高可伸缩编程呢?本文作者列出了一个简单的学习向导。简单,但只要坚持,你一定会成为高手。当我们对可伸缩性感兴趣时,便会寻找链接、说明、书籍、引用等各种可以学习利用的资料。本文篇幅较短,但希望能够帮助你高效地开启高可伸缩性编程之旅。声明: 你无需使用N台机器来构建/测试一个集群/转载 2014-12-03 08:36:17 · 669 阅读 · 0 评论 -
关于SVN+sersync实时同步到远程服务器的思路
关于SVN实时同步到远程服务器的方案公司里有2台测试服务器,一 台里面是开发的库文件,另一台是用来测试的。现在开发的提交了文件之后,每次需要手动的更新到另一台服务器上,很麻烦,所以有了这个方案,不过还没测试过 大量文件的时候会不会有什么问题。估计svn大量文件的时候会卡死,本文只是做一个测试,讲的是一个思路,哪位童鞋有更好的思路联系我哦。思路:首先在SVN库服务器上建立一个目录,利用svn转载 2015-01-31 18:00:30 · 1172 阅读 · 0 评论 -
启用nginx的fastcgi cache提高网站php访问速度
bin\ab.exe -n 100 -c 5http://www.9enjoy.com未使用Concurrency Level: 5Time taken for tests: 9.016 secondsComplete requests: 100Failed requests: 0Write errors:转载 2014-12-08 14:10:26 · 639 阅读 · 0 评论 -
nginx启用gzip压缩的示例
对于多数以文本为主的站点来说,文本自身内容占流量的绝大部分。虽然单个文本体积并不算大,但是如果数量众多的话,流量还是相当可观。启用GZIP以后, 可以大幅度减少所需的流量(如上图所示,本站首页大小从28K压缩到了7K)。以下是以nginx服务器为例开启gzip的一般代码。#启用gzipgzip on;#需要压缩文件的最小尺寸,单位是Bgzip_min_length 1100;转载 2014-12-08 14:23:27 · 772 阅读 · 0 评论 -
并发性能测试 apache nginx
并发性能测试1 测试目的 根据Apache、Nginx并发性能测试结果分析其并发模型各自优缺点。性能评价项包括:RPS(每秒钟处理请求数)、CPU占用率、内存占用率、最大并发数。根据Apache、Nginx并发模型优缺点,选择合适的并发模型框架。2 测试环境1、硬件环境服务器:Interl server Borad8核CPU,2G内转载 2014-12-08 14:36:26 · 1604 阅读 · 0 评论 -
PHPspeed
PHPspeed是一个运行在服务器上的系统,通过它可以帮你测试服务器的硬盘读写速度、php的计算执行速度、数据库速度以及网站的访问速度。并且他的测试版被是免费的。最后,PHPspeed只能运行在Linux上。 1、准备phpspeed#unzip phpspeed_v1_beta3.zip#mv phpspeed /var/www/html#cd phpspeed#v转载 2014-12-08 14:38:51 · 1061 阅读 · 0 评论 -
Ubuntu查看crontab运行日志
起因今天发现一台Ubuntu服务器crontab定时运行scp的备份脚本失败,手动执行脚本没问题,所以想从crontab的日志里找原因,突然发现我的/var/log下没有cron日志,这里记录一下如何ubuntu server如何查看crontab日志crontab记录日志修改rsyslogsudo vim /etc/rsyslog.d/50-default.confcron.转载 2015-01-31 09:29:22 · 526 阅读 · 0 评论 -
nginx 服务器系统优化
1 linux 默认 core file size 为 0何谓 core 文件,当一个程序崩溃时,在进程当前工作目录的 core 文件中复制了该进程的存储图像。 core 文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的。 core 文件是个二进制文件,需要用相应的工具来分析程序崩溃时的内存映像。系统默认 core 文件的大小为 0 ,所以没有创建。可以用 ulimit 命令查转载 2014-12-08 14:08:49 · 645 阅读 · 0 评论 -
学习Linux集群之概念篇
什么是集群? 集群或者说是群集:其目的是为了实现将多台计算机组合以来完成特定的任务,比如天气预报,大型网络游戏,这些都需要很大的运算量,单台计算机实现成本太高,而且不显示。那么就需要通过集群的方式,将废弃的或者正在使用的计算机联合起来,结合整体的力量来解决这些问题。集群的类型大致分为三类:1.LB Load Balancing(负载均衡集群)2.HA High Availabi转载 2014-12-08 14:26:32 · 604 阅读 · 0 评论 -
使用autobench进行web压力测试
说是使用autobench,其实autobench是一个Perl脚本用来调用httperf来进行测试。所以我们需要先安装httperf然后安装autobench。安装过程简单如下01wget http://httperf.googlecode.com/files/httperf-0.9.0.tar.gz02tar xvzf httperf-0.9.0.tar.gz03cd httper转载 2014-12-08 14:28:28 · 825 阅读 · 0 评论 -
利用autobench测试web服务器极限并发数
一、目的利用autobench工具结合httperf命令对web服务器进行测试,得出该服务器可以承载的最大并发连接数与最佳并发数。二、测试工具工具介绍1、Httperfhttperf 是一款高性能的HTTP测试工具,使用它我们可以准确定位服务器的并发连接能力。下面介绍一下它的主要特征(1) 可以观察测试客户端(并非被测服务器)在发起压力测试时的负载情况。这样在测试高并发的情况下可以转载 2014-12-08 14:29:49 · 896 阅读 · 0 评论 -
使用sersync实时同步文件
使用sersync同步文件=====================服务端下载sersync2.5_64bit_binary_stable_final.tar.gz#tar -zxvf sersync2.5_64bit_binary_stable_final.tar.gz#vi confxml.xml转载 2015-01-30 16:00:59 · 647 阅读 · 0 评论 -
apache ab压力测试
以前安装好APACHE总是不知道该如何测试APACHE的性能,现在总算找到一个测试工具了。就是APACHE自带的测试工具AB(apache benchmark).在APACHE的bin目录下。格式: ./ab [options] [http://]hostname[:port]/path参数: -n requests Number of requests to perfo转载 2014-12-08 18:04:21 · 735 阅读 · 0 评论 -
webbench工具安装使用过程,测试网站并发负载能力
webbench可以模拟3万个并发连接去测试网站的负载能力(最多可以模拟3万个),感觉要比Apache自带的ab压力测试工具好,安装使用也特别方便。也可以用于nginx的测试。一、系统环境: 适用系统:Linux二、编译安装:下载软件[root@linuxzgf ~]# wget http://www.zongguofeng.cn/uploadfile/2010/0206/转载 2014-12-08 18:06:19 · 648 阅读 · 0 评论 -
SVN本地开发、测试环境版本控制-自动发布生产环境
由于网站的结构是基于lnmp的,所以我们主要的代码都是php代码,之前在大网站的时候,一般会有比较严格的流程和比较严格的打包发布机制,比如Yahoo的 yinst package, 但是对于初创团队来说有些重了,这里我们直接使用svn进行代码的管理和发布。虽然系统环境不复杂,但是我们还是分为开发环境,测试环境(beta),和生产环境(线上),开发环境我们在自己的机器上搭建,我的是转载 2015-02-03 16:52:19 · 1312 阅读 · 0 评论 -
svn post-commit hook failed error output could not be translated from the native locale to UTF-8
增加export LANG=en_US.UTF-8仍然这个提示在apache.conf中增加SVNUseUTF8 on后重启apache即可解决原创 2015-02-03 14:55:02 · 5271 阅读 · 1 评论 -
利用SVN钩子同步程序注意事项
昨日在与同事讨论如何将测试服务器上的数据同步到生产环境,前提是利用SVN来操作,当SVN更新到测试机上的代码,经过测试后,没有问题,那么就同步到生产环境,是否有SVN有一个操作可以分别完成这两个步骤呢?在我以往搭建的SVN服务器中,提交后自动更新到测试机,可以用“钩子”来完成,只需要在hooks处理post-commit添加SVN的相关操作,包括:update、checkout、export等转载 2015-02-03 16:14:43 · 795 阅读 · 0 评论 -
PHP开源项目使用Travis CI进行持续集成
一个项目如何保证代码质量是开发中非常重要的环节,对于开源项目来说更是如此,因为开源项目要面对的是来自不同水平开发者提交的代码。所以围绕开源做持续集成(Continuous Integration)变得越来越重要,而目前使用最广泛的免费CI工具当数Travis CI,以我的项目EvaThumber为例,来介绍一下如何在PHP开源项目中配合Travis CI进行持续集成Travis CI能转载 2015-02-06 17:10:44 · 836 阅读 · 0 评论 -
liunx php的GD库 添加 jpeg 文件的支持
一般源码安装添加的GD库 是不支持 jpeg 格式的图片的,只支持如下格式GD SupportenabledGD Versionbundled (2.0.34 compatible)GIF Read SupportenabledGIF Create SupportenabledPNG Supportenable原创 2014-11-26 16:17:19 · 1211 阅读 · 0 评论 -
基于Jenkins 实现php项目的自动化测试、自动打包和自动部署
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://birdinroom.blog.51cto.com/7740375/1346812 本篇博文宅鸟将在上篇: 基于Jenkins 搭建持续集成环境 的基础上,继续介绍Jenkins结合php项目实现自动化测试和自动部署。废话不再多说,直接上干活。 宅鸟所使转载 2015-02-06 16:43:32 · 3537 阅读 · 0 评论 -
使用xhprof进行线上PHP性能追踪及分析
之前一直使用基于Xdebug进行PHP的性能分析,对于本地开发环境来说是够用了,但如果是线上环境的话,xdebug消耗较大,配置也不够灵活,因此线上环境建议使用xhprof进行PHP性能追踪及分析。xhprof的安装与简易用法xhprof是Facebook开源的轻量级PHP性能分析工具,Linux环境下可以通过pecl直接安装,比如在Ubuntu下仅需3行指令pecl in转载 2015-02-06 17:16:19 · 578 阅读 · 0 评论 -
sersync同步多个目录
声明:同步顺序,sersync向rsync同步一.配置rsync服务端(192.168.233.202)1.安装rsync软件# yum installrsync 2.手动创建rsync配置文件# vim/etc/rsyncd.conf #------------转载 2015-02-09 13:37:45 · 1281 阅读 · 0 评论 -
减少存储过程封装业务逻辑-web开发与传统软件开发的思维模式不同
本篇文章讨论并不是:不要使用存储过程,因为有些事情还是要存储过程来完成,不可能不用。而是关于:"业务逻辑是不是要封装在存储过程中实现,这样子php、java等就是调用存储过程"。 业务逻辑,通俗说就是:比如要取数据的操作,取出会员编号为x的数据,原来我们一般是封装成函数,或者直接编写sql语句查询。现在是交给数据库的存储过程去完成。+--------------------转载 2015-03-23 17:15:15 · 706 阅读 · 0 评论 -
58和百姓网的技术学习
http://v.youku.com/v_show/id_XMzc4OTA4MDky.html 58使用mongdbhttp://v.youku.com/v_show/id_XMzM4MDYwNTQw.html 赶集网。http://v.youku.com/v_show/id_XMzQxNDk1MDYw.html 去哪儿网搜索只有最适合的。没有最好的。预算是1转载 2015-03-23 16:46:40 · 1295 阅读 · 0 评论 -
使用gitlab+jenkins+saltstack+rsync自动部署Web应用
本文描述了集群服务器下部署web应用的一种方式及其架构,其讨论的背景基于以下服务架构,如图所示:本地服务器用于编辑和测试代码,编辑测试完成后将源码传到源码服务器上,再从源码服务器上同步到先上服务器。GitLab是一个开源的源码管理应用,提供类似Github的代码管理服务,使用代GitLab管理线上代码,可以在服务器更新出错时回滚到旧版本,便于管理和维护。GitLab的安装可参照官方文档转载 2015-06-16 18:07:08 · 3360 阅读 · 0 评论 -
构建Deployment系统
对软件公司,特别是互联网软件公司来说,发布流程是企业的核心竞争力。那么什么是一个好的发布流程呢?Github(别忘了它本身也是一家软件公司)的CTO在介绍Boxen的时候说过,他们公司新员工从拿电脑到可以开始编码只要30分钟,这给混过几家10w+员工公司的我带来的震撼特别强烈。所以我觉得,一个好的软件发布流程应该是:新员工在第一天入职就能push改动到production新员工在第转载 2015-06-16 18:06:10 · 826 阅读 · 0 评论 -
把JAVA程序从腾讯云移动到阿里云后tomcat启动报java.io.EOFException错误
严重: IOException while loading persisted sessions: java.io.EOFExceptiontomcat在启动时出现如下异常问题: 严重: IOException while loading persisted sessions: java.io.EOFException EOFException表示输入过原创 2015-11-23 11:21:50 · 584 阅读 · 0 评论 -
vsftpd使用总结
vsftpd是centos下最常用的ftp软件,下面是一些使用总结。1. 常用配置如果是使用yum方式安装的话服务名为vsftpd,可以使用service命令进行启动、停止或重启,配置文件在/etc/vsftpd/vsftpd.conf。经常用的配置项:listen_port=21 #监听的端口ftpd_banner=Welcome to xxx FTP server. #自定转载 2015-12-10 17:39:50 · 497 阅读 · 0 评论 -
centOS怎样强制卸载PHP
查看php版本命令:#php -v 这个命令是删除不干净的#yum remove php因为使用这个命令以后再用 #php -v还是会看到有版本信息的。。。。。 必须强制删除#rpm -qa|grep php提示如下#php-pdo-5.1.6-27.el5_5.3#php-mysql-5.1.6-27.el5_5.3#php-xml-转载 2015-12-31 16:22:58 · 602 阅读 · 0 评论 -
一次测试环境与生产环境不同导致的问题
一个soap的webservices接口程序的部署测试环境使用非编译安装,webserver是apache,执行没有问题但生产环境采用编译安装,webserver是nginx,执行有问题,xml报文没返回,经过比对测试环境与生产环境wsdl的不同时发现生产环境wsdl中的execute节点缺少子节点最后将生产环境使用非编译安装,并将webserver换成apache,发原创 2015-12-31 16:46:24 · 2431 阅读 · 0 评论 -
windows 2008 ftp配置及用户权限管理
安装配置FTP之前你得确认你的IIS已经装好,并且在安装IIS的时候已经安装了FTP服务器和FTP管理控制台。如果你已经确定安装好了,那么就开始下面的步骤:有可能把大家对server08中IIS的位置不太了解,那就先说一下进入的路径:第一步:第二步:以下为配置FTP站点的说明:1、2、3、4、5、做好这些,就去建用户并授权,搞转载 2015-12-18 10:22:51 · 2207 阅读 · 0 评论 -
阿里云数据库备份mysqldump备份数据库时排除mysql等库
阿里云数据库默认mysql库的权限是固定的,您不能给该库授权的,为了备份整个数据库,只能考虑怎么排除mysql等库说明:使用mysqldump –all-databases会导出所有库。但如果做主从,从主库dump出数据时,我们是不需要也不想要information_schema 和 mysql 库的。数据库少的情况下还可以通过/usr/local/mysql/bin/mysqldum原创 2016-01-19 14:44:55 · 835 阅读 · 0 评论 -
chmod data/cache/zfcache/file.txt 0666 failed
查看data文件夹的属性时发现它的权限是777,只需要将cache文件夹及子文件夹的权限改为666即可解决该问题原创 2016-01-04 17:14:46 · 478 阅读 · 0 评论 -
mkdir 0755 failed
nginx只需要在/usr/local/nginx/conf/nginx.conf查看user是谁?我的是www:www,因此把需要建文件夹的所有者改为www:www即可chown www:www -R ./原创 2016-01-04 17:33:03 · 874 阅读 · 0 评论 -
阿里云服务器使用OneinStack的lnmp一键安装包后查看nginx的并发数
1、netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'1234567# netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'TIME_WAIT 2126原创 2016-01-07 10:27:37 · 1074 阅读 · 0 评论 -
降低Nginx代理服务器的磁盘IO使用率,提高转发性能
目前很多Web的项目在部署的时候会采用Nginx做为前端的反向代理服务器,后端会部署很多业务处理服务器,通常情况下Nginx代理服务器部署的还是比较少,而且其以高效性能著称,几万的并发连接处理速度都不在话下。然而去年的时候,我们的线上系统也采用类似的部署结构,同时由于我们的业务需求,Nginx的部署环境在虚拟机上面,复用了其他虚拟机的整体磁盘,在高IO消耗的场景中,我们发现Nginx的磁盘转载 2016-01-07 10:39:07 · 933 阅读 · 0 评论 -
gitlab修改最大上传文件大小
vi /etc/nginx/nginx.conf在http模块中加入 `client_max_body_size 80m;` , 这个值默认是1M。vi /home/git/gitlab/app/models/note.rbvalidates:attachment,file_size: {maximum::max_attachment_size }#max_at转载 2016-01-07 14:11:08 · 4189 阅读 · 0 评论