April 6, 2011
configure: error: newly created file is older than distributed files!
"在linux下安装软件包的时候,有时候提示\nconfigure: error: newly created file is older than distributed files! Check your system clock\n出现此编译错误,请检查你的系统时间是否设置有误。。。\n查看硬件日期时间\nhwclock -show\nlinux是每隔一段时间将系统时间写入 硬件bois的 如果刚设置完了就关机,开机后时间还是等于没有设置\n# date -s 991128\nSun Nov 28 00:00:00 CST 1999\n实例:设置时间伟2008年8月8号12:00\n# date -s “2008-08-08 12:00:00″\n修改完后,记得输入:\nclock -w\n把系统时间写入CMOS即可"
April 6, 2011
centos编译安装mysql5.5.9
"环境: centos 5.5 x86_64 mysqll5.5.9\n安装开发工具\nyum groupinstall “Development Tools”\n安装依赖包\nyum install ncurses-devel\n编译安装cmake\nwget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz tar xvzf cmake-2.8.4.tar.gz ./configure make make install\n下载\nwget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.9.tar.gz/from/http://mysql.mirror.tw/\n编译安装mysql\ncd mysql5.5.9 rm CMakeCache.txt cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.5.9/ -DMYSQL_DATADIR=/usr/local/mysql5.5.9/data …"
April 5, 2011
安装Imagick扩展时,提示 unable to load imagick.so运行错误的解决办法
"wget ftp://mirror.aarnet.edu.au/pub/imagemagick/ImageMagick-6.5.5-6.tar.gz\ntar zxvf ImageMagick-6.5.5-6.tar.gz\ncd ImageMagick-6.5.5-6\n./configure\nmake\nmake install\ncd ..按照以上方法安装ImageMagick后,有可能会遇到PHP加载imagick.so后运行错误,解决方法是在编译ImageMagick时关掉openmp: –-disable-openmp。如果还不行的话,请更换ImageMagick至低版本,比如:6.5.4-2。"
April 5, 2011
Memcache基础教程
"Memcache是什么 Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。 它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这些HashTable。 Memcache官方网站:http://www.danga.com/memcached,更多详细的信息可以来这里了解 .\n为什么会有Memcache和memcached两种名称? 其实Memcache是这个项目的名称,而memcached是它服务器端的主程序文件名,知道我的意思了把~~~~。一个是项目名称,一个是主程序文件名,在网上看到了很多人不明白,于是混用了。\nMemcache的安装 分为两个过程:memcache服务器端的安装和memcached客户端的安装。 所谓服务器端的安装就是在服务器(一般都是linux系统)上安装Memcache实现数据的存储 所谓客户端的安装就是指php(或者其他程序,Memcache还有其他不错 …"
April 5, 2011
Linux环境下PCRE库的使用
"今天下载了PCRE的正则表达式库,应用在Linux环境下的C语言编程中。\n调用方法:\n1.下载PCRE库:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/,版本是7.8;\n2.解压后执行configure,而后make,make install,可配置后动态链接库;\n3.写了个测试的例子:\n#include\n#include\nint main()\n{\npcre *re;\nconst char *error;\nint erroffset;\nint rc;\nint ovector[30];\nre = pcre_compile(“some”, 0, \u0026amp;error, \u0026amp;erroffset, NULL);\nrc = pcre_exec(re, NULL, “some string”, 11, 0, 0, ovector, 30);\nprintf(“%d\\n”, rc);\nreturn 0;\n}\n4.gcc -o test test.c -lpcre\n5../test\n6.参考文档:\n上述有很多细节要搞清楚,还需要仔细研 …"
April 2, 2011
高性能WEB开发系列
"准备写一系列关于高性能WEB开发的日记,主要是跟前端技术相关的(html,http,js,css等),将自己了解的一些知识做1个总结和记录并分享,希\n望大家能喜欢,也喜欢自己能坚持写下去。当然因个人技术水平有限,写作能力更是非常差,所以如果有什么地方写得不好的,请大家都指点指点。\n1、 HTTP服务器.\n2、性能测试工具推荐\n3、 图片篇.\n4、 如何加载JS,JS应该放在什么位置.\n5、 为什么要减少请求数,如何减少请求数.\n6、 减少请求,响应的数据量.\n7、 JS、CSS的合并、压缩、缓存管理\n8、 页面呈现、重绘、回流。\n9、 该如何加载google-analytics(或其他第三方)的JS.\n10、 疯狂的HTML压缩\n11、 flush让页面分块,逐步呈现\n12、 了解CSS的查找匹配原理,让CSS更简洁、高效\n[作者]:BearRui(AK-47)"
April 2, 2011
DynaTrace Ajax Edition:IE浏览器性能分析工具
"DynaTrace AJAX是一个运行在IE浏览器下的免费页面性能分析工具,它可以支持主流的IE6、IE7、IE8浏览器。这款工具正是DynaTrace为进入前端性能分析领域而发布的。您可以利用它来分析页面渲染时间、DOM方法执行时间,甚至可以看到JS代码的解析时间。连JQuery的创始者 John Resig 也鼎力推荐了一把。\n从John Resig的 Deep Tracing of Internet Explorer 了解到了这款刚发布的免费的前端性能分析工具,John Resig对其评价甚高,John Resig对其评价到:“我一般不随便写关于性能分析工具的东西,坦率地说,我感觉它们绝大部分都比较烂,根本不能提供任何有价值的信息和分析结果。不过 dynaTrac提供了一些我以前在任何其他工具上都没见过的东西。”\nAjax的本事真不是盖的!那么,它到底有啥特别之处呢?“这个工具可以跟踪JavaScript从执行开始,经过本地的XMLHttpRequest、发送网络请求,再到请求返回的全过程。”\n更多的我这里就不多说了,权威人士们都说过了,这东西我也刚上手没多久,还谈不上有多深入的 …"
April 1, 2011
深入理解ob_flush和flush的区别
"ob_flush/flush在手册中的描述, 都是刷新输出缓冲区, 并且还需要配套使用, 所以会导致很多人迷惑…\n其实, 他们俩的操作对象不同, 有些情况下, flush根本不做什么事情..\nob_*系列函数, 是操作PHP本身的输出缓冲区.所以, ob_flush是刷新PHP自身的缓冲区.\n而flush, 严格来讲, 这个只有在PHP做为apache的Module(handler或者filter)安装的时候, 才有实际作用. 它是刷新WebServer(可以认为特指apache)的缓冲区.\n在apache module的sapi下, flush会通过调用sapi_module的flush成员函数指针, 间接的调用apache的api: ap_rflush刷新apache的输出缓冲区, 当然手册中也说了, 有一些apache的其他模块, 可能会改变这个动作的结果..\n有些Apache的模块,比如mod_gzip,可能自己进行输出缓存,这将导致flush()函数产生的结果不会立即被发送到客户端浏览器。\n甚至浏览器也会在显示之前,缓存接收到的内容。例如 Netscape浏览器会在接受到换行 …"
April 1, 2011
php中ob_start函数 积累
"确实自己写不出来,只能看看别人的经验总结。\nPHP的ob_start();用法\n用PHP的ob_start();控制您的浏览器cache\nOutput Control 函数可以让你自由控制脚本中数据的输出。它非常地有用,特别是对于:当你想在数据已经输出后,再输出文件头的情况。输出控制函数不对使用 header() 或 setcookie(), 发送的文件头信息产生影响,只对那些类似于 echo() 和 PHP 代码的数据块有作用。 我们先举一个简单的例子,让大家对Output Control有一个大致的印象:\nExample 1.\n程序代码:\nob_start(); //打开缓冲区 echo “Hellon”; //输出 header(“location:”); //把浏览器重定向到 ob_end_flush();//输出全部内容到浏览器 ?\u0026gt;\n所有对header()函数有了解的人都知道,这个函数会发送一段文件头给浏览器,但是如果在使用这个函数之前已经有了任何输出(包括空输出,比如空格,回车和换行)就会提示出错。如果我们去掉第一行的ob_start(),再执行此程序,我们会发现得 …"
April 1, 2011
web高性能开发系列随笔
"在BlogJava里写了一些关于高性能WEB开发的随笔,因为都是跟前端技术相关(html,http,js,css等),所以也贴到博客园来,吸收下人气。\n1、 HTTP服务器.\n2、 性能测试工具推荐\n3、 图片篇.\n4、 如何加载JS,JS应该放在什么位置.\n5、 为什么要减少请求数,如何减少请求数.\n6、 减少请求,响应的数据量.\n7、 JS、CSS的合并、压缩、缓存管理\n8、 页面呈现、重绘、回流。\n9、 该如何加载google-analytics(或其他第三方)的JS.\n10、 疯狂的HTML压缩.\n11、 flush让页面分块,逐步呈现\n12、 了解CSS的查找匹配原理,让CSS更简洁、高效\n[作者]:BearRui(AK-47)"