摘要: Yupoo!(又拍网) 是目前国内最大的图片服务提供商,整个网站构建于大量的开源软件之上。以下为其使用到的开源软件信息:操作系统:CentOS、MacOSX、Ubuntu服务器:Apache、Nginx、Squid数据库:MySQLmochiweb、MySQLdb服务器监控:Cacti、Nagios、开发语言:PHP、Python、Erlang、Java、Lua分布式计算:Hadoop、Mogilefs、日志分析:AWStats任务管理:Redmine消息系统:RabbitMQ、php-amqp前端框架:Mootools缓存系统:Memcached、php-memcached、libmemca 阅读全文
posted @ 2013-07-23 23:03 mynetstudy 阅读(313) 评论(0) 推荐(0) 编辑
摘要: 最近在看一些分布式方面的文章,所以就用php实现一致性hash来练练手,以前一般用的是最原始的hash取模做 分布式,当生产过程中添加或删除一台memcache都会造成数据的全部失效,一致性hash就是为了解决这个问题,把失效数据降到最低,相关资料可以 google一下!php实现效率有一定的缺失,如果要高效率,还是写扩展比较好经测试,5个memcache,每个memcache生成100个虚拟节点,set加get1000次,与单个memcache直接set加get慢5倍,所以效率一般,有待优化!实现过程:memcache的配置 ip+端口+虚拟节点序列号 做hash,使用的是crc32,形成一 阅读全文
posted @ 2013-07-21 00:07 mynetstudy 阅读(208) 评论(0) 推荐(0) 编辑
摘要: Memcached绝对称得上是NoSQL老兵!可惜随着时间的推移,Redis等后起之秀羽翼渐丰,Memcached相比之下已呈颓势。那我们还用不用学习它?答案是肯定的!毕竟仍然有很多项目依赖着它,如果忽视它,一旦出了问题就只有干瞪眼的份儿了。网络上关于Memcached的资料可以说是浩如烟海,其中不乏一些精彩之作,比如说由爱好者翻译的「Memcached全面剖析」系列文章,在中文社区广为流传,虽然已经是几年前的文章了,但是即便现在读起来,依然感觉收获良多,推荐大家多看几遍:Memcached的基础理解Memcached的内存存储Memcached的删除机制和发展方向Memcached的分布式算 阅读全文
posted @ 2013-07-20 23:20 mynetstudy 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 何为敏感信息?简单点来说就是你不想让别人知道的信息,比如说数据库的地址,用户名,密码等等,此类信息往往知道的人越少越好。通常,PHP程序里的配置文件大致如下所示: array( 'host' => '192.168.0.1', 'user' => 'administrator', 'password' => 'e1bfd762321e409cee4ac0b6e841963c', ),);?>有时候出于某些原因,比如说代码审查,亦或者合作开发等等,第三方需要获取代码版本仓库的读 阅读全文
posted @ 2013-07-20 10:33 mynetstudy 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 系统信息arch 显示机器的处理器架构(1)uname -m 显示机器的处理器架构(2)uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)hdparm -i /dev/hda 罗列一个磁盘的架构特性hdparm -tT /dev/sda 在磁盘上执行测试性读取操作cat /proc/cpuinfo 显示CPU info的信息cat /proc/interrupts 显示中断cat /proc/meminfo 校验内存使用cat /proc/swaps 显示哪些swap被使用cat /proc/version 显示内核的版本cat 阅读全文
posted @ 2013-07-17 09:36 mynetstudy 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 一. Grep 说明 grep (global search regular expression(RE) and print out the line)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 Unix的grep家族包括grep、 egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, fgrep就是 fixed grep或fast grep,它们把所有的字母都看作单词,也就是说,正则表达式中的元字符表示回其自身的字面意义,不再特殊。 linux 使用GNU版本的grep。它功能更强. 阅读全文
posted @ 2013-07-13 23:17 mynetstudy 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 一. AWK说明 awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。 awk的处理文本和数据的方式:它逐行扫描文件,从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定处理动作,则把匹配的行显示到标准输出(屏幕),如果没有指定模式,则所有被操作所指定的行都被处理。 awk分别代表其作者姓氏的第一个字母。因为它的作者是三个人,分别是Alfred Aho、 阅读全文
posted @ 2013-07-13 23:14 mynetstudy 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 基本格式 :* * * * * command分 时 日 月 周 命令第1列表示分钟1~59 每分钟用*或者 */1表示第2列表示小时1~23(0表示0点)第3列表示日期1~31第4列表示月份1~12第5列标识号星期0~6(0表示星期天)第6列要运行的命令crontab文件的一些例子:30 21 * * * /usr/local/etc/rc.d/lighttpd restart上面的例子表示每晚的21:30重启apache。45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart上面的例子表示每月1、10、22日的4 : 45重启a... 阅读全文
posted @ 2012-03-06 13:38 mynetstudy 阅读(392) 评论(0) 推荐(0) 编辑
摘要: Wap网站处理用户登录session问题要比普通html页面的网站麻烦一些。因为有不少手机不支持cookie。而sessionid默认是通过cookie来存储和传递的。解决wap站的session问题可以使用URL传递sessionid的方法:只要在php文件的最前面加上如下几行即可:?phpini_set("arg_separator.output","&"); //用来产生 URL 参数的分割标志,默认是 "&"ini_set("session.use_cookies",0); //是否使用 cookiesini_set("session.use_trans_sid",1); / 阅读全文
posted @ 2011-01-13 11:53 mynetstudy 阅读(1426) 评论(0) 推荐(0) 编辑
摘要: 本文配图来自《高性能MySQL(第二版)》。在数据库中,对性能影响最大的几个策略包括数据库的锁策略、缓存策略、索引策略、存储策略、执行计划优化策略。索引策略决定数据库快速定位数据的效率,存储策略决定数据持久化的效率。MySQL中两大主要存储引擎MyISAM和InnoDB采用了不同的索引和存储策略,本文将分析它们的异同和性能。MySQL主要提供2种方式的索引:B-Tree(包括B+Tree)索引,Hash索引。B树索引具有范围查找和前缀查找的能力,对于N节点的B树,检索一条记录的复杂度为O(LogN)。哈希索引只能做等于查找,但是无论多大的Hash表,查找复杂度都是O(1)。显然,如果值的差异性 阅读全文
posted @ 2011-01-11 10:44 mynetstudy 阅读(1073) 评论(0) 推荐(0) 编辑