codeigniter读取数据库的公共配置并全局缓存的实现方案

引言

学习CodeIgniter大概有几天了。从第一天了解后,对CI情有独钟,比较符合我的风格。其实一直以来对框架这块不太敏感。自己长时间的开发,也有一套自己的开发风格和习惯。但是这年头,你说你不会框架,你都不好意思说你是做开发的。所以就选择一个框架来弥补这个缺点了。去年也接触过thinkPHP,但是对于分组这块,始终感觉理解和掌握不到位,由于时间关系,也就没有深入下去。这次也是因为在国庆节前有位客户要求用框架开发。所以,也到了不得不掌握一门框架的地步了。于是国庆期间,在家偶尔看了一下官方文档,甚是喜欢。这不,为了一展身手,决定将以前的一个项目转为CI框架模式。一切顺利,只是有一个问题让我一时无法解决,于是在“CI中国论坛”上求助,经过百度与GOOGLE的帮助,终于解决了这个心病,于是在此做个记录,以做纪念。

Read More

php锁定文本框内容的方法(disabled/readonly的区别)

有时候我们希望表单中的文本框是只读的,让用户不能修改其中的信息,如<input type="text" name="zg" value="中国"> 的内容,”中国”两个字不可以修改,有三种方法。

1
2
3
4
5
6
7
8
9
方法1: onfocus=this.blur()
<input type="text" name="zg" value="中国" onfocus=this.blur()>

方法2:readonly
<input type="text" name="zg" value="中国" readonly>
<input type="text" name="zg" value="中国" readonly="true">

方法3: disabled
<input type="text" name="zg" value="中国" disabled>

特别说明:使用disabled属性的话,那么提交表单时无法获得该标签的数据,即提交表单后,$zg的值为空!

Read More

linux下memcached的启动/结束的方式

当前项目中,linux下memcached的启动/结束的方式

默认情况下memcached安装到/usr/local/bin下。

进入安装目录,启动memcached:/usr/local/memcached/bin/memcached -d -c 10240 -m 1024 -u root
获取运行状态:echo stats | nc localhost 11211(可以查看出pid) 或使用ps -ef|grep memcached
停止memcached:kill -9 pid (-9表示强制杀死,pid 为进程的进程标识符)
-d 选项是启动一个守护进程,
-m 是分配给Memcache使用的内存数量,单位是MB,这里是1024MB,默认是64MB
-u 是运行Memcache的用户,这里是root
-l 是监听的服务器IP地址,默认应该是本机
-p 是设置Memcache监听的端口,默认是11211,最好是1024以上的端口
-c 选项是最大运行的并发连接数,默认是1024,这里设置了10240,按照你服务器的负载量来设定
-P 是设置保存Memcache的pid文件位置
-h 打印帮助信息
-v 输出警告和错误信息
-vv 打印客户端的请求和返回信息

Read More

Windows下MemCache多端口安装配置

Windows下MemCache环境安装配置的文章很多,但大部分都是用的默认端口11211,如何修改默认端口、如何在一台服务器上配置多个MemCache端口?这正式本文要解决的问题。

1.从微软官网下载rktools.exe (安装只为得到两个exe程序,可以先检查步骤2中的程序文件是否存在。如果不存在,也可以从其它服务器上复制相应的文件到相应目录下。可以直接跳过此步),然后进行安装。
下载地址:http://www.microsoft.com/downloads/details.aspx?FamilyID=9D467A69-57FF-4AE7-96EE-B18C4790CFFD&displaylang=en

Read More

php一致性hash性能测试(flexihash/memcache/memcached)

一致性hash的使用在PHP中有三种选择分别是原生的memcache扩展,memcached扩展,还有一个是网上比较流行的flexihash类。
最近有项目需要使用flexihash类操作memcacheq,想看看,单纯使用php的flexihash一致性hash,分布均匀程度,性能差多少。

php一致性hash类下载地址:http://code.google.com/p/flexihash/

测试环境:I7 四核 LINUX FEDORA 使用linux英文词库作为测试用例 memcached开启4个线程

测试结果:

其中,单节点指的是,在只有一个节点工作情况下的,测试结果。

Read More