2009年05月20日
热词冲突 算法阅读全文>
发表于 @ 2009年05月20日 12:59:00|评论(loading...)|编辑|举报|收藏
2009年05月15日
敏捷开发的意义阅读全文>
发表于 @ 2009年05月15日 15:26:00|评论(loading...)|编辑|举报|收藏
★工具: 采用的压力工具是loadrunner loadrunner 的用法顺便提俩句: 大体分为俩步:1.生成脚本,2.用脚本测试;★数据分析:现在说下在linux下怎么察看数据1.用top察看系统运行信息: 察看此选项: load average: 8.83, 7.90, 7.69 这个就是服务器的负载均值,单颗cpu的正常数值为2,则俩颗的话就是4所以就可以得出(cpu数量可以在top命令下按1)你得程序代码是需要优化还是优异;2.用ps -afx | grep httpd 找到你所要找的web服务器安装信息;在http.conf 里找到access日志的所在位置用 tail -f 阅读全文>
发表于 @ 2009年05月15日 13:01:00|评论(loading...)|编辑|举报|收藏
2009年05月12日
在ie6下,在window.onload 或者是 jquery的$(document).ready方法用document.getElementById('xx').innerHTML给页面赋值的时候,如果在字符串内有图片存在的话就会有多少张相同图片就会请求多少次,这样的话,就会出现卡页面的问题。
查找其原因,发现是ie6的bug:背景图片不缓存!在ff下,ie>6下都没有问题。
用了google上的解决方案是用new Image()方法和 setTimeout方法,在实践当中,问题没有解决,最后在ie的api上找到了解决方案:
document.execCommand('BackgroundImageCache', false, true);
如果页面上有图片的话,就可以用css方法写成背景图方式写入。
阅读全文>
发表于 @ 2009年05月12日 12:53:00|评论(loading...)|编辑|举报|收藏
2009年02月02日
表单的多文件选择的实现 阅读全文>
发表于 @ 2009年02月02日 13:04:00|评论(loading...)|编辑|举报|收藏
2009年01月15日
引入方式 在系统中引入的方式为js引入方式。//jquery基类引入//jquery日历插件引入//jquery文件上传插件引入//tinymce引入阅读全文>
发表于 @ 2009年01月15日 18:32:00|评论(loading...)|编辑|举报|收藏
2008年11月04日
在 FROM 子句中指定外联接时,可以由下列几组关键字中的一组指定: LEFT JOIN 或 LEFT OUTER JOIN。 左向外联接的结果集包括 LEFT OUTER 子句中指定的左表的所有行,而不仅仅是联接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。 RIGHT JOIN 或 RIGHT OUTER JOIN。 右向外联接是左向外联接的反向联接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。 FULL JOIN 或 FULL OUTER JOIN。 完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。 仅当至少有一个同属于两表的行符合联接条件时,内联接才返回行。内联接消除与另一个表中的任何行不匹配的行。而外联接会返回 FROM 子句中提到的至少一个表或视阅读全文>
发表于 @ 2008年11月04日 20:22:00|评论(loading...)|编辑|举报|收藏
选表类型:
mysql的myisam表适合读操作大,写操作少;表级锁表
innodb表正好相反;行级锁表
互联网服务,不算支付性的服务外,互动产品,新闻系统等等一般都是读多,写少。用myisam表比较合适。
表的设计
定长表:所有列的字段长度都是定长的。可以去查mysql的手册不定长字段是VARCHAR、BLOB或TEXT。int char都是定长的,定长表占用空间会大。
动态表:就是字段不是都定长的。
定长表要比动态表检索速度快。
软件系统的设计习惯是把每张表都分清很明确的功能,比如用户表都是用户信息,如果需要同时从留言表取数据,又从用户表取用户信息的时候,就会采用联合查 询,有的时候一些操作还会用left,join等各种复杂sql语句,没准还要用mysql的函数。如果是针对访问量,读取量很大的互联网服务时,同时并 发去读,数据量又大,很可怕。最好是如果数据不会修改,在常用的表上有冗余字段,能够做到一次读,把数据都拿到;可以有冗余的写操作,但减少复杂的查询操 作。
在设计表的时候要将阅读全文>
发表于 @ 2008年11月04日 20:05:00|评论(loading...)|编辑|举报|收藏
/**
* *找俩个路径之间的相对路径函数
*
* @param data $tag 标志位,1是相对于2的
* @param string$path_1
* @param string $path_2
* @return string
*/
function positionrelative($tag=1,$path_1,$path_2)
{
$arr_1=explode('/',$path_1);
$arr_2=explode('/',$path_2);
$str='';
$lenth_1=count($arr_1);
$lenth_2=count($arr_2);
//确认深度
if($tag==1)$num=($lenth_1>$lenth_2)?min($lenth_1,$lenth_2):max($lenth_1,$lenth_2);
else$num=($lenth_1>$len阅读全文>
发表于 @ 2008年11月04日 19:42:00|评论(loading...)|编辑|举报|收藏
2008年10月12日
alpha表明发行包含大量未被彻底测试的新代码。已知的缺陷应该在新闻小节被记录。在大多数alpha版本中也有新的命令和扩展。alpha版本也可能有主要代码更改等开发。但我们在发布前一定对其进行测试。
·beta意味着该版本功能是完整的,并且所有的新代码被测试了,没有增加重要的新特征,应该没有已知的缺陷。当alpha版本至少一个月没有出现报导的致命漏洞,并且没有计划增加导致已经实施的功能不稳定的新功能时,版本则从alpha版变为beta版。阅读全文>
发表于 @ 2008年10月12日 09:48:00|评论(loading...)|编辑|举报|收藏
2008年10月10日
今天在VMWare上准备搭建下LMAP环境,看了下RPM包里装的APACHE的版本很老,是APACHE2.0版本的,这个版本对SSL的支持还不够好,所以要重装下,
网上看了些文章,了解了下流程,
1.第一步首先要检查下RPM包的依赖关系咯.
查了下,检查依赖关系有俩重方法
shell>rpm -e --test httpd
这个方法所检测的结果比较多,也比较详细
httpd-mmn = 20020628 is needed by (installed) mod_perl-1.99_07-5
httpd-mmn = 20020628 is needed by (installed) mod_python-3.0.1-3
httpd-mmn = 20020628 is needed by (installed) mod_ssl-2.0.40-21阅读全文>
发表于 @ 2008年10月10日 15:55:00|评论(loading...)|编辑|举报|收藏
"|",是unix很有用的一个用法,俗称管道,把一个命令的输出作为下个命令的输入:
rmp -qa "-q 查找 ; -a all所有;
grep 正则表达匹配
所以,这个命令的含义就是" 查找所有和HTTPD服务相关的";阅读全文>
发表于 @ 2008年10月10日 15:27:00|评论(loading...)|编辑|举报|收藏
1. grep简介
grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包括grep、 egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, fgrep就是 fixed grep或fast grep,它们把所有的字母都看作单词,也就是说,正则表达式中的元字符表示回其自身的字面意义,不再特殊。linux 使用GNU版本的grep。它功能更强,可以通过-G、-E、-F命令行选项来使用egrep和fgrep的功能。
grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到屏幕,不影响原文件内容。
grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板阅读全文>
发表于 @ 2008年10月10日 15:00:00|评论(loading...)|编辑|举报|收藏
安全地卸载
RPM卸载软件包,并不是简单地将原来安装的文件逐个删除,那样做的话,可能会出现这样或那样的问题。如,A软件包依靠B软件包做某些工作,若B软件包卸载了,则A软件包就不能正常运行了。RPM为用户安全考虑,会做某些检查,尽可能排除出错的情况。
RPM在卸载软件包时,分步骤进行如下操作:
1. 检查依赖(Denpendency)
检查依赖的目的,在于确保当前没有任何软件包依赖于当前要卸载的软件包。
2. 执行卸载前触发脚本程序(Triggerun)
3. 执行卸载前脚本程序(Preuninstall)
本程序为软件包制作者设定,完成卸载前的一些工作,具体如,要卸载的软件包中某个
程序当前正在运行时,脚本程序必须杀掉它,否则无法正确卸载。
4. 检查配置文件(Configfiles)
RPM卸载软件包前会检查包中的配置文件是否修改了,如果修改了,RPM要换个名字保存
该阅读全文>
发表于 @ 2008年10月10日 09:48:00|评论(loading...)|编辑|举报|收藏