代码改变世界

Ubuntu下安装和配置Apache2

2013-03-08 11:47 by 折翼的鸟, 242 阅读, 0 推荐, 收藏, 编辑
摘要:在Ubuntu中安装apache 安装指令:sudo apt-get install apache2 安装结束后: 产生的启动和停止文件是:/etc/init.d/apache2 启动:sudo apache2ctl -k start 停止:sudo apache2ctl -k stop 重新启动:sudo apache2ctl -k restart 配置文件保存在:/etc/apache2需要说明的是,普通的apache发行版本配置文件是: httpd.conf Ubuntu发行版本的主配置文件是: apache2.conf 在apache2.conf引用到了以下文件:... 阅读全文

用mysql+redis实现微博feed架构上需要注意哪些问题

2013-02-27 09:51 by 折翼的鸟, 381 阅读, 0 推荐, 收藏, 编辑
摘要:1、MySQL使用需要注意的地方1) 存储引擎选择InnoDB,在高并发下读写有很好的表现2) 数据合理分表分区,均衡各数据库服务器的负载3) 适当作数据的冗余,便于在cache失效时的快速恢复2、Redis使用需要注意的地方1) 合理规划cache将访问量高的热点数据统计出来、分类缓存。对微博来说,主要有三种形式的缓存:IDs,content,page。IDs包括各种关系的ID列表,如用户的粉丝、关注的对象、发表的新鲜事等,这些可以缓存在Redis的set或list结构中;content包括各ID的具体信息及内容,如新鲜事的正文、用户的详细信息等,这些可以缓存在Redis的string或ha 阅读全文

缓存策略

2013-02-27 09:50 by 折翼的鸟, 391 阅读, 0 推荐, 收藏, 编辑
摘要:1.全缓存很多的时候,在大量数据展示的过程中,我们总是喜欢分页展示,那个,如何设计这个分页的。当然,我们完全可以一页页的去数据库中获取相应的数据,但是很多的时候,我们不是这样做的,例如,每页数据有20条,我们可能会实现预加载100条数据在缓存中,每次展示将一页的数据进行展示。下面,就开始说说这个“全缓存”。接着上面的分页的例子,我们预先取来100条,然后用户就不断的翻页,此时,如果用户翻到了第6页,或者后面,此时,我们没有缓存后面的数据,此时,我们就开始再次去获取100条数据,那么此时,在缓存中就有了200条,并且是从1到10页的。以此类推,我将之定义为“全缓存“,因为最后的结果将会缓存用户查 阅读全文

鼠标移出DIV层时,触发onMouseOut事件

2013-01-09 17:57 by 折翼的鸟, 12001 阅读, 1 推荐, 收藏, 编辑
摘要:话说有一个DIV元素,其内部有一个IMG元素和SPAN元素,不用理会这两个内部元素怎么布局,这不是我要讨论的重点。为了实现一些特殊的效果,我需要利用TD的onmouseover和onmouseout事件,测试时就会发现如下的状况:当鼠标移入DIV内部时,onmouseover事件被触发;接着再鼠标移动到DIV内部的IMG或者SPAN元素之上,我们肯定不会认为这时鼠标已经移到了DIV的外边,但奇怪的是onmouseout事件触发了,而且紧接着onmouseover事件也马上被触发了。这可不是我想要的,那么怎么来“屏蔽”内部元素给外层元素带来的Javascr 阅读全文

error while loading shared libraries的解決方法

2012-12-18 12:14 by 折翼的鸟, 187 阅读, 0 推荐, 收藏, 编辑
摘要:在linux下运行程序时,发现了error while loading shared libraries这种错误,一时间不知道解决办法,在网上搜索,终于解决了:./tests: error while loading shared libraries: xxx.so.0:cannot open shared object file: No such file or directory出现这类错误表示,系统不知道xxx.so放在哪个目录下,这时候就要在/etc/ld.so.conf中加入xxx.so所在的目录。一般而言,有很多的so会存放在/usr/local/lib这个目录底下,去这个目录底下 阅读全文

mysql5.5编译安装及配置

2012-11-30 17:25 by 折翼的鸟, 194 阅读, 0 推荐, 收藏, 编辑
摘要:环境(centos5 64)安装所需要系统库相关库文件gcc gcc-c gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*yum -y install gcc gcc-c autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel 阅读全文

阿里云Linux服务器挂载硬盘分区

2012-11-30 16:45 by 折翼的鸟, 576 阅读, 0 推荐, 收藏, 编辑
摘要:查看所有硬盘与分区fdisk -l运行命令fdisk /dev/xvdb根据提示,依次输入np1 (数字一 不是 L)回车回车w提示 Syncing disks.时,表示已成功完成分区格式化分区mkfs.ext3 /dev/xvdb1建立挂载目录:mkdir /alidata挂载分区 :mount /dev/xvdb1 /alidata使用开机自动挂载:vi /etc/fstab写入/dev/xvdb1 /alidata defaults ext3 defaults 0 0 阅读全文

windows7下安装zend studio5.5

2012-11-29 15:50 by 折翼的鸟, 168 阅读, 0 推荐, 收藏, 编辑
摘要:解决办法(步骤):01、下载并安装最新版本的 JRE for Windows:http://java.com/en/download/manual.jsp02、使用WINRAR解压 Zend Studio 5.5.1.exe03、 进入解压后的文件夹 Zend Studio 5.5.1\Windows(下面简称A文件夹) ,将resource目录下的jre文件夹重命名为jre.back(或其他名称都可)04、复制 C:\Program Files (x86)\Java\jre6到第三步中的目录,并将jre6重命名为jre05、执行安装 A文件夹下的 Zend Studio 5.5.1.exe0 阅读全文

Mysql group by 排序问题

2012-11-06 15:34 by 折翼的鸟, 744 阅读, 1 推荐, 收藏, 编辑
摘要:类如 有一个 帖子的回复表,posts( id , tid , subject , message , dateline ) ,id 为 自动增长字段, tid为该回复的主题帖子的id(外键关联), subject 为回复标题, message 为回复内容, dateline 为回复时间,用UNIX 时间戳表示,现在要求 选出 前十个来自不同主题的最新回复1 SELECT * FROM posts GROUP BY tid LIMIT 10这样一个sql语句选出来的并非你想要的 最新的回复,而是最早的回复,实际上是某篇主题的第一条回复记录!也就是说 GROUP BY 语句没有排序,那么怎么.. 阅读全文

PHP5中interface 和 abstract class 的区别

2012-10-17 17:40 by 折翼的鸟, 436 阅读, 0 推荐, 收藏, 编辑
摘要:什么是 abstract classPHP 5 引入抽象类和方法。抽象类不能被实例化。任何类只要包含有抽象方法(即使只有一个抽象方法)就必须也被定义为抽象。定义为抽象的方法只需要简单的声明而不用实现。从抽象类继承的时候,所有父类中标记为抽象方法的声明都必须在子类中定义;此外,这些方法还必须用相同的(或更弱的)访问控制。比如,如果抽象方法定义为保护(protected),函数实现必须被定义为protected或者public抽象类例子:abstract class AbstractClass{ // Force Extending class to define this method ... 阅读全文