专注业务连续性支持与数据保护
2008-04-10现代诗

等待依然已关闭评论

等待依然

三月的柳绿了的时候
三月的杏花也红了
你的许诺是这样的苍白
在我的等待中它们失去了色彩

青春是娇柔的叶子
你却一再的让它们在冷冻的空气中
摇摆
它们有了季节的绿
却因你迟迟不来的音信
它们的渴望无法被释怀
所以 绿叶 残败

华发早生的原因
有谁可以说得清
有多少的眼泪可以被吹散
在有风的日子里
有多少的心事可以被搁置
在月亮的清辉里

千帆过尽了
依然不是
也不用凭栏
在斜阳的深处
有独立的汉家陵阙

2008-04-10现代诗

这一切只为你已关闭评论

这一切只为你

点燃生命
梦随着爱飞翔

随着那夜的月光来到天边
换成礼花的颜色

星蕊漫步银河
不知哪儿是方向
烟花袭来
一声爆破
坠到死海
失去火的滋味

一缕青烟
无目的的等待
永远不知散去
飘到云霄
使大地得到震撼

2008-04-10现代诗

撒哈拉对廊桥的渴望已关闭评论

撒哈拉对廊桥的渴望

从一扇长长的窗口开始,一个女人走进秋天
吹散的长发与风无关。山一直在倾听着海啸

男人习惯用佛的预言拉长时间的距离和窃喜
撒哈拉对廊桥的渴望羽化成五百年前的擦肩

一片简单的叶子 轻易就将悲欢刻入了筋脉
精致的月光从不同的角度收集了慌乱的温柔

落魄诗人以聊斋的方式染红了江边的青草地
满天飞舞的柳絮和女人交换了童年的羊角辫

有没有一泓清泉在山的那边静静编织蓑衣?
有没有一枝短笛轻轻吹起了马背上的歌谣?

给你一个借口,你会纵身跳进我无边的眼神
给你一根火柴,你会和今夜的天空一起燃烧

偶尔的一阵风无意间碰醒了铁轨边的老槐树
一些洁白的冰棱耐心地收藏起了诗人的痕迹

2008-04-10现代诗

我将牵谁的手,共度一生已关闭评论

我将牵谁的手,共度一生

月光泼下来,覆盖着千年万年的惊叹
开始与结束,这死亡的回归呀
我将牵谁的手一起共度
饶过感情,你始终走在我的面前
在你手指叠出的风韵里
我仅是一只远行之雁,那些
姹紫嫣红的景致,与我无关
在一个很瘦的黄昏,我悟出了
伤心的细节,于是
我读你远去的背影,慌如隔世的梦
爱你,最终无法逃避尘世的捆扰

2008-04-10关注学习

如何使用PHP开发高效的WEB系统已关闭评论

如何使用PHP开发高效的WEB系统

PHP是一个很优秀的工具,它可以简单,也可以复杂。不一样的项目,应该用不一样的PHP。

  小项目 – 简单而直接的PHP

  一般对于一个功能页面在20以下的网站,我们可以用一个很简单的框架结构来写。在这个规模上,我建议是使用比较直接的面向过程编码方法,原因很简单,没有必要把class文件弄的N 多,结果controller里边就一个new就完了。当然,需求频繁变化的项目除外。

  在这个级别上,php优点表现的很明显:快速开发,一目了然。缺点同时也被隐藏得很好。

  中型项目 – 结构优美的OO化的PHP

  对于一个中型项目,我建议使用一个良好设计的框架来做,这个框架可以是基于MVC模型,封装了众多底层操作的,当然,一定要有一个好的最好是透明的cache机制,这样,我们为了适应变化而加入的OO机制可以运行得更快更好。

  在这个级别上。php的缺点开始凸现,像对OO支持的不完整(这个PHP5有很大改进),只能单线程模式。另外一些外围工具开始出现缺乏支持,像PHP没有好的重构工具,没有好的集成到IDE中的单元测试工具。优点当然还是原来的快速开发,广泛的可用的开源资源。

  大型项目 – 扩展、优化后的PHP

  这里的大型项目,简单的指分布式项目,就是说,你的程序需要被部署在N台服务器上了。在这个层级上,PHP比起j2ee的确缺乏很多支持。我曾和shadow在735上详细讨论过PHP要在大型系统上应用需要解决的一些问题,当然这些问题不光是PHP这个语言的问题,也包括了周边开发的问题:

  1 PHP的页面代码共享,PHP的源代码被载入内存一次以后,就在其中保留 – 这个用APC和Zend的优化器可以搞定。

  2 PHP页面之间的数据对象共享,a.php和b.php之间可以共享一个数据对象,比如数组,这个现在可以用序列化来作,但是会有文件io,这块可以用共享内存或者memcached来处理。

  3 PHP的数据库连接池,因为在多前端的情况下,PHP控制不住对数据库的连接,所以需要在数据库前边去作一个连接池,类似于sqlrelay的东西。另外数据缓存也是很重要的,大压力开发有一个tip,就是能不动数据库就不要动数据库。

  4 PHP的前端cache系统。一个透明的可控制的cache机制,确保网站的页面以最少次数查询数据库。这个有很多实现,但是没有找到特别好的。

  5 一个PHP应用,成功的解决调这几个问题以后,应付稍微大一点的压力是没有什么问题的。

  在这个级别上,重要的是,把PHP java C++ python之类融合起来,使其成为一个高效系统。我们可以用memcached来做分布式内存管理,可以用Lucene 来作全文检索,用ejb 容器来放一些业务逻辑组件,PHP则作为前端和系统的胶水,快速而灵活的把这些粘合起来

2008-04-10关注学习

一种追踪数据库行级修改新技术已关闭评论

一种追踪数据库行级修改新技术

Imperva(专注于数据库及应用系统安全的专业技术公司)已经给SecureSphere(数据库安全网关,Imperva公司产品)增加了一项新的技术,这项技术可以追踪到数据库中哪些敏感字段值受到修改。

  Imperva已经将这个新功能加入到它的数据库监控产品中,能够让用户追踪到敏感字段值的修改,这种追踪的精确度能达到行级。

  该公司将此技术称为Track Value Change,作为SecureSphere数据库安全网关软件的一部分。旨在追踪数据库中字段值的修改,公司官员称此产品可成为所谓“内部威胁”的解决方案,还能为那些指望通过遵守如萨班斯•奥克斯利法案(Sarbanes-Oxley Act)来解决财务安全问题的公司排忧解难。

  公司官员说未经授权对数据库进行修改的用户,将会面临长期和全面的调查,以此来揭示未授权者对哪些数据做了修改,并且还能恢复到原来的值。

  公司官员还说使用Track Value Change技术,SecureSphere能够监控和审核特定记录的数值,或者一张数据库表中的某些行。另外,SecureSphere还能让组织机构进行一些设置,当一些字段值的修改违反了先前制定的规则或者界限时,会生成一个警告。举个例子,SecureSphere能够识别一些潜在的欺骗行为,如信用卡额度大幅增加,销售发票过度折扣,产品库存量大幅增加等。

  Imperva公司在企业数据库审查领域,和其它多家公司竞争,包括Application Security、Guardian、Lumigent Technologies 和Tizor System。

  和基于触发器的方法不同,SecureSphere使用重复运行记录来监控修改操作,并且识别执行该操作的用户。

  Imperva公司市场战略高级经理Mark Kraynak说:“使用数据库触发器的方法的产品需要维护,并不是一蹴而就的,需要有人工的介入。而SecureSphere追踪字段值的修改的方法更加智能化,不需要人工干预而达到一个很好的效果。因此,使用数据库触发器来追踪字段值的修改,就像让狐狸来守卫鸡舍,因为数据库管理员可以介入进行操作,他们能创建和修改触发器,达不到实际的安全效果,而SecureSphere却能实现职权分离。

  另外,不像基于数据库触发器的方法,需要对数据库进行侵入式修改。SecureSphere的方法不需要改变数据库。为了实现追踪字段值的修改,用户可以进入SecureSphere规则管理界面,使用下拉菜单来设置允许的规则,并且规定数据库字段值变化的范围。

  Kraynak说:“SecureSphere已经预定义了各种模板,用户可以应付各种不同的操作,包括插入、删除和修改操作,实现追踪数据库字段值的修改,并且对于容易违反规则的修改给出警告提示”

  Imperva公司的简介

  Imperva公司总部位于美国硅谷,是一家专注于数据库及应用系统安全的专业技术公司。其产品和技术填补了行业的巨大空白——即,保障企业运营系统、管理和业务系统的核心的数据库及相关应用系统。目前Imperva已服务的客户涵盖各大行业的顶级企业,如金融业的Visa、RBS,电信业的英国电信,IT产业的惠普、Oracle,电子商务领域的Scottrade,等等。

  Imperva SecureSphere 数据库安全网关

  通过实时的设备监控和数据库审核,Imperva公司的SecureSphere可以有效防止攻击,所有违反安全特征的数据库读写都将被视为未被授权的行为。 在对数据库的运行、稳定性和管理方面没有丝毫影响的情况下,SecureSphere可以实现所有的功能。在监控数据库读写是否违反安全的同时,SecureSphere可以识别哪些是正常的数据库读写、哪些是可疑的行为。对于那些需要遵守相应管理规定的企业来说,SecureSphere可以支持数据库活动日志功能,并提供可定制安全报告的功能。

2008-04-10关注学习

ECC已关闭评论

ECC

ECC是“Error Checking and Correcting”的简写,中文名称是“错误检查和纠正”。ECC是一种能够实现“错误检查和纠正”的技术,ECC内存就是应用了这种技术的内存,一般多应用在服务器及图形工作站上,这将使整个电脑系统在工作时更趋于安全稳定。

要了解ECC技术,就不能不提到Parity(奇偶校验)。在ECC技术出现之前,内存中应用最多的是另外一种技术,就是Parity(奇偶校验)。我们知道,在数字电路中,最小的数据单位就是叫“比特(bit)”,也叫数据“位”,“比特”也是内存中的最小单位,它是通过“1”和“0”来表示数据高、低电平信号的。在数字电路中8个连续的比特是一个字节(byte),在内存中不带“奇偶校验”的内存中的每个字节只有8位,若它的某一位存储出了错误,就会使其中存储的相应数据发生改变而导致应用程序发生错误。而带有“奇偶校验”的内存在每一字节(8位)外又额外增加了一位用来进行错误检测。比如一个字节中存储了某一数值(1、0、1、0、1、0、1、1),把这每一位相加起来(1+0+1+0+1+0+1+1=5)。若其结果是奇数,对于偶校验,校验位就定义为1,反之则为0;对于奇校验,则相反。当CPU返回读取存储的数据时,它会再次相加前8位中存储的数据,计算结果是否与校验位相一致。当CPU发现二者不同时就作出视图纠正这些错误,但Parity有个缺点,当内存查到某个数据位有错误时,却并不一定能确定在哪一个位,也就不一定能修正错误,所以带有奇偶校验的内存的主要功能仅仅是“发现错误”,并能纠正部分简单的错误。

通过上面的分析我们知道Parity内存是通过在原来数据位的基础上增加一个数据位来检查当前8位数据的正确性,但随着数据位的增加Parity用来检验的数据位也成倍增加,就是说当数据位为16位时它需要增加2位用于检查,当数据位为32位时则需增加4位,依此类推。特别是当数据量非常大时,数据出错的几率也就越大,对于只能纠正简单错误的奇偶检验的方法就显得力不从心了,正是基于这样一种情况,一种新的内存技术应允而生了,这就是ECC(错误检查和纠正),这种技术也是在原来的数据位上外加校验位来实现的。不同的是两者增加的方法不一样,这也就导致了两者的主要功能不太一样。它与Parity不同的是如果数据位是8位,则需要增加5位来进行ECC错误检查和纠正,数据位每增加一倍,ECC只增加一位检验位,也就是说当数据位为16位时ECC位为6位,32位时ECC位为7位,数据位为64位时ECC位为8位,依此类推,数据位每增加一倍,ECC位只增加一位。总之,在内存中ECC能够容许错误,并可以将错误更正,使系统得以持续正常的操作,不致因错误而中断,且ECC具有自动更正的能力,可以将Parity无法检查出来的错误位查出并将错误修正。