性能优化
文章平均质量分 88
摘取天上星
暂无描述……
展开
-
PHP性能优化大全(整理)
PHP优化对于PHP的优化主要是对php.ini中的相关主要参数进行合理调整和设置,以下我们就来看看php.ini中的一些对性能影响较大的参数应该如何设置。 # vi /etc/php.ini(1) PHP函数禁用找到:disable_functions =该选项可以设置哪些PHP函数是禁止使用的,PHP中有一些函数的风险性还是相当大的,可以直接执行一些系统级脚本命令,翻译 2013-06-09 15:54:00 · 5423 阅读 · 0 评论 -
百万级运维经验:服务器的选择和部署
对服务器的选择,我曾经盲目过。流量大了服务器顶不住怎么办,我那时候的想法就是加配置,4核变8核,8核变16核,内存也加,4GB变8GB变16GB,为什么不加服务器呢,麻烦嘛,觉得提高服务器配置的效果也是一样的。后来我才明白,这种想法是错误的,还是停留在个人电脑的思维。我发现,增加了服务器配置并不能给我带来相应的性能提升,我对服务器和操作系统没有特别深的了解,我个人觉得原因如下:首先,大部分软件没有转载 2014-05-29 15:57:35 · 2733 阅读 · 0 评论 -
Mongodb和Redis数据不能放在同一个服务器
一开始时,为了省服务器,把Mongodb和Redis放在一个服务器上。网站每到高峰期都特别卡,还经常出现502。找了很久的原因,发现硬盘的写数据很大,IOPS也很高,排查了很多原因都没找到。然后再仔细研究监控,发现写硬盘的操作很有规律,每隔几分钟就有一次频繁的写硬盘,联想到Redis同步数据到硬盘的间隔就是几分钟,所以开始怀疑是Redis引起的。于是加了一台服务器,把Redis单独放在那里,发现网转载 2014-05-29 15:52:08 · 2494 阅读 · 0 评论 -
redis安装+redis集群配置+phpredis扩展安装
安装前的准备:redis-3.0tar.gz 官网下载地址 http://redis.io/download/以下软件或直接yum安装也可(安装步骤略)tcl8.6.1-src.tar.gz 官网下载地址 http://sourceforge.jp/projects/sfnet_tcl/releases/rubygems-2.4.2.zip原创 2014-11-07 17:31:23 · 7164 阅读 · 2 评论 -
phpredis中文手册
redis中文手册:http://readthedocs.org/docs/redis/en/latest/ 本文是参考《redis中文手册》,将示例代码用php来实现,注意php-redis与redis_cli的区别(主要是返回值类型和参数用法)。目录(使用CTRL+F快速查找命令): KeyStringHashListSet键(Key)DELKEYSRANDOMKEYTTLEXIST翻译 2014-11-19 15:11:50 · 2556 阅读 · 0 评论 -
数据库网站统计之mysql计数器优化【转载-单曲兄弟的博文】
如果应用在表中保存计数器,则在更新计数器时可能碰到并发问题。计数器表在WEB应用中很常见。可以用这种表缓存一个用户的朋友书、文件下载次数等。创建一张独立的表存储计数器通常是一个好主意,这样可使计数器表小且快。使用独立的表可以帮助避免查询缓存失效。假设只有一个计数器表,只有一行数据,记录网站的点击次数:mysql>CREATE TABLE hit_counter( -> cnt int u转载 2014-12-22 17:07:19 · 1605 阅读 · 0 评论 -
web前端性能优化——DNS预解析和浏览器并发连接数
当浏览器请求一个URL的时候,通过firebug我们可以发现大概有以下几个过程:阻挡、域名解析、建立连接、发送请求、等待响应、接收数据。后面四个跟用户的网络情况和你的服务器处理速度有关,本文重点说说前两个。提高浏览器并发连接数阻挡:不同的浏览器对单个域名的最大并发连接数有一定的限制,HTTP/1.0和HTTP/1.1也不相同。比如HTTP/1.1协议下,IE6的并发连接数限制是2个;而在HTTP/翻译 2015-01-15 11:48:59 · 4106 阅读 · 0 评论 -
使用sysbench进行cpu/IO/内存/OLTP等基准测试
sysbench-0.5安装tar zxvf sysbench-0.5tar.gzcd sysbench-0.5 (与其他软件包不同的是解压缩后,默认没有configure文件,所以需要先执行 autogen.sh 文件 才可以使用./configure进行编译安装)./autogen.sh 如下图:执行编译命令:./configure --with-mysql-includes=/usr/l原创 2015-01-16 17:00:10 · 10858 阅读 · 0 评论 -
取得一张表的数据不在另一张表中的最优秀方法(JOIN与EXISTS的效率研究)
业务需求:公司有个CRM经纪人管理系统,前天遇到的比较棘手的问题是,要查询一张表中不在另一张表中的所有用户并分页显示,但问题是外表的数据量很大,如果用not in(select ..),not exists(select ...)之类的子查询 的话需要对子查询表进行所有信息的调用过滤才行,一单子查询数据量过大效率问题就来了,于是就私下里查了一点资料,并根据资料中提供的例子建立了对应的测试表做了一些原创 2015-04-17 09:50:26 · 5751 阅读 · 0 评论 -
predis使用之php代码说明
//使用autoload加载相关库,这边重点就是为了require $file;spl_autoload_register ( function ( $class ) { $file = __DIR__ . '/lib/Predis/' . $class . '.php' ; if ( file_exists ( $file ) ) { require $翻译 2015-04-30 11:34:57 · 2459 阅读 · 0 评论 -
Redis 性能测试
Redis 性能测试Redis 性能测试是通过同时执行多个命令实现的。语法redis 性能测试的基本命令如下:redis-benchmark [option] [option value]实例以下实例同时执行 10000 个请求来检测性能:redis-benchmark -n 10000PING_INLINE: 141043.72 requests per secondPING_BULK:翻译 2015-06-03 11:44:30 · 2268 阅读 · 0 评论 -
Redis和Memcached的选择
看到很多人推荐使用Redis代替Memcached,我觉得这两个是不一样的东西,它们的关系应该是共存而不是替代。Memcached是个纯内存型的缓存系统,支持数据类型单一,单个缓存数据有限制,支持分布式,我觉得这是个很理想的缓存系统。Redis是个简单的NOSQL数据库,支持几种简单的数据类型,支持主从复制,支持持久化,可以看作是个内存型数据库。由此可见,Memcached是正宗的缓存系统,Red转载 2014-05-29 15:50:54 · 1582 阅读 · 0 评论 -
opcache? Zend Optimizer强势来临
PHP官方在2013-05-09日释放了最新版本的php, 5.5.0rc1正式发布, 同时发布的还有php 5.4.15正式版, 两版本均自带64位环境压缩包, 在当前大内存下, 64位编译包是非常可取的. 经过了4个版本的beta测试, rc1版本更新的内容不多, 都是细节异常修复. 可我们仍然能够朌望其中的一个加载件:Zend Optimizer, 官方在开发5.5.0时就放出消息, 会集成翻译 2014-04-14 10:39:54 · 1232 阅读 · 0 评论 -
Nginx优化指南+LINUX内核优化+linux连接数优化+nginx连接数优化
Most setup guides for Nginx tell you the basics - apt-get a package, modify a few lines here and there, and you’ve got a web server! And, in most cases, a vanilla nginx install will work just fine for翻译 2014-04-19 15:08:09 · 5329 阅读 · 0 评论 -
MySQL性能优化的21个最佳实践
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。 1.翻译 2013-06-09 16:10:02 · 1262 阅读 · 0 评论 -
什么样的服务器才能叫做大并发
我觉得服务器在成为大并发前,首先要能承受住大并发的压力,无论能否正常返回,首先不能崩溃。apache和nginx是两个出名的服务器,先来分析一下它们。大量用户访问的时候,apache会创建大量的进程数,吃掉大量的内存,而nginx内存这块做得很好,不过这也是nginx的瓶颈所在。所谓有内存就是给你花的,你不花怎么对得起服务器呢,何况现在的服务器一般都是高配。快速响应转载 2013-06-13 16:10:42 · 3448 阅读 · 4 评论 -
网站页面性能优化的35条黄金守则
1. Make fewer HTTP requests 尽可能少的http请求。。我们有141个请求(其中15个JS请求,3个CSS请求,47个CSS background images请求),多的可怕。思考了下,为什么把这个三种请求过多列为对页面加载的重要不利因素呢,而过多的IMG请求并没有列为不利因素呢?发现原来这些请求都是可以避免的。15个JS和3个CSS完全可以通过特殊的办原创 2013-06-07 16:32:23 · 5849 阅读 · 3 评论 -
nginx配置静态文件expires时间 cache-control
对于站点中不经常修改的静态内容(如图片,JS,CSS),可以在服务器中设置expires过期时间,控制浏览器缓存,达到有效减小带宽流量,降低服务器压力的目的。以Nginx服务器为例: location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {#过期时间为30天,#图片文件不怎么更新,过期可以设大一点,#如果频繁更新,则可以设置得小一点。expire原创 2013-06-07 16:42:30 · 13300 阅读 · 0 评论 -
Apache启用mod_expires模块 + mod_headers设置
mod_expires可以减少10%左右的重复请求,让重复的用户对指定的页面请求结果都CACHE在本地,根本不向服务器发出请求。在使用之前,首先要确认一下”mod_expires”模组是否有启用.如果是自己安装Apache来架设网页主机的话,这里我们可以透过编辑Apache的”httpd.conf”设定档来处理.搜寻一下,你可能会找到这么一行:#LoadModule exp翻译 2013-06-07 17:40:31 · 5185 阅读 · 0 评论 -
php memcached缓存集群
一、需求描述一linode xen vps 1G RAM,40+sites,IO频繁,openfiles ulimit已65535US时间访问量大增,nginx不定时502二、解决办法pages cache化,但这一台vps内存不够用,于是把闲置的几台服务器都装上memcached做缓存集群再根据网络延迟设定权重memcached server官方:翻译 2013-07-13 19:09:17 · 2241 阅读 · 0 评论 -
php memcached+Mysql(主从)
/*index.php 程序入口,用来构造sql(如查询,更新)config.php 配置参数(memcache,mysql)init.php 封装memcached操作(memcache连接,设置,获取)mysqli.php 封闭mysql操作(mysql主连接,mysql从连接,mysql主更新,mysql从查询)*/index.phprequ翻译 2013-07-13 19:05:59 · 1987 阅读 · 0 评论 -
linux服务器安全配置攻略
引言:我们必须明白:最小的权限+最少的服务=最大的安全所以,无论是配置任何服务器,我们都必须把不用的服务关闭、把系统权限设置到最小话,这样才能保证服务器最大的安全。下面是CentOS服务器安全设置,供大家参考。一、注释掉系统不需要的用户和用户组注意:不建议直接删除,当你需要某个用户时,自己翻译 2013-07-16 16:58:06 · 4983 阅读 · 0 评论 -
mysql数据库性能优化的关键参数及mysql服务器优化
MySQL数据库性能优化的关键参数关键参数一:back_log要求 MySQL 能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。back_log 值指出在MySQL暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。只有如果期望在一个短时间内有很多连接,你需要增加原创 2013-08-13 11:50:35 · 3015 阅读 · 0 评论 -
linux服务器性能检测与分析
VersionDateAuthorDescription1.02011/5/26dengwu@taobao.com初稿1.12011/6/23dengwu@taobao.com添加CPU分析翻译 2013-09-23 11:47:52 · 3530 阅读 · 0 评论 -
【慢查询优化】连表查询注意谁是驱动表&搞不清楚谁join谁更好时放手让mysql自行判定
写在前面的话: 不要求每个人一定理解 联表查询(join/left join/inner join等)时的MySQL运算过程; 不要求每个人一定知道线上(现在或未来)哪张表数据量大,哪张表数据量小; 但把mysql客户端(如SQLyog,如HeidiSQL)放在桌面上,时不时拿出来 explain 一把,这是一种美德!在实例讲解之前,我们先回顾一下联表查询的基础知识。——联表查询的基转载 2017-01-09 15:40:26 · 609 阅读 · 0 评论