Blog

52 search results for:

31

MySQL性能优化-经典版

/ in Blog / by Terry
对于MySQL性能优化的文章可以说是成千上万,不过大多数都是拷贝和粘贴,或者没有细化。这里虽然是老调重弹,但希望能有不一样的新意给大家分享。 添加索引 1. 在经常访问的列上添加索引 注意:很小的表不需要建立索引表。因为索引会占用一定的额外的磁盘空间,每个索引字段都要求MySQL在这个字段和数据库中的具体位置上为每条记录保存信息。 2. 未加索引之前的分析 例如:EXPLAIN select * from users where login LIKE '%lily%'; 3. 增加索引后的分析 我们给login字段增加一个索引,然后再使用EXPLAIN 关键字分析。 例如:EXPLAIN select * from users where login LIKE '%lily%';我们使用SHOW STATUS…
32

PHP开发中的缓存加速技术

/ in Blog / by Terry
除了从代码级别来提高PHP的运行速度,就要考虑采用缓存加速技术了。 到目前为止有一些可选的解决方案,包括eAccelerator,APC,Zend Platform for Performance Suite(付费),PHP Accelerator等。 这些都是属于缓存模块,他们会把第一次对.PHP 文件的请求产生的中间代码存储在Web服务器和内存中,然后对以后的请求返回“编译好”的版本。 这样减少了磁盘读写,而且都在内存中工作,因此使用eAccelerator或APC这些工具能够很明显地提高PHP引擎的解释速度及客户端页面的装载时间。 下面介绍在Linux和Windows系统中如何使用eAccelerator 和 APC工具来加速缓存。 eAccelerator eAccelerator的官方网站为https://eaccelerator.net,它分为UNIX和Windows版本两种,你可以根据自己的环境下载安装。 下面介绍在Windows环境的安装和配置 在Windows环境下安装很简单,只需要到https://www.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_build 上下载和系统匹配的PHP 版本扩展库,如下载eAccelerator095_i284_5.2.1.dll(匹配PHP5.2),把它放置在PHP的扩展目录中,如c:phpext。 然后在PHP.ini配置文件中加上下面的语句,如果已经安装了Zend Optimizer,那么下面句子一定要在[ZEND]标识符的前面。 [eAccelerator] zend_extension_ts=eAccelerator095_5.2.0.dll eaccelerator.shm_size="64" eaccelerator.cache_dir="d:/tmp" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.debug="0" eaccelerator.check_mtime="1" eaccelerator.filter=""…
33

网站开发中的HTTP加速

/ in Blog / by Terry
PHP 应用程序可以将网页缓存设置得非常优化。方法有两个: 一个缓存设置友好的应用程序应该告诉浏览器或代理服务器用什么策略来缓存数据,例如什么时间更新等。 以下是4种HTTP头信息,我们可以根据需要加入到PHP脚本中: 1. Last-Modified 2. Expires 3. Pragma:no-cache 4. Cache-Control 使用例子如下: function http_nocache_headers(){ //设置此页的最后更新日期(用格林威治时间表示)为当天,强制浏览器获取最新内容 $pretty_modtime = gmdate('D,d M Y H:i:s','GMT'); header("Last-Modified:$pretty_modtime"); header('Expires',$pretty_modtime); //告诉客户浏览器不使用缓存,HTTP 1.1 协议 header("Cache-Control:no-cache,must-revalidate"); //告诉客户浏览器不使用缓存,HTTP 1.0…
34

跟踪网页设计Bug的技能

/ in Blog / by Terry
跟踪网页设计的bug的第一步是检查你的HTML 和CSS,检查打字或语法错误。某些显示错误是由于浏览器以混杂模式显示页面造成的。因此,最好检查使用的是否符合自己的标识语言的DOCTYPE,从而让页面以标准模型来显示。可以通过安装Firefox开发人员工具条,了解页面将以什么模式显示。 如果页面以混杂模式显示,那么工具条最右边的对钩符号是灰色的,如果页面以标准模式显示,那么对钩符号是绿色的。可通过单击对钩符合来获得页面更多信息,并且显示地定义显示模式。 许多Windows开发人员以前主要使用IE浏览器开发页面,所以每次修改页面后,他们会在IE中预览页面,看看效果是否正确。在页面差不多准备好之后,他们在各个浏览器中进行测试并尽可能修改任何的Bug,但是,这样做可能会导致许多长期的问题。IE6是一个名声狼藉的浏览器,有很多Bug和几个重要的CSS缺陷。 如果使用IE作为主要开发浏览器,许多开发人员会错误地把IE的表现解释为正确,因此反而认为现在浏览器“破坏”了他们精心布置的CSS布局。实际上是IE破坏,它与现代标准浏览器存在不兼容。 所以选择更符合标准的浏览器(例如Firefox或Safari)作为主要的开发浏览器是为更安全的开发方法。如果你的布局在这其中一个浏览器中工作正常,那么它可能在所有符合标准的浏览器中都会表现正常,这样的做法是正确的。 但在消除网页中的Bug的一个最好方法应该是从一开始就要避免问题。许多Bug是由过分复杂的HTML或CSS造成的。因此,应该尽可能使用简单的代码实现所需的结果。所以要避免使用过分花俏的技术,只在绝对必须的情况在才使用hack。 如果使实现同一个效果有许多方法,在花费数小时调试某种技术之前,应该考虑是否可以采用另一种方法,只有在确认了没有解决问题的简单办法之后,才应该开始考虑复杂的解决方案。 在设计过程中出现了Bug,就需要尽力隔离问题,通过隔离问题和识别症状,有可能查明问题的原因并修复它。隔离问题的一种方法就是在相关的元素上应用边框或轮廓,看看它们的反应;或者尝试修改几个属性,看看它们是否影响Bug,如果有影响,查明是怎么影响的;尝试使用Bug的效果扩大化是有帮助的;或者尝试一些常见的解决方案,例如将position属性设置为relative,将display属性设置为inline或者设置宽度等尺寸,就可以修复许多Bug. 如果问题比较棘手,应该考虑创建一个基本测试案例。具体做法,(待续)。
35
36

顶级奉献 – 可视化无限极菜单或结构创建(原创100%)

/ in Blog / by Terry
目前互联网充斥着各式各样的创建菜单的功能,有些是限制级菜单,有些是需要繁琐的填写排列序号等,或有些没能可视化地清晰表现出整个菜单的布局或外观,2011年科技日新月异的时代,难道我们怎么还能被这些困扰着落后着!就让我们开始吧。。。 正好公司在开发项目的之际,为了能给使用者提供更方便的操作,所以开发了一个可视化无限极菜单,由于本项目是基于CodeIgniter 1.7 的MVC的框架开发,并项目属于公司内部机密,没有案例展示给大家看,仅此把几个递归算法和大家分享,另外附上 菜单使用到的 css/html/Javascritp. //======用于构建菜单的三个递归算法函数===CopyRight Terry 2011-05-25============================================ //创建多维菜单数组 function _CreateMenuArray($rdarray = array(),$keynum = 0) { $newarray = array(); if(is_array($rdarray)) { foreach($rdarray as $key => $value) { $num =…

Need Translation Service?

Please enter your personal details and we will contact you shortly.