September 26, 2010
PHP操作MongoDB
"一、MongoDB简介\nMongoDB (名称来自”humongous”) 是一个可扩展的、高性能、开源、模式自由、面向文档的数据库,集文档数据库、键值对存储和关系型数据库的优点于一身。官方站点: http://www.mongodb.org/,MongoDB特点:\n面向文档存储(类JSON数据模式简单而强大) 动态查询 全索引支持,扩展到内部对象和内嵌数组 查询记录分析 快速,就地更新 高效存储二进制大对象 (比如照片和视频) 复制和故障切换支持 Auto-Sharding自动分片支持云级扩展性 MapReduce 支持复杂聚合 商业支持,培训和咨询 二、安装MongoDB\n安装MongoDB非常的简单,仅需下载压缩包解压运行命令即可,下载地址: http://www.mongodb.org/downloads,本文为windows平台,MongoDB运行命令:\u0026gt;bin/mongod。提示:首先要创建存储数据的文件夹,MongoDB 默认存储数据目录为 /data/db/ (或者 c:datadb),当然你也可以修改成不同目录,只需要指定 –dbpath 参数,eg: …"
September 26, 2010
NoSQL数据库探讨之一 - 为什么要用非关系数据库?
"随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,例如:\n1、High performance – 对数据库高并发读写的需求 web2.0网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库应付上万次SQL查询还勉强顶得住,但是应付上万次SQL写数据请求,硬盘IO就已经无法承受了。其实对于普通的BBS网站,往往也存在对高并发写请求的需求,例如像JavaEye网站的实时统计在线用户状态,记录热门帖子的点击次数,投票计数等,因此这是一个相当普遍的需求。\n2、Huge Storage – 对海量数据的高效率存储和访问的需求 类似Facebook,twitter,Friendfeed这样的SNS网站,每天用户产生海量的用户动态,以Friendfeed为例,一个月就达到了2.5亿条用户 …"
September 26, 2010
MongoDB 介绍,安装
"这是MongoDB的系列学习笔记的第一篇,主要介绍什么是非关系型数据库MongoDB,如何下载,去哪儿下载,又该怎么正确的安装等一系列问题。\n一、前言 最近开始学习非关系型数据库MongoDB,却在博客园上找不到比较系统的教程,很多资料都要去查阅英文网站,效率比较低下。本人不才,借着自学的机会把心得体会都记录下来,方便感兴趣的童鞋分享讨论。部分资源出自其他博客,旨将零散知识点集中到一起,如果有侵犯您的权利,请联系[email protected]。大部分内容均系原创,欢迎大家转载分享,但转载的同时别忘了注明作者和原文链接哦。\n二、MongoDB简介 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。Mongo的官方网站地址是:http://www.mongodb.org/,读者可以在此获得更详细的信息。 小插曲:什么是NoSql?\nNoSql,全称是 Not Only Sql,指的是非关系型的数据库。下一代数据库主要解决几个要点:非关系型的、分布式的、开源的、 …"
September 25, 2010
Linux下使用screen工作How-to
"通过ssh在Linux终端下工作,有一个很烦的事情就是,如果需要执行一个长时间的命令(例如拷贝一个大文件,或者做DDL)时,如果终端意外断开(网络或者别的原因),一般命令就会终止,当然你可以使用nohup命令,这里提供另一个办法:使用screen。\n一般,我们创建一个screen会话,然后连接会话并在会话下工作,这时候,我们可以随时挂起会话,去做别的事情,而且这个挂起的会话会一直在后台执行。而后又可以重新连接会话。下面是一个简单的How-to:\nHow-to 1.1 创建一个screen会话\nscreen -dmS supu\n该命令,创建一个名为supu的会话,当时并不立刻进入会话。\n1.2 连入会话\nscreen -r supu\n连入会话后,就可以做任何想做的工作了。\n1.3 挂起该终端\n如果你在会话中,做了某个需要等很久的操作,或者你需要离开一段时间,这时就需要执行挂起操作了:\n(ctrl+a) + D 先按下Ctr+a然后按D键(screen捕获ctrl+a,后面跟一个命令键D,可以通过ctrl+a ?查看更多)\n1.4 其他相关\n而后,可以重新使用-r参数回到会话;在会话中, …"
September 23, 2010
Suhosin介绍-用Suhosin加强PHP脚本语言安全性
"PHP是一种非常流行之网站脚本语言,但是它本身所固有之安全性是非常薄弱。本文讲述了PHP增强计划(Hardened-PHP project)和新之Suhosi计划,Suhosin提供了增强之PHP之安全配置。\nPHP是带有争论地但又是最流行之一种网站脚本语言。它之所以流行,是因为它低廉之价格,然而,这低廉之价格导致用PHP写之网站应用程序越来越多之同时也越来越多之展现出PHP本身在安全上之脆弱,这种安全特性显示出PHP是极不可靠,不过同时对这个脚本语言本身而言它又是非常灵活之,使用它就能很容易之实现代码,不过这些代码都是臃肿之且不安全之,虽然是这样它还是一直都拥有很多之使用者。你可以根据实际情况来假设,一次又一次,各种应用软件都体现了这种脆弱性:容易受到SQL注入、跨站脚本、任意执行指令等等之攻击。\n因为象safe_mode和open_basedir这样内置之PHP安全措施将被忽略,PHP增强计划创建之PHP更具有安全性,同时也对PHP进行校验检查。最初,这些是由增强之PHP补丁完成之,这些补丁需要修补并重新编译PHP自身。最近,PHP增强计划发布了一个名为Suhosin之新工程。 …"
September 23, 2010
ImageMagick及PHP的imagick扩展的安装及配置
"在看在 ” 基于CentOS 5.5 搭建nginx +php +php-fpm+mysql高性能php平台“的1.7的时候,发现以下两个包,\nwget http://blog.s135.com/soft/linux/nginx_php/imagick/ImageMagick.tar.gz wget http://pecl.php.net/get/imagick-2.3.0.tgz\n不太清楚两个包的区别是什么的,在网上查了一下,注意区别如下:\nimagick 是一个 PHP 的扩展,用 ImageMagick 提供的API来进行图片的创建与修改,不过这些操作已经包装到扩展imagick中去了,最终调用的是ImageMagick提供的API.\nImageMagick是一套软件系列,主要用于图片的创建、编辑以及转换等,详细的解释见ImageMagick的官方网站 http://www.imagemagick.org/,ImageMagick与GD的性能要高很多,如果是在处理大量的图片时更加能体现ImageMagick的性能。\n英文原文介绍如下:\nimagick is a native …"
September 21, 2010
JS中onpropertychange事件和onchange事件区别
"当一个HTML元素的属性用js改变的时候,都能通过 onpropertychange来捕获。例如一个 对象的value属性被页面的脚本修改的时候,onchange无法捕获到,而onpropertychange却能够捕获。 也就是说:onpropertychange事件在用键盘每改变一下文本框的值或用js改变其值便会触发一下,而onchange只有在用键盘改变其值,然后在失去焦点(onblur)后才触发,用js改变其值不能触发!onpropertychange和onchange都不管文本框中的实际值有没有变,只要有改的相应操作就可能触发。有时当上面两时间都不能满足需求时,可以考虑只用onblur。\n还有一点要注意到,当onblur和onchange事件一起用时,onblur会出问题。。。。详见如下\n测试页面:\n通过js改变文本框中的值后触发的事件:onpropertychange事件\n测试onpropertychange事件和onchange事件一起用时:\n测试结果:onpropertychange事件在用键盘每改变一下文本框的值或用js改变其值便会触发一下,而onchange只有在用键 …"
September 20, 2010
在Centos中yum安装和卸载软件的使用方法
"Yum(全 称为 Yellow dog Updater, Modified)是一个在Fedora,Redhat,CentOS中的Shell前端软件包办理器.基於RPM包办理,可以或许从指定的服务器AUTO下载 RPM包而且安装,可以AUTO处理依赖性关系,而且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装.\n安装一个软件时\nyum -y install httpd\n安装多个相类似的软件时\nyum -y install httpd*\n安装多个非类似软件时\nyum -y install httpd php php-gd mysql\n卸载一个软件时\nyum -y remove httpd\n卸载多个相类似的软件\nyum -y remove httpd*\n卸载多个非类似软件时\nyum -y remove httpd php php-gd mysql 别的还有一个非常棒的用法\n假如我要执行iostat这个命令来查看CPU与 存储设备状态,可是执行却发现没有这个命令\n于是执行yum install iostat,结果说找不到该软件,使用下面的措施可以解决\nyum search iostat就能 …"
September 20, 2010
WML标签速查手册(转)比较方便便于速查
"结构相关标签****语法及属性 \u0026lt; wml \u0026gt; lang” \u0026gt;\ncontent\n\u0026lt; card \u0026gt; name”\ntitle=” \u0026lt;strong\u0026gt;\u0026lt;em\u0026gt;label\u0026lt;/em\u0026gt;\u0026lt;/strong\u0026gt;”\nnewcontext=” \u0026lt;strong\u0026gt;\u0026lt;em\u0026gt;boolean\u0026lt;/em\u0026gt;\u0026lt;/strong\u0026gt;”\nstyle=” \u0026lt;strong\u0026gt;\u0026lt;em\u0026gt;style\u0026lt;/em\u0026gt;\u0026lt;/strong\u0026gt;”\nonenterforward=” \u0026lt;strong\u0026gt;\u0026lt;em\u0026gt;url\u0026lt;/em\u0026gt;\u0026lt;/strong\u0026gt;”\nonenterbackward=” \u0026lt;strong\u0026gt;\u0026lt;em\u0026gt;url\u0026lt;/em\u0026gt;\u0026lt;/strong\u0026gt;”\nontimer=” \u0026lt;strong\u0026gt;\u0026lt;em\u0026gt;url\u0026lt;/em\u0026gt;\u0026lt;/strong\u0026gt;” \u0026gt; …"
September 19, 2010
How to install PHP-fpm + Nginx on CentOS 5.3
"php-fpm文档中文翻译[转]:http://blog.haohtml.com/archives/9294\nIn this tutorial i will try to install php-fpm with nginx on centos 5.3. But first:\nWhat is PHP-FPM ? PHP-FPM is a patch for PHP4/5 to greatly improve PHP’s FastCGI SAPI capabilities and administration. This means that you don’t install php through your distribution’s package manager, but rather download the package from the PHP-website, and the patch from another site. You patch up the sourcecode, compile things, and get it started."