发布时间:2012-12-28 15:49:28
#!/bin/bash# This script run at 00:00# The Nginx logs pathlogs_path="/data/logs"mkdir -p $logs_path/`date -d "yesterday" +"%Y"`/`date -d "yesterday" +"%m"`/mv $logs_path/game.log $logs_path/`date -d "yesterday" +"%Y"`/`date -d "yesterday" +"%m"`/game_`date -d "yesterday" +"%Y%m%d"`.logkill -USR1 `ca......【阅读全文】
发布时间:2012-12-26 11:15:12
目的 MySQL的innodb存储引擎支持行级锁,innodb的行锁是通过给索引项加锁实现的,这就意味着只有通过索引条件检索数据时,innodb才使用行锁,否则使用表锁。然而,在数据处理中,当操作的索引列数据较多时,行锁将会升级,导致非索引项的操作也会处于锁等待状态。 测试方案 创建数据表test,表定义如下所示: CREATE TABLE `test` ( ......【阅读全文】
发布时间:2012-12-25 17:15:19
运维中关键技术点解剖:1 大量高并发网站的设计方案 ;2 高可靠、高可伸缩性网络架构设计;3 网站安全问题,如何避免被黑?4 南北互联问题,动态CDN解决方案;5 海量数据存储架构一、什么是大型网站运维?首先明确一下,全文所讲的”运维“是指:大型网站运维,与其它运维的区别还是蛮大的;然后我们再对大型网站与小型网站进行范围定义,此定义主要从运维复杂性角度考虑,如网站规范、知名度、服务器 量级、pv量等考虑,其它因素不是重点;因此,我们先定义服务器规模大于1000台,pv每天至少上亿(至少国内排名前10),如sina、baidu、 QQ,51.com等等;其它小型网站可能没有真正意义上的运维工程师......【阅读全文】
发布时间:2012-12-25 17:10:22
考虑到在本机上备份数据,一旦该机器硬盘出现故障,数据无法取出。远程手动备份数据费时费力且不及时。最好的方法就是通过脚本实现远程自动互备。但远程无论是通过SSH登陆,还是通过scp拷贝文件都需要输入密码。为了克服这个问题,首先需要实现不需要密码的SSH登陆,这样就可以使用rsync,scp,rexec等命令来做的远程备份了。1. 设置无需密码的ssh登陆,方法如下:假设A,B两服务器,现在需要在A机上用root登陆B机,而不需要输入密码,那我们可按照下面的步骤来做:1)在A机上生成钥匙对,执行以下命令:ssh-keygen -t rsaGenerating public/private rsa ......【阅读全文】
发布时间:2012-12-18 15:30:19
原文:MySQL小技巧问答(一)1. 在基于ROW的双Master复制下,如何快速大批量订正? 在A<->B的双Master结构下,假设只有一台提供服务,这是我们常用的架构,需要大批量订正数据,如何做最快?用存储过程一批批提交?这有很多的限制,有时候并不可以把一条或多条SQL拆成几段,怎么办呢?binlog不是很好的工具嘛?! ROW格式的binlog,Slave在应用时是直接使用Handler API,并没有走SQL解析,速度非常快,基本上是IO操作了,那么我们可以在备库上直接执行订正SQL,产生的ROW binlog传到主机,就会很快订正完,基本上都比写存储过程快。 2. ......【阅读全文】