网站建设的26条定律
转自http://bbs.51.la
1.250定律
拉德认为:每一位顾客身后,大体有250名亲朋好友。如果您赢得了一位顾客的好感,就意味着赢得了250个人的好感;反之,如果你得罪了一名顾客,也就意味着得罪了250 名顾客。在你的网站访客中,一个访客可能可以带来一群访客,任何网站都有起步和发展的过程,这个过程中此定律尤其重要。
2.达维多定律
达维多认为,一个企业要想在市场上总是占据主导地位,那么就要做到第一个开发出新产品,又第一个淘汰自己的老产品。国内网站跟风太严重,比如前段时间的格子网,乞讨网,博客网,一个成功了,大家一拥而上。但实际效果是,第一个出名的往往最成功,所以在网站的定位上,要动自己的脑筋,不是去捡人家剩下的客户。同理,买人家出售的数据来建站效果是很糟糕的。
3.木桶定律
水桶定律是指,一只水桶能装多少水,完全取决于它最短的那块木板。这就是说任何一个组织都可能面临的一个共同问题,即构成组织的各个部分往往决定了整个组织的水平。 注意审视自己的网站,是速度最糟糕?美工最糟糕?宣传最糟糕?你首先要做的,不是改进你最强的,而应该是你最薄弱的。
4.马太效应
《新约》中有这样一个故事,一个国王远行前,交给三个仆人每人一锭银子,吩咐他们:“你们去做生意,等我回来时,再来见我。”国王回来时,第一个仆人说: “主人,你交给我们的一锭银子,我已赚了10锭。”于是国王奖励他10座城邑。第二个仆人报告说:“主人,你给我的一锭银子,我已赚了5锭。” 于是国王例奖励了他5座城邑。第三个仆人报告说:“主人,你给我的一锭银子,我一直包在手巾里存着,我怕丢失,一直没有拿出来。”于是国王命令将第三个仆人的一锭银子也赏给第一个仆人,并且说:“凡是少的,就连他所有的也要夺过来。凡是多的,还要给他,叫他多多益善。”这就是马太效应。 在同类网站中,马太效应是很明显的。一个出名的社区,比一个新建的社区,更容易吸引到新客户。启示是,如果你无法把网站做大,那么你要做专。作专之后再做大就更容易。
5.手表定理
手表定理是指一个人有一只表时,可以知道现在是几点钟,而当他同时拥有两只表时却无法确定。
一个网站,你只需要关注你特定的用户群需求。不要在意不相干人的看法。
6.不值得定律
不值得定律:不值得做的事情,就不值得做好 不要过度seo,如果你不是想只做垃圾站。不要把时间浪费在美化再美化页面,优化再优化程序,在你网站能盈利后,这些事情可以交给技术人员完成。
7.彼得原理
劳伦斯.彼得认为:在各种组织中,由于习惯于对在某个等级上称职的人员进行晋升提拔,因而雇员总是趋向于晋升到其不称职的地位。
不要轻易改变自己网站的定位。如博客网想变门户,盛大想做娱乐,大家拭目以待吧。
8.零和游戏原理
当你看到两位对弈者时,你就可以说他们正在玩“零和游戏”。因为在大多数情况下, 总会有一个赢,一个输,如果我们把获胜计算为得1分,而输棋为-1分,那么,这两人得分之和就是:1+(-1)=0 不要把目光一直盯在你的竞争网站上,不要花太多时间抢它的访客。我们把这些时间用来寻找互补的合作网站,挖掘新访客。
9.华盛顿合作规律
华盛顿合作规律说的是: 一个人敷衍了事,两个人互相推诿, 三个人则永无成事之日。
如果你看准一个方向,你自己干,缺人手就招。不要轻易找同伴一起搞网站,否则你会发现,日子似乎越过越快了,事情越做越慢了。
10.邦尼人力定律
一个人一分钟可以挖一个洞,六十个人一秒种却挖不了一个洞。合作是一个问题,如何合作也是一个问题。你需要有计划。
11.牛蛙效应
把一只牛蛙放在开水锅里,牛蛙会很快跳出来;但当你把它放在冷水里,它不会跳出来,然后慢慢加热,起初牛蛙出于懒惰,不会有什么动作,当水温高到它无法忍受的时候,想出来,但已经没有了力气。 如果你是soho,注意关注你的财务。不要等到没钱了再想怎么挣,你会发现那时候挣钱更难。
12.蘑菇管理
蘑菇管理是许多组织对待初出茅庐者的一种管理方法,初学者被置于阴暗的角落(不受重视的部门,或打杂跑腿的工作),浇上一头大粪(无端的批评、指责、代人受过),任其自生自灭(得不到必要的指导和提携)。做网站毕竟要遭遇这样的阶段,搜索引擎不理你,友情链接找不到,访客不上门。这是磨练。
13.奥卡姆剃刀定律
如无必要,勿增实体。
把网站做得简单,再简单,简单到非常实用,而不是花俏。google的首页为什么比雅虎好?
14.巴莱多定律(Paredo 也叫二八定律)
你所完成的工作里80%的成果,来自于你20%的付出;而80%的付出,只换来20%的成果。
随时衡量你所做的工作,哪些是最有效果的。
15.马蝇效应
林肯少年时和他的兄弟在肯塔基老家的一个农场里犁玉米地,林肯吆马,他兄弟扶犁,而那匹马很懒,慢慢腾腾,走走停停。可是有一段时间马走得飞快。 林肯感到奇怪,到了地头,他发现有一只很大的马蝇叮在马身上,他就把马蝇打落了。看到马蝇被打落了,他兄弟就抱怨说:”哎呀,你为什么要打掉它,正是那家伙使马跑起来的嘛!” 在你心满意足的时候,去寻找你的马蝇。没有firefox,不会有ie7,firefox就是微软的马蝇之一。马蝇不可怕,怕的是会一口吃掉你的东西,像 ie当初对网景干的那样。
16.最高气温效应
每天最热总是下午2 时左右,我们总认为这个时候太阳最厉害,其实这时的太阳早已偏西,不再是供给最大热量的时候了。此时气温之所以最高,不过是源于此前的热量积累。
你今天的网站流量,是你一个星期或更长时间前所做的事带来的。
17.超限效应(溢出效应)
刺激过多、过强和作用时间过久而引起心理极不耐烦或反抗的心理现象,称之为“超限效应”。 别到别人论坛里发太多广告。别在自己网站上放太多广告。别在自己的论坛里太多地太明显地诱导话题。
18.懒蚂蚁效应
生物学家研究发现,成群的蚂蚁中,大部分蚂蚁很勤劳,寻找、搬运食物争先恐后,少数蚂蚁却东张西望不干活。当食物来源断绝或蚁窝被破坏时,那些勤快的蚂蚁一筹莫展。“懒蚂蚁”则“挺身而出”,带领众伙伴向它早已侦察到的新的食物源转移。 不要把注意力仅仅放在一个网站上,即使这个网站现在为你带来一切。你要给自己一些时间寻找新的可行的方向,以备万一。
19.长尾理论
ChrisAnderson认为,只要存储和流通的渠道足够大,需求不旺或销量不佳的产品共同占据的市场份额就可以和那些数量不多的热卖品所占据的市场份额相匹敌甚至更大。 对于搜索引擎,未必你需要一个热门词排在第一位,如果有一千个冷门词排在第一位,效果不但一样,还会更稳定更长远。
20.破窗理论
栋建筑上的一块玻璃,又没有及时修好,别人就可能受到某些暗示性的纵容,去打碎更多的玻璃。 管理论坛时,如果你发现第一个垃圾贴,赶紧删掉他吧。想想:落伍现在为什么那么多××贴?现在控制比最初控制难多了。
21.“羊群效应”,又称复制原则(Copy Strategy)
一个羊群(集体)是一个很散乱的组织,平时大家在一起盲目地左冲右撞。如果一头羊发现了一片肥沃的绿草地,并在那里吃到了新鲜的青草,后来的羊群就会一哄而上,争抢那里的青草,全然不顾旁边虎视眈眈的狼,或者看不到其它地方还有更好的青草。
不要轻易跟风,保持自己思考的能力。
22.墨菲定律
如果坏事情有可能发生,不管这种可能性多么小,它总会发生,并引起最大可能的损失。
除非垃圾站,否则不要作弊,对搜索引擎不要,对广告也不要。
23.光环效应
人们对人的某种品质或特点有清晰的知觉,印象比较深刻、突出, 这种强烈的知觉, 就像月晕形式的光环一样,向周围弥漫、扩散,掩盖了对这个人的其他品质或特点的认识。
不要轻易崇拜一个人或者公司、一个概念、一种做法。
24.蝴蝶效应
一只亚马逊河流域热带雨林中的蝴蝶,偶尔扇动几下翅膀,两周后,可能在美国德克萨斯州引起一场龙卷风。
不管你做什么,网站或者其他,你都应该关注新闻。机遇或者灾难可能就在那。
25.阿尔巴德定理
一个企业经营成功与否,全靠对顾客的要求了解到什么程度。 我赞同别人的点评:看到了别人的需要,你就成功了一半;满足了别人的需求,你就成功了全部。尤其是做网站。
26.史密斯原则
如果你不能战胜他们,你就加入到他们之中去。
不要试图做孤胆英雄。如果潮流挡不住,至少,你要去思考为什么。
电脑很慢怎么办?——最牛掰的磁盘清理方法
一、每天关机前要做的清洗:
双击“我的电脑”— —右键点C盘——点“属性”——点“磁盘清理”——点“确定”——再点“是”——再点“确定”。清理过程中,您可看得到未经您许可(您可点“查看文件”看,就知道了)进来的“临时文件”被清除了,盘的空间多了。对D,E,F盘也要用这法进行。
二、随时要进行的清理 :
打开网页——点最上面一排里的“工具”——点“Internet选项”——再点中间的“Internet临时文件”中的“删除文件”——再在“删除所有脱机内容”前的方框里打上勾——再点“确定”——清完后又点“确定”。这样,可为打开网和空间提高速度。
三、一星期进行的盘的垃圾清理 :
点“开始”——用鼠标指着“所有程序”,再指着“附件”,再指着“系统工具”,再点“磁盘粹片整理程序”——点C盘,再点“碎片整理”(这需要很长时间,最好在您去吃饭和没用电脑时进行。清理中您可看到您的盘里的状况,可将清理前后对比一下)——在跳出“清理完成”后点“关闭”。按上述,对D,E,F盘分别进行清理。
电脑系统越来越慢,怎么删除临时文件啊
1.关闭"休眠"
方法:打开[控制面板]→[电源选项]→[休眠],把"启用休眠"前面的勾去掉
说明:休眠是系统长时间一种待机状态,使您在长时间离开电脑时保存操作状态,如果您不是经常开着电脑到别处去的话,那就把它关了吧!
☆立即节省:256M
2.关闭"系统还原"
方法:打开[控制面板]→[系统]→[系统还原],把"在所有驱动器上关闭系统还原¹勾上
说明:系统还原是便于用户误操作或产生软件问题时的一种挽救手段,可以回复到误操作以前的状态.不建议初级用户使用.当然,它采用的是跟踪手段,需要记录大量信息,所消耗的资源也要很大的.
☆立即节省:数百M (根据还原点的多少而不同)
您也可以在不关闭系统还原的前提下,相应的减少系统还原所占的磁盘空间,这只会减少可用还原点的数目,一般还原点有一两个就够了吧.
方法:...[系统还原]-选择一个"可用驱动器"-[设置]-调整"要使用的磁盘空间"
3.关闭"远程管理"
方法:打开[控制面板]→[系统]→[远程],把"允许从这台计算机发送远程协助邀请"前面的勾去掉.
说明:谁会经常用到这种功能呢?它占用的不是磁盘空间,但是会影响系统运行速度.
☆提高系统性能
4.关闭"自动更新"
方法:打开[控制面板]→[自动更新]→选"关闭自动更新"
说明:系统更新占用的也不是磁盘空间,您可以在有可用更新时到微软的更新页面上更新,而不是总需要一个进程监视那是不是有可用更新.
☆提高系统性能
5.关闭"索引服务"
方法:[开始]→[运行]→输入"msconfig"→[服务] 去掉indexing servise前面的勾
说明:索引服务是提高系统搜索速的的,谁没事总在系统里搜来搜去啊
☆提高系统性能
6.减少开机加载的启动项
方法:[开始]→[运行]→输入"msconfig"→[启动] 去掉不必要的启动项
说明:必要的启动项 一般"系统盘windowssystem32下的最好不要去掉;而肯定能去掉的有 TINTSETP IMJPMIG IMSCMIG QQ 等
☆加快开机速度
7.合理设置虚拟内存
方法:打开[控制面板]→[系统]→[高级]-[性能]设置-[高级]-[虚拟内存]更改-在"自定义大小"中填入数值
说明:一般的最小值是物理内存的1.5倍,最大值是物理内存的3倍;如果您经常运行大型软件的话最小值应该设为(物理内存*1.5*0.2+物理内存*1.5),最大值应为(物理内存*3*0.2+物理内存*3)
☆提高系统性能
8.取消系统失败时的日志文件和询问
打开[控制面板]→[系统]→[高级]→[启动和故障恢复]→[系统失败] 去掉"将事件写入系统日志""发送错误警报"
☆提高系统性能
9.删除无用的文件
方法:打开[控制面板]→[文件夹选项]→[查看]→[显示所有文件和文件夹]
C:Documents and Settings用户名Cookies除index文件外的所有文件(浏览网页产生的记录文件)
C:Documents and Settings用户名Local SettingsTemp下的所有文件(用户临时文件)
C:Documents and Settings用户名LocalSettingsTemporaryInternet Files下的所有文件(浏览网页记录的多媒体信息,加速以后浏览)
C:Documents and Settings用户名Local SettingsHistory下的所有文件(访问历史纪录)
C:Documents and Settings用户名Recent下的所有文件(最近浏览文件的快捷方式) C:WINDOWSTemp下的所有文件(临时文件)
C:WINDOWSServicePackFiles下的所有文件(升级sp1或sp2后的备份文件)
C:WINDOWSDriver Cachei386下的压缩文件(驱动程序的备份文件)
C:WINDOWSSoftwareDistributiondownload下的所有文件(未完成的软件下载)
C:Windows下以 $u... 开头的隐藏文件(微软更新安装文件备份)
☆立即节省:数百M
10.磁盘碎片整理
下面该做的就是磁盘碎片整理了,只有整理之后才能获得更多的空间哦^_^
方法:[开始]→[程序]→[附件]→[系统工具]→[磁盘碎片整理]...(记得先"分析"后"整理")
二。 发信人: liushafeng (终结者), 信区: Hardware
标 题: 减少Win XP资源占用的八大技巧
发信站: 紫金飞鸿 (Sun Jun 4 16:25:48 2006)
Windows XP被微软称为其历史上最优秀的操作系统,有让你眼花缭乱的各种功能、更快的
速度,当然这一切都对计算机的硬件提出了更高的要求,如果你希望Windows XP能够尽可
能少地占用你有限的
虽然Windows XP被微软自称为有史以来最稳定、功能最强大的Windows操作系统,并且
运行速度飞快——启动速度甚至比同样配置的Win 2000还要快许多,你可能依然不满足于
此,希望
一、使用朴素界面
XP安装后默认的界面包括任务栏、开始选单、桌面背景、窗口、按钮等都采用的是XP
的豪华、炫目的风格,但缺点显而易见,它们将消耗掉不少系统资源,但实用意义不大。
[方法]鼠标右键单击桌面空白处,在弹出选单点击“属性”进入显示属性设置窗口,
将“主题、外观”都设置为“Windows经典”,将桌面背景设置为“无”,按确定保存退出
。
二、减少启动时加载项目
许多应用程序在安装时都会自作主张添加至系统启动组,每次启动系统都会自动运行
,这不仅延长了启动时间,而且启动完成后系统资源已经被吃掉不少!
[方法]选择“开始”选单的“运行”,键入“msconfig”启动“系统配置实用程序”,进
入“启动”标,在此窗口列出了系统启动时加载的项目及来源,仔细查看你是否需要它自
动加载,否则清除项目前的复选框,加载的项目愈少,启动的速度自然愈快。此项需要重
新启动方能生效。
三、优化视觉效果
[方法]选择“系统属性”中的“高级”标签进入“性能选项”界面,其中“视觉效果
”中可供选择的包括:自动设置为最佳、最佳外观、最佳性能、自定义。选中的效果越多则
占用的系统资源越多,选定“最佳性能”项将关闭列表中列出诸如淡入淡出、平滑滚动、
滑动打开等所有视觉效果。
四、关闭系统还原
默认情况下系统还原功能处于启用状态,每个驱动器约被占用高达4%~12%的硬盘空间
,并且系统还原的监视系统会自动创建还原点,这样在后台运行就会占用较多的系统资源
。
[方法]鼠标右键点击桌面“我的电脑”中的“属性”进入“系统属性”设置窗口,选
择“系统还原”标签,将“在所有驱动器上关闭系统还原”置为选中状态
五、加快选单显示速度
[方法]运行注册表编辑器,进入“HKEY_CURRENT_USERControl PanelDesktop”,将名
称为MenuShowDelay的数据值由原来默认的400修改为0,修改后XP的开始选单、甚至应用软
件的选单显示速度都会明显加快。
六、启用DMA传输模式
所谓DMA,即直接存储器存储模式,指计算机周边设备(主要指硬盘)可直接与内存交换
数据,这样可加快硬盘读写速度,提高速据传输速率。
[方法]选择“系统属性”中的“硬件”标签,打开“设备管理器”,其中“IDE控制器
”有两项“Primary IDE Channel”及“Secondary IDE Channel”,依次进入“属性→高
级设置”,该对话框会列出目前IDE接口所连接设备的传输模式,点击列表按钮将“传输模
式”设置为“DMA(若可用
七、移动临时文件储存路径
多数应用软件在运行时都会产生临时文件,而且这些临时文件都默认保存于启动分区
C盘,长时间频繁读写C盘极易产生大量文件碎片,从而影响C盘性能,而C盘又是储存系统
启动核心文件的分区,C盘的性能直接影响到系统的稳定性与运行效率。应尽量将应用软件
安装于启动盘以外的分区并定期对硬盘进行整理,此举可最大程度避免产生磁盘碎片,将
启动或读写速度保持在最佳状态。
Internet Explorer临时文件夹
[方法]在IE主窗口中,依次进入“工具→Internet选项→常规”标签,打开“Intern
et临时文件”设置界面,点击“移动文件夹”按钮将原来保存于C盘的临时目录移动至C盘
以外的驱动器中,如果你使用的是宽带,可将“临时文件夹”使用空间设置为最小值1M
刻录时产生的临时文件
[方法]文件在刻录之前都会保存于C盘的刻录临时文件夹中,进入资源管理器,选择刻
录机盘符并单击鼠标右键选单的“属性”项,在“录制”标签下可将此临时文件夹安置于
其它驱动器。
我的文档
[方法]鼠标右键点击“我的文档”,在属性设置项中可将“我的文档”默认的保存路
径修改至其它盘符。
八、增加虚拟内存
[方法]进入“性能选项”的“高级”设置窗口,首先将“处理器计划”及“内存使用
”都调整为“程序”优化模式。点击“更改”按钮进入虚拟内存设置窗口,若你的内存大
于256M,建议你禁用分页文件。默认的分页文件为物理内存的1.5倍。禁用系统缓存需重新
启动系统。如果你的内存低于256M,请勿禁用分页文件,否则会导致系统崩溃或无法再启
动XP!
三
windows使用时间长了,自然就会产生这样那样的临时文件,影响系统速度,让人烦心。对于老鸟来说,可以通过修改注册表、手动优化系统性能来提高速度,而对新手来说比较困难。这里我们可以下载一些专门的系统优化软件,进行一些简单的设计,就能达到我们想要的效果。这里我推荐一些常用又好使的软件:WINDOWS优化王、优化大师、超级兔子等。其中WINDOWS优化王非常好用,一看就会、功能全面、省时省心。
完全清理[ 毒 ]垃圾
藏在XP中的一个秘密武器,可以完整清除垃圾文件
藏在XP中的一个秘密武器,可以完整清除垃圾文件
你有用过Windows内置的清理磁盘功能吗?
它并不能完全地清洗Windows内不需要的档案,因为它的功能被隐藏了,本篇将会把它被封印了的功能完全打开。适用的窗口板本 除了Win95及Win98外
这个方法阶适用于Win98se、Win2000、WinME、WinXP
现在介绍两个「清理磁盘」工具的指令:
SAGESET 及 SAGERUN
首先在「开始」>「执行」 然后输入
cleanmgr /sageset:99
设定:
特别模式「清理磁盘」工具会执行,你会发觉多了很多清理选择,选择你想要清理的档案,通常全部都可以删除,完成你的选择后再按「确定」。然后再打开「开始」>「运行」
输入:cleanmgr /SAGERUN:99
杀毒1
这种情况往往表现在打开IE时,在IE界面的左下框里提示:正在打开网页,但老半天没响应。在任务管理器里查看进程,(进入方法,把鼠标放在任务栏上,按右键—任务管理器—进程)看看CPU的占用率如何,如果是100%,可以肯定,是感染了病毒,这时你想运行其他程序简直就是受罪。这就要查查是哪个进程贪婪地占用了CPU资源.找到后,最好把名称记录下来,然后点击结束,如果不能结束,则要启动到安全模式下把该东东删除,还要进入注册表里,(方法:开始—运行,输入regedit)在注册表对话框里,点编辑—查找,输入那个程序名,找到后,点鼠标右键删除,然后再进行几次的搜索,往往能彻底删除干净。
杀毒2
今天在这里为大家提供两则小技巧,以便帮你强行杀死顽固病毒进程。
根据进程名查杀
这种方法是通过WinXP系统下的taskkill命令来实现的,在使用该方法之前,首先需要打开系统的进程列表界面,找到病毒进程所对应的具体进程名。
接着依次单击“开始→运行”命令,在弹出的系统运行框中,运行“cmd”命令;再在DOS命令行中输入“taskkill/imaaa”格式的字符串命令,单击回车键后,顽固的病毒进程“aaa”就被强行杀死了。比方说,要强行杀死“conime。exe”病毒进程,只要在命令提示符下执行“taskkill/imconime。exe”命令,要不了多久,系统就会自动返回结果。
根据进程号查杀
上面的方法,只对部分病毒进程有效,遇到一些更“顽固”的病毒进程,可能就无济于事了。此时你可以通过Win2000以上系统的内置命令——ntsd,来强行杀死一切病毒进程,因为该命令除System进程、SMSS。EXE进程、CSRSS。EXE进程不能“对付”外,基本可以对付其它一切进程。但是在使用该命令杀死病毒进程之前,需要先查找到对应病毒进程的具体进程号。
考虑到系统进程列表界面在默认状态下,是不显示具体进程号的,因此你可以首先打开系统任务管理器窗口,再单击“查看”菜单项下面的“选择列”命令,在弹出的设置框中,将“PID(进程标志符)”选项选中,单击“确定”按钮。返回到系统进程列表页面中后,你就能查看到对应病毒进程的具体PID了。
接着打开系统运行对话框,在其中运行“cmd”命令,在命令提示符状态下输入“ntsd-cq-pPID”命令,就可以强行将指定PID的病毒进程杀死了。例如,发现某个病毒进程的PID为“444”,那么可以执行“ntsd-cq-p444”命令,来杀死这个病毒进程。
杀毒3
Windows任务管理器是大家对进程进行管理的主要工具,在它的“进程”选项卡中能查看当前系统进程信息。在默认设置下,一般只能看到映像名称、用户名、CPU占用、内存使用等几项,而更多如I/O读写、虚拟内存大小等信息却被隐藏了起来。可别小看了这些被隐藏的信息,当系统出现莫名其妙的故障时,没准就能从它们中间找出突破口。
1.查杀会自动消失的双进程木马
前段时间朋友的电脑中了某木马,通过任务管理器查出该木马进程为“system.exe”,终止它后再刷新,它又会复活。进入安全模式把c:\windows\system32\system.exe删除,重启后它又会重新加载,怎么也无法彻底清除它。从此现象来看,朋友中的应该是双进程木马。这种木马有监护进程,会定时进行扫描,一旦发现被监护的进程遭到查杀就会复活它。而且现在很多双进程木马互为监视,互相复活。因此查杀的关键是找到这“互相依靠”的两个木马文件。借助任务管理器的PID标识可以找到木马进程。
调出Windows任务管理器,首先在“查看→选择列”中勾选“PID(进程标识符)”,这样返回任务管理器窗口后可以看到每一个进程的PID标识。这样当我们终止一个进程,它再生后通过PID标识就可以找到再生它的父进程。启动命令提示符窗口,执行“taskkill /im system.exe /f”命令。刷新一下电脑后重新输入上述命令,可以看到这次终止的system.exe进程的PID为1536,它属于PID为676的某个进程。也就是说PID为1536的system.exe进程是由PID为676的进程创建的。返回任务管理器,通过查询进程PID得知它就是“internet.exe”进程。
找到了元凶就好办了,现在重新启动系统进入安全模式,使用搜索功能找到木马文件c:\windows\internet.exe ,然后将它们删除即可。前面无法删除system.exe,主要是由于没有找到internet.exe(且没有删除其启动键值),导致重新进入系统后internet.exe复活木马。
2.揪出狂写硬盘的P2P程序
单位一电脑一开机上网就发现硬盘灯一直闪个不停,硬盘狂旋转。显然是本机有什么程序正在进行数据的读取,但是反复杀毒也没发现病毒、木马等恶意程序。
打开该电脑并上网,按Ctrl+Alt+Del键启动了任务管理器,切换到“进程”选项卡,点击菜单命令“查看→选择列”,同时勾选上“I/O写入”和“I/O写入字节”两项。确定后返回任务管理器,发现一个陌生的进程hidel.exe,虽然它占用的CPU和内存并不是特别大,但是I/O的写入量却大得惊人,看来就是它在捣鬼了,赶紧右击它并选择“结束进程”终止,果然硬盘读写恢复正常了。
小技巧1
1、以Windows XP系统来说,按“开始”-“运行”,输入“CMD”回车后,再在DOS窗口下输入“systeminfo”命令,就可以查看到您的Windows XP出生日期了(指Windows XP初安装日期)。如果利用GHOST重装系统后,还是会以以前的时间为准。 除此之外,还可在此看到系统的所有信息,如主机名、处理器、网卡、以及系统打了多少补丁等等。是不是很有意思呢?
2、删除文件时,按shift 键可以直接删除。不经过回收站
3、稍微对计算机熟悉点的朋友,都知道CTRL+Z键是撤消键.
其实基本所有的大程序都是选择这个快捷键撤消键,包括计事本、IE浏览器等系统自带程序。
其实很多老鸟常常都犯了这样一个错误,在一些设计软件里都知道用这个键,可在一些菜单里没有撤消选项的软件里(比如IE)反而忘了有撤消这么个功能了.
我们用电脑写东西(例如在51群里发表帖子、qq聊天打字)时,可能都遇到过这样的事情,因为失误操作,不小心把刚刚写的字删除掉了,如果删除一两个字还可以重新打过,但如果是一大段的文字呢,这时只有干着急啊。其实,这时,我们只要按下CTRL+Z刚才不小心删除掉的东西就又会回来了。(朋友们可以做个测试,请在本帖后回帖的地方随意打一个字,再把这些字删除,然后再按CTRL+Z键,怎么样,这些字又回来了吧)
这里我只是举了最简单的一个例子,其实在很多时候,我们都可以通过CTRL+Z快捷键来实现,对刚刚误操作的恢复。
4、上网时在地址栏内输入网址,系统会记录下来,虽然方便以后不用再重复,不 过如果是公用的机子,又不想让别人知道自己到过哪些地方,可以用“CTRL+ O(字母O,不是0)”,这时对弹出一个“打开”对话框,在其中的地址栏内 输入网址,就不会被记录下来了.
5、如果浏览的页面中应用了javascript禁用了鼠标右键,解决的方法:(1)、先按住鼠标左键,然后将鼠标移动到目标处,点击 鼠标右键,一两秒之后,快捷菜单出现.(2)、单击鼠标右键,(不要放开鼠标右键),将鼠标移到警告窗口处,点击鼠标 左键,关闭窗口,再将鼠标移回目标处,放开鼠标右键,快捷菜单出现.
6、系统文件检查器——Sfc(system32文件夹下)
使用Windows难免不会出现系统文件损坏或丢失的毛病,而如果为了几个小小的文件就去重装系统,又显得稍微麻烦了一些。通过系统文件检查器Sfc.exe,一切都会变得非常简单。
7、关机、重启只要1秒钟
如果你想让Windows XP瞬间关机,那么可以按下CTRL+ALT+DEL,接着在弹出的任务管理器中点击“关机”→“关机”,与此同时按住CTRL,不到1秒钟你会发现系统已经关闭啦,简直就在眨眼之间。同样道理,如果在“关机”菜单中选择“重启”,即可快速重启。
8、快速拷贝文件
我们一般都是过一段时间就把硬盘上的文件分类整理一下,把图片放在picture文件夹中,mp3文件放在music文件夹中等等,但来回复制、粘贴真的很烦琐,现在让我们用一个简单的方法快速拷贝文件。选中一个文件夹如music,点鼠标右键创建一个快捷方式,复制这个快捷方式,在 C:\Documents and Settings\用户名\SendTo文件夹中粘贴此快捷方式。
SendTo是WindowsXP的系统文件夹,“发送到”功能就是由它来实现的。现在我们选中任意一个mp3,点鼠标右键在发送到中选择“快捷方式到 music”,这个mp3文件就被复制到了music文件夹中,是不是很方便!我们还可以根据自己的需要制作software、txt等等。
9、快速锁定计算机
Winkey+L键即可快速锁定计算机。
10、简单一招,严禁迅雷偷偷上传!
每次使用迅雷下载东西,它都会生成一个文件:c:\windows\system32\cid_store.dat
删除c:\windows\system32\cid_store.dat文件,然后在c:\windows\system32\目录下,新建一个文件夹,名称为 cid_store.dat,这样就没办法再生成任务记录文件啦,大功告成,简单吧。
hosts文件是什么?如何修改hosts文件?
如何修改hosts文件?
域名解析文件Hosts是什么文件?有什么作用
1.加快域名解析
对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,这样当我们输入域名计算机就能很快解析出IP,而不用请求网络上的DNS服务器。
2.方便局域网用户
在很多单位的局域网中,会有服务器提供给用户使用。但由于局域网中一般很少架设DNS服务器,访问这些服务要输入难记的IP地址,对不少人来说相当麻烦。现在可以分别给这些服务器取个容易记住的名字,然后在Hosts中建立IP映射,这样以后访问的时候我们输入这个服务器的名字就行了。
3.屏蔽网站
现在有很多网站不经过用户同意就将各种各样的插件安装到你的计算机中,有些说不定就是木马或病毒。对于这些网站我们可以利用Hosts把该网站的域名映射到错误的IP或自己计算机的IP,这样就不用访问了。比如不想访问www.XXXX.com,那我们在Hosts写上以下内容:
127.0.0.1 www.XXXX.com #屏蔽的网站
0.0.0.0 www.XXXX.com #屏蔽的网站
这样计算机解析域名就解析到本机或错误的IP,达到了屏蔽的目的。
4.顺利连接系统
对于Lotus的服务器和一些数据库服务器,在访问时如果直接输入IP地址那是不能访问的,只能输入服务器名才能访问。那么我们配置好Hosts文件,这样输入服务器名就能顺利连接了。
最后要指出的是,Hosts文件配置的映射是静态的,如果网络上的计算机更改了请及时更新IP地址,否则将不能访问。
5. 强制指定某域名对应某IP地址
来源:http://blog.163.com/zl_dream1106/blog/static/842860201172824317647/
JSP与PHP详细性能测试
前几天在CU看到有人比较PHP与JSP,.net,结果表明PHP比JSP,.net性能低下很多。本人认为即使有差距,也不应该有这么大,所以认真测试一下几者间的性能差距。由于很久没用.net了,所以,暂时没有测试.net。
本测试数据真实,但只做为参考。欢迎大家讨论。
除做比较外,也可供PHP,JSP程序员参考,以便优化自己的程序。
本测试由一直漂(ipaddr,bcomcn)原创,欢迎转载,并注明出处。问题反馈:admin.net(at)163.com
| 测试环境: |
| 硬件:P4 2.4G,1G内存 软件:WindowsXP+Apache2.0.54+PHP4.4.0+Mysql4.1.14+Tomcat5.0.28 |
| 讨论地址:http://bbs.chinaunix.net/viewthread.php?tid=641073 |
一.算术运算
a.测试标准
循环N次,并做整型自加运算。
b.测试
测试代码:
| 测试类型 | JSP int整型 | JSP long整型 | JSP long整型2 | PHP | PHP2 |
| 测试代码 | int i = 0; while (i < XXXX) { i++; } |
long l = 0; while (l < XXXX) { l++; } |
long l = 0; while (l < XXXX) { l = l + 1; } |
$i = 0; while ($i < XXXX) { $i++; } |
$i = 0; while ($i < XXXX) { $i = $i + 1; } |
测试结果(单位:毫秒)
测试结果说明:m-n表示主要波动范围介于m和n之间;n表示出现次数非常之多的数值或平均值,m(x,y)表示偶尔会出现x,y。以下相同。
| XXXX取值 | JSP int整型 | JSPlong整型 | JSPlong整型2 | PHP | PHP2 |
| 1000 | 0 | 0 | 0 | 0-1 | 0-1 |
| 10000 | 0 | 0 | 0 | 3-4 | 6-7 |
| 100000 | 0 | 0 | 0(16,32) | 34-35 | 51-52 |
| 1000000 | 0(10) | 0(16,32) | 0(16,32) | 348-368 | 527-534 |
| 10000000 | 0(13) | 16-32 | 32-78 | 3547-3585 | 5239-5390 |
| 100000000 | 0(16) | 266-281 | 265-281 | 35309-35486 | |
| 1000000000 | 0(16,743) | 2625-2676 | 2203-3687 |
c.结论
Java的算术运算,优化得很好,估计是直接的对应CPU的指令,数值再大,算术运算性能都很平稳。
需要注意的是,long的运算时间要比int的运算时间要长一些(毕竟是32位的系统),所以,在无需用到long时,尽量不要用long,而用int.
PHP是弱类型的变量,算术运算很不尽人意,估计不是直接对应机器码的算术运算。
PHP算术运算的过程猜测如下,在运算前需要检测变量是否是数值,并要将非数值转换成数值,比如,PHP可以做这样的运算:100+"zhoutang",结果等于100.正是因为是弱类型语言,加上运算前的检测和转换,所以才导致算术运算的性能低下。
PHP的单次运算时间比较稳定,大概每10000次算术加运算花费的时间约为3.5ms
不同的运算方法,也对性能有影响。
二.字符串运算
a.测试标准
字符串连接运算对比。
b.测试
测试代码:
| 测试类型 | JSP | PHP |
| 测试代码 | String str = ""; while (str.length() < XXXX) { str += "a"; } |
$str = ""; while (strlen($str) < XXXX) { $str. = "a"; } |
测试结果(单位:毫秒)
| XXXX取值 | JSP | PHP |
| 1000 | 0-16 | 1 |
| 10000 | 656-703 | 9-10 |
| 100000 | 105078-105235 | 95-103 |
c.结论
Java的字符串是用对象处理,很明显,在字符串的比较过程中,Java比PHP差很远。(因为字符串操作,很大部分要做连接,这里只比较连接运算,另外粗略比较了一下substring,两者的差别不是很大)
PHP的字符串运算,估计很多是直接调用C的字符串函数,所以效率会高很多。
在做WEB开发中,字符串的连接操作还是很频繁的(包括很多时候生成SQL字符串),所以,在算术运算和字符串运算两个方面,Java(JSP)优势不明显,与PHP各有所长。
三.数据库查询
a.测试标准
循环N次做数据库打开,查询,关闭操作。主要对JSP直接连数据库,JSP连接池连数据训,PHP直接连数据库,PHP持久连数据库做比较。
b.测试结果
测试代码:
| 测试类型 | 测试代码 |
| JSP | String dbUrl, dbUser, dbPwd, strSQL; dbUrl = "jdbc:mysql://localhost:3306/zhoutang"; dbUser = "root"; dbPwd = ""; strSQL = "update tblUser set UserLC=UserLC+1 where UserID=100"; Class.forName("com.mysql.jdbc.Driver"); int i = 0; |
| JSP连接池 | Context ctx = new InitialContext(); DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/mysql"); String strSQL = "update tblUser set UserLC=UserLC+1 where UserID=100"; Connection con; int i = 0; |
| PHP | $dbHost = "localhost"; $dbUser = "root"; $dbPwd = ""; $dbName = "zhoutang"; $strSQL = "update tblUser set UserLC=UserLC+1 where UserID=100"; $i = 0; |
| PHP持久连接 | $dbHost = "localhost"; $dbUser = "root"; $dbPwd = ""; $dbName = "zhoutang"; $strSQL = "update tblUser set UserLC=UserLC+1 where UserID=100"; $i=0; |
测试结果(单位:毫秒)
| XXXX取值 | JSP | JSP连接池 | PHP | PHP持久连接 |
| 50 | 437-600 | 31-50 | 219-232 | 34-37 |
| 100 | 890-1047 | 62-94 | 448-468 | 69-73 |
| 200 | 2141-2263 | 157-189 | 948-979 | 159-175 |
| 500 | 5078-5140 | 375 | 2118-2221 | 358-379 |
c.结论
普通连接,Java连Mysql的速度是要比PHP慢的一倍左右。Java使用连接池技术,性能提升非常明显。
PHP使用的持久连接(pconnect)性能即然相当于Java的连接池,结果实在让人不可思议,本来挺担心PHP连数据库的,因为没连接池可用,特意在网上找了一些资料,没发现PHP可用的连接池,相关提法都很少,很多PHP程序员甚至没听过这概念,这样的结果,确实让我也大吃一惊。不过,话说回来,pconnect的原理,和连接池差不多的,都是程序关闭连接,但PHP并不真正关闭,再次打开时,直接使用可用的连接。但是,PHP的实现确实比Java方便多了,只需加个字母,就轻易实现,Java则麻烦一些,我配置Tomcat的连接池都费了些时间,按官方文档,在tomcat5.0.28下没配置成功,在CSDN上面,也看到很多新手发出求救,很多配置不成功的,最后自己摸索出来了,配置方法可参考我的Blog。
如果将连接数据库和关闭数据库的操作,移到循环外面,刚PHP和JSP的执行时间都差不多,循环50次约16ms。可见,数据库操作中,打开连接是相当耗资源的,其它操作,与语言差别不大。JSP在连接数据库的时候,开销比PHP大很多。(这里特意将打开数据库操作放在循环体做比较)
四.文件操作
在WEB开发过程上,文件操作一般不可缺少,大多数WEB系统都会上传或对文件操作。
a.测试标准
综合测试各种文件操作,测试的过程是首先判断某文件是否存在,存在的话删除文件,再新建文件,再往文件里写一定长度的内容。整个过程循环N次。
b.测试结果
测试代码:
| 测试类型 | 测试代码 |
| JSP | String fileName = "jsp.txt"; String filePath = request.getRealPath(""); int i = 0; int j = 0; while (i < XXXX) { File f = new File(filePath,fileName); if (f.exists()) { f.delete(); } f.createNewFile(); FileWriter fw = new FileWriter(filePath + File.separator + fileName); j = 0; while (j < 2 * i) { fw.write(j + " "); j++; } fw.close(); i++; } |
| PHP | $fileName = "./php.txt"; $i = 0; while ($i < XXXX) { if (file_exists($fileName)) { unlink($fileName); } $handle = fopen($fileName, "x"); $j = 0; while ($j < 2 * $i) { fwrite($handle,$j." "); $j++; } fclose($handle); $i++; } |
测试结果(单位:毫秒)
| XXXX取值 | JSP | PHP |
| 100 | 265-292(326,431) | 346-367 |
| 500 | 1703-2065 | 3256-3474 |
| 1000 | 4062-4398 | 9316-9348 |
c.结论
这个测试结果有点意外,本以为PHP会大胜的项目,却让JSP遥遥领先,循环次数大的时候,PHP比JSP慢一倍。有点不可思议。
五.总结
总体来说,PHP与JSP在性能上,差别不了很远,各有优势。JSP虽是编译执行,但却要通过JVM,性能会有所下降。从功能上说,JSP的相对强大一些,主要是因为有Java的支撑,在一些很大型的企业中,用JSP有优势(主要是有Java支撑),但一般的企业或一般的应用,PHP完全可以应付。另外,PHP比JSP更容易上手。另外,个人说为,做同样的WEB系统,PHP相对JSP来说,复杂度可能会低一些(JSP所有的技术都用上的话,估计架构环境,系统设计都够麻烦的,而且,Java体系各种技术和产品比较开放和松散,文档相对来说有点杂乱,至少我认为Tomcat的文档做得没有Apache,PHP的好。)。
PHP小巧而灵活,JSP就显得宠大,而且,概念众多,个人认为Java体系有故意夸大技术复杂度的嫌疑。
此外,PHP还有Zend可用,本来想装上Zend再来测试一番的,这几天Zend的网站老是上不去。据有关测试表明,Zend能提升PHP的性能大约100%左右。也有说30-40%的,也有说600%的。估计是算术运算能提升个档次,其它操作,最多提升30-40%左右。
在整个测试过程中,每个取值我都会测多次,一般10s以下的运算,我至少测10次,10s以上的运算,至少测3次。PHP的测试结果都比较稳定,每次测出的结果差别不是很大,从统计学的角度来说,方差比较小。JSP相对来说,偶尔会出现一些值,偏离平均值比较远,而且,由于需要编译的原因,首次执行一般时间比较长(虽然从程序里显示的数值看不出首次执行的时间差距,但在程序开始执行前,编译需要点时间。编译后才开始执行,所以程序显示的结果看不出来。),所以,JSP的测试,没取首次运行的结果。
另外,在测试连接数据库的过程中,由于一时疏忽,忘了在循环体内i++,导致出现死循环。所以,也特意做了几个死循环测试。算术运算测试,JSP死循环时,浏览器点了停止按钮,tomcat仍继续执行,CPU一直是100%,只有在任务管理器里停了tomcat,才得以停止死循环;PHP算术运算死循环,由于php.ini里有设置程序执行的最长时间和最大内存,所以,死循环能够自动结束。数据库连接死循环,JSP在循环大概900多次后,出现异常,报错,提示无法连接;PHP循环1500次后,仍然没有结束,只好在任务管理器里结束apache进程(我的php.ini设置PHP最长执行时间为300秒)。
六.其它环境简单测试
以上数据只能做为参考,同样的程序,在其它配置的系统,我也做了简单的测试:
I.p4 2.4G,512M DDR,Windows server2000的工作机
(安装东西比较多,比较乱,运行一年多没重装,由于是工作机,所以操作系统对应用程序优化,而不是对后端服务优化;所测得的数据,比XP下测得的数据要大很多,比如PHP连接Mysql循环500次,大约需要16000ms。),粗略的测试的结果是:
算术运算和字符串运算:算术运算,JSP领先很多,字符串运算,PHP领先很多,和测试机的结果一致。
连接数据库:PHP与JSP连Mysql速度差距不大,PHP大概快20%左右,奇怪的是我用pconnect连与connect是一样的结果,未测试JSP的连接池。估计JSP用连接池会快很多。
文件操作:PHP的文件操作比JSP性能高出约30%!与测试机的结果有点相差比较大,PHP领先。
II.p4 2.66G,1G DDR,Linux服务器
算术运算和字符串运算:和其它环境测试结果一致,JSP在算术运算时领先,PHP在字符串运算时领先很多很多。
连接数据库:执行500次循环,PHP用connect连接,花费185ms,PHP使用pconnect连接,花费70ms;JSP未用连接池,花费2030ms。
文件操作:JSP领先很多,1000次循环,JSP花费1500ms左右,PHP花费7000ms左右。
III.总结
不管什么平台系统,测试结果表明,JSP和PHP在做WEB开发时,性能差距不大,只能说各有所长,JSP在数据库操作以及字符串操作方面不如PHP,而PHP在文件操作及算术运算是,不及JSP。
此外,同种语言,在不同的平台表现也不一样,根据我的测试结果表明,Linux下PHP,JSP的性能都要优于Windows的。
七.运行时间的获取
| 语言 | 如何获取运行时间 |
| JSP |
long timeStart = 0; //中间代码
|
| PHP |
$timeStart = 0; //中间代码 $timeEnd = mictime(); function mictime() { |
来源 http://blog.163.com/zl_dream1106/blog/static/842860201091693457610/
PS手绘人物头像
PS手绘人物头像,完全使用手绘方式完成人物头像,绘制要仔细,有时可能因为细微的差别而出现不同的效果,不过我相信只要你努力练习,肯定能行的。






























来自:http://blog.sina.com.cn/s/blog_4b2e9f3301009uw6.html
HTML4和HTML5的10个区别
HTML5是HTML标准的下一个版本。越来越多的程序员开始HTML5来构建网站。如果你同时使用HTML4和HTML5的话 ,你会发现用HTML5从头构建,比从HTML4迁移到HTML5要方便很多。虽然HTML5没有完全颠覆HTML4,它们还是有很多相似之处,但是它们 也有一些关键的不同。本文就列出了它们之间10个关键的不同之处。
1. HTML5 标准还在制定中
首先要注意的是,HTML5虽然现在很火,但是HTML5标准还在制定中,标准仍在改变。HTML4已经10多年了,不会有任何改变了。
2. 简化的语法
HTML5简化了很多细微的语法,例如doctype的声明,你只需要写<!doctype html>就行了。HTML5与HTML5,XHTML1兼容,但是与SGML不兼容。
3. <canvas>标签替代Flash
Flash给很多Web开发者带来了麻烦,要在网页上播放Flash需要一堆代码和插件。<canvas>标签使得开发者只要使用一个标签就 能和用户产生UI交互。虽然目前<canvas>标签还不能实现Flash的所有功能,但是很快<canvas>就会让 Flash看起来老土,哈哈!
4. 新增 <header> 和 <footer> 标签
HTML5设计的一个原则是更好的体现网站的语义性,所以增加了<header>和<footer>这样的标签,用来明确表示网页的结构。
5. 新增 <section> 和 <article> 标签
与<header>, <footer>类似,<section>和<article>也有利于清晰化网页的结构,更有利于SEO。
6. 新增 <menu> 和 <figure> 标签
<menu>可以被用于创建传统的菜单,也可以用于工具栏和上下文菜单。<figure>标签使得网页文字和图片的排版更专业。
7. 新增 <audio> 和 <video> 标签
这两个标签可能是HTML5里面最有用的两个标签了。顾名思义,这两个标签是用来播放音频和视频的。
8. 全新的表单
HTML5对 <form> 和 <forminput> 标签进行了大量修改,添加了很多新的属性,也修改了很多属性。
9. 删除 <b> 和 <font> 标签
这个改进我还无法理解。我不认为删除这两个标签对代码的改进有很大的帮助。官方的解释是应该用CSS来替代这两个标签。但我还是觉得对于简单的文本,这两个标签还是很方便的。
10. 删除 <frame>, <center>, <big> 标签
我已经记不得上次是什么时候使用这些标签了。
CSS实现兼容性的渐变背景
一、有点俗态的开场白
要是两年前,实现“兼容性的渐变效果”这个说法估计不会被提出来的,那个时候,说起渐变背景,想到的多半是IE的渐变滤镜,其他浏览器尚未支持,但是,在对CSS3支持日趋完善的今天,实现兼容性的渐变背景效果已经完全成为可能,本文就将展示如何实现兼容性的渐变背景效果。在众多的浏览器中,目前不支持Opera浏览器。
本文实例效果都是同样的效果,就是垂直渐变,起始颜色红色,结束颜色蓝色,结束的蓝色的透明度是0.5。
二、IE浏览器下的渐变背景
IE浏览器下渐变背景的使用需要使用IE的渐变滤镜。如下代码:
filter: progid:DXImageTransform.Microsoft.gradient
(startcolorstr=red,endcolorstr=blue,gradientType=1);
相关说明:
上面的滤镜代码主要有三个参数,依次是:startcolorstr, endcolorstr, 以及gradientType。
其中gradientType=1代表横向渐变,gradientType=0代表纵向淅变。startcolorstr=”色彩” 代表渐变渐变起始的色彩,endcolorstr=”色彩” 代表渐变结尾的色彩。
上面代码实现的是红色至蓝色的渐变,但是不含透明度变化,这是由于IE目前尚未支持opacity属性以及RGBA颜色,要实现IE下的透明度变化,还是需要使用IE滤镜,IE的透明度滤镜功能比较强大,这种强大反而与Firefox或是Safari浏览器下的css-gradient背景渐变的用法类似。例如下面的使用:
filter:alpha(opacity=100 finishopacity=0 style=1startx=0,starty=5,finishx=90,finishy=60)
其中各个参数的含义如下:
opacity表示透明度,默认的范围是从0 到 100,他们其实是百分比的形式。也就是说,0代表完全透明,100代表完全不透明。
finishopacity 是一个可选参数,如果想要设置渐变的透明效果,就可以使用他们来指定结束时的透明度。范围也是0 到 100。
style用来指定透明区域的形状特征:
0 代表统一形状
1 代表线形
2 代表放射状
3 代表矩形。
startx 渐变透明效果开始处的 X坐标。
starty 渐变透明效果开始处的 Y坐标。
finishx 渐变透明效果结束处的 X坐标。
finishy 渐变透明效果结束处的 Y坐标。
综合上述,实现IE下含透明度变化红蓝垂直渐变的代码如下:
.gradient{ width:300px; height:150px; filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150)progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=1); -ms-filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=1); } <div class="gradient"></div>
结果如下图:

三、Firefox浏览器下的渐变背景
对于Firefox浏览器下(Firefox 3.6+)渐变背景的实现需使用CSS3渐变属性,-moz-linear-gradient属性,在之前文章我详细介绍了Firefox3.6下渐变背景的实现 。这里我就不再具体讲述了,对于本文开头提到的要实现的效果的实现可以参见下面的代码:
.gradient{ width:300px; height:150px; background:-moz-linear-gradient(top, red, rgba(0, 0, 255, 0.5)); } <div class="gradient"></div>
此段代码在Firefox3.6浏览器下的效果是:

四、chrome/Safari浏览器下的渐变背景实现
对于webkit核心的浏览器,如Chrome/Safari浏览器下渐变背景的实现也是使用CSS3 渐变方法,css-gradient,具体为-webkit-gradient,使用语Firefox浏览器是有一些差异。具体使用就不详述了,参见下面的代码:
.gradient{
width:300px;
height:150px;
background:-webkit-gradient(linear, 0 0, 0 bottom,from(#ff0000), to(rgba(0, 0, 255, 0.5))); } <div class="gradient"></div>
此段代码在Safari 4浏览器下的效果是:

补充于2011-04-07
Opera11也支持了CSS3渐变。其用法与Firefox一致,需要使用-o-的前缀。另外,Chrome的渐变用法也开始向FireFox浏览器下的用法靠拢。
五、综合 – 兼容性的渐变背景效果
相关代码如下:
.gradient{ width:300px; height:150px; filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=0); -ms-filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=0);/*IE8*/ background:red; /* 一些不支持背景渐变的浏览器 */ background:-moz-linear-gradient(top, red, rgba(0, 0, 255, 0.5)); background:-webkit-gradient(linear, 0 0, 0 bottom, from(#ff0000),to(rgba(0, 0, 255, 0.5))); background:-o-linear-gradient(top, red, rgba(0, 0, 255, 0.5)); } <div class="gradient"></div>
效果分别为上面三个分类的截图。
六、结语
CSS3的潜力非常的大,就渐变这一块可以创建很多精湛的UI效果,而以往这些效果都只能使用图片实现。CSS渐变背景的实现可以有效降低网页的图片数,也就是降低了HTTP请求,是非常受用的。但是IE浏览器一直蹲在茅厕边啃鸡腿——自以为美味,得使用资源消耗很高的滤镜才能实现渐变效果。所以,目前而言,渐变背景的的应用与否还是有待于利弊权衡的。
PHP发明人谈MVC和网站设计架构
PHP是全世界上使用率最高的网页开发语言,台湾每4个网站,就有1个用PHP语言开发。1995年发明PHP语言的Rasmus Lerdorf,也是打造出Yahoo全球服务网站的架构师之一,他首度来台分享如何架构网站扩充性丶安全性和效能的秘诀。
Q:越来越多Web 2.0网站走向应用平台,你认为打造这类平台的关键为何?
A:简单来看,应用平台就是API,任何Ajax或 Web 2.0类型的网站,都是在应用平台上运用了API来创造出视觉介面的互动效果。例如Yahoo Mail,透过简单的Request呼叫,来读取後续的信件。打造这类网站,如何规画解决问题的方式,会决定了网站未来的扩充性(Scalability),而非效能决定网站的发展。
Q:如何规画网站架构,才会具有扩充性?
A:将一个网站应用,分成几十个独立小程式,前端透过 API提供服务,後端是应用程式引擎,这样做自然会有扩充性。因为应用的每一个部分,都有不同等级的使用方式,需要有不同的扩充程度(scaling level),需要不同的机制来处理。以开发Yahoo Mail而言,是要开发一个地址服务程式丶一个读信服务丶一个送信服务,而送信程式完全和读信程式无关。以Yahoo的规模而言,需要让这些工作完全分 离,才有扩充性。
Q:这种规画网站的方式,什麽是最重要的关键?
A:关键是你必须建立分离丶模组化的独立端点,而不是全部放在同一个大篮子里。大多数现今MVC架构(MVCframework)的开发框架(Framework),使用所谓的前端控制器(Front Control),每一次浏览器提出Request请求时,就会呼叫这个前端控制器,再由前端控制器来分辨,使用者想要执行哪一支程式。这样做,一点意义都没有。
在浏览器层次,程式完全能知道使用者想要做什麽事情,例如使用者只是要读信,程式就不用再把需求送到伺服器,让伺服器判断使用者要读信还是送信。将这类决策工作拉出浏览器,由伺服器处理,就会浪费大量伺服器资源,来处理那些对使用者没有实际功用的工作。扩充性来自架构,很多开发框架,将所有事情绑在一起,限制了架构。选错开发框架,你就没有扩充性。
Q:你是说MVC模式不利於网站扩充性?
A:MVC模式比较适合用在网页控制器(Page Control)的层次。基本上,每一个网页控制器都是独立模组,读信和查地址是不同的网页控制器,所以,读信程式就不会干扰到查地址程式。所以,在每一 个端点使用MVC模式来打造小型的网页控制器,是不会有问题。但是,大多数采用MVC模式的框架,预设在网站中采用前端控制器,而非用网页控制器的方式, 这样的MVC模式,只适合在小型或单一伺服器的网站。
Q:你会如何选择开发框架呢?
A:一个框架都不要用。但是,我会从这些开发框架中,找出我需要的功能,拿出那个我需要的程式模组来用,或者参考其中的设计想法,而不是套用整个框架。我所看到的大多数框架,都没有专注在打造有效能的扩充性和可模组性。
Q:难道开发者不需要框架或架构吗?
A:网站的确需要有架构,每一个人都需要框架,框架是一种解决问题的方法。但是你并不需要通用型框架,用一个前端控制器,来解决所有问题,这样通常没办法 成功。每一个问题都不同,你需要引导框架,使用正确的设计模式,直接解决真正要处理的问题。只生产一款汽车,怎麽可能满足全世界人的需求!
用框架开发雏形系统就好,但真正的产品就不要全部套用。从框架开始比较容易,但你要拆开全部的框架,移除Runtime检查丶拿掉不需要的功能,只留下你会用到的程式模组。你不需要一个通用型框架,因为它无法提供未来的扩充性,但也不用重头写起,你需要的是介於两者之间。
Q:网站需要规画到多久以後的扩充需求?
A:我总是痛恨要帮未来考虑太多。当你无法预测未来,你就无法帮未来作决定。
网路变化太快,我通常只规画半年内的事情。现在决定半年以後的事情,可能会做出错误决策,反而让事情更糟。如果你没有解决当下的问题,而是想像未来会发生的问题,我认为不值得,我宁可解决眼前看得到的问题,真正聚焦在当下需要的产品。
Q:那麽,有任何准则是架构人员可以遵循的吗?
A:最主要的原则是,仔细考虑如何分配程式模组,尽可能将程式拆解成更小的元件,调校出适当的API,你应该规画的是使用者端点的事情,例如浏览器请求的 类型是什麽?应用程式要如何回应?是否可以切割?是否可以把这些工作分配到完全分离的伺服器上执行?即使是在同一台伺服器上,你也能从使用者端点的角度来 架构应用程式,有一天,当你的规模变大後,就可以很容易加入第二台伺服器,只要在前端伺服器不储存任何资料,就能进行流量分担。一般开发者最大的错误是, 让程式码之间的交互关连(interrelation)太深,每个不同的元件都需要和其他外元件沟通,这样做很难调校出很乾净的API。开发者会无法抽离 出效率慢的API放到辅助伺服器中,而让主要伺服器只执行必要API。
Q:切割服务丶拆解程式的难度是什麽?
A:必须在开始之前,就要非常了解问题。当你写完第一个版本的程式,才着手拆解问题,那几乎是不可能,很难事後处理。这的确很难,因为问题会一直改变。但 是,若你从简单的架构开始,并且保持这个精神来区隔程式模组。每次当网站发生变化时,问题的变化也只会影响到一小部分,你就能够非常清楚那个地方,能够直 接解决问题。就好像乐高游戏一样,盖好每一个小块积木,哪边还有不足,就只需要再补上一小块就好,不用对整体改变太多。
Q:除了扩充性以外,如何提高网站效能呢?
A:要提高效能,得先知道每一支程式花了多少时间。 我会问,使用者送出Request请求後,要多久才会收到第一个Byte的资料?很多开发人员不晓得这个时间(First Byte Latency)是多久,不晓得自己的程式码用掉多少时间?可以透过Profile来追踪效能,画出视觉化的效能流程图,来了解瓶颈在哪。
甚至要考虑到单一机器上的延迟,透过系统层级的追踪程式,知道程式执行的每一个系统呼叫(System Call)耗费多久。还要考虑浏览器中的延迟,从使用者实际感受的速度来改善网页执行方式等。
每次你增加一个新功能,要能计算出新功能会增加多少毫秒,想一想这麽做值不值得。
Q:那麽,网站的安全性又需注意哪些原则?
A:基本精神很简单,只要用资料防火墙的概念来设计网站。网路防火墙会严密监控每一个通讯埠,只让没有安全疑虑的封包通过,但网站开发者刚好相反,只挡掉自以为有危险的内容。开发者不能信赖任何从外部取得的资料,借用防火墙概念和手法,建立资料防火墙,就能提高网站安全性。
Q:好的架构师需要什麽样的条件?
A:必须非常了解技术, 了解每一个细节,例如设计资料储存机制,要了解哪种资料可以储存丶可以存多大的档案,放多少资料丶每秒钟可以放多快?如何复制资料?前端必须使用哪种资料 格式等。架构师可以不用像 DBA,知道如何修复Oracle资料库的错误,但是要能够了解Oracle资料库拥有的能耐。这种人很难找,必须要失败过很多次,才会有足够的经验。
Q:台湾还有不少旧网站使用PHP 4,他们应该现在升级到PHP 5吗?还是等待PHP 6?
A:尽快升级到PHP 5。只要作一些测试和修改,就能得到更好的效能和安全,为什麽不做?不需等待PHP 6,开源社群的运作方式,无法承诺推出时间。很多新功能已经放到PHP 5.3版中,赶快从4升到5最重要。
PHP生成随机数的方法
通常情况下,要生成一个随机字符串时,先创建一个字符池,然后用循环和mt_rand()或rand()生成php随机数,从字符池中随机选取字符,最后拼凑出需要的长度。例如:
function randoms($len)
{
$pattern = ¹1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLOMNOPQRSTUVWXYZ,./&lt;>?;#:@~[]{}-_=+)(*&^%$?"!¹; //字符池
for($i=0;$i<$len;$i++)
{
$key .= $pattern{mt_rand(0,35)};
}
return $key;
}
echo randoms(20);
这个php随机函数能生成XC*=z~7L这样的字符串!
现在介绍另一种用PHP生成随机数的方法:利用chr(),省去创建字符池的步骤。
function randoms($len)
{
$output=¹¹;
for ($a = 0; $a < $len; $a++) {
$output .= chr(mt_rand(33, 126));
}
return $output;
}
echo randoms(20);
在第二个php随机函数里,先用mt_rand()生成一个介于33到126之间的php随机数,然后用chr()函数转化成字符。在ascii码表中,33到126代表的正是第一个函数中字符池里的所有字符。
第二个函数和第一个函数功能相同,且更简洁。
- 默认分类(20)
- J2EE(25)
- Java(56)
- PHP(55)
- SEO(10)
- 网页设计(20)
- 网站建设(37)
- 数据库(7)
- JavaScript(17)
- JQuery(6)
- MySQL(20)
- SQL Server(6)
- Access(1)
- Oracle(6)
- office(6)
- Dreamweaver(4)
- Photoshop(12)
- Flash(9)
- Fireworks(13)
- CSS(14)
- HTML(4)
- .NET(7)
- ASP(2)
- DB2(1)
- Ajax(2)
- Linux(12)
- Struts(7)
- Hibernate(8)
- Spring(2)
- Jsp(22)
- Asp(8)
- C#(3)
- C++(1)
- 网络安全(5)
- 软件工程(7)
- XML(1)
- English(2)
- 计算机等级考试(2)
- 计算机病毒(4)
- 个人日志(76)
- 互联网(15)
- ActionScript(10)
- Android(3)
- 数据结构与算法(1)
- 游戏策略(3)
- 美文翻译(2)
- 编程开发(19)
- 计算机应用(4)
- 计算机(10)
- Unity3d(6)
- 其他(1)
- egret(1)







































