正在加载...
 
  • 共11文章
  • 1
  • 2
  • >
[转]Memcached深度分析  

来源:http://www.54np.com/docs/mc.html


Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。关于这个东西,相信很多人都用过,本文意在通过对memcached的实现及代码分析,获得对这个出色的开源软件更深入的了解,并可以根据我们的需要对其进行更进一步的优化。末了将通过对BSM_Memcache扩展的分析,加深对memcached的使用方式理解。

本文的部分内容可能需要比较好的数学基础作为辅助。

阅读全文...
标签:技术研究,LAMP | 浏览数(1186) | 评论数(1) | 2007-04-19
[转]基于JSON的高级AJAX开发技术  

一、 引言

毫无疑问,AJAX已经成为当今Web开发中一种强有力的用户交互技术,但是它的许多可能性应用仍然鲜为人知。在本文中,我们将来共同探讨如何使用JavaScript对象标志(JSON)和JSON分析器在服务器和客户端AJAX引擎之间创建复杂而强有力的JSON数据传输层。我们将详细讨论如何创建一组对象(在其它语言中经常被当作一个包),如何把这些对象串行化为JSON以发送到服务器端,以及如何把服务器端JSON反串行化为客户端JavaScript对象。

提示:你可以在Douglas Crockford的网站上找到本文中使用的JSON分析器。

在继续阅读前,本文假定你已经掌握了JavaScript技术并且了解如何创建一个基本的AJAX引擎,并经由AJAX技术向服务器端发出请求和从服务器端接收响应。为了更好地理解本文中示例,你需要下载本文相应的源码文件。

阅读全文...
标签:Javascript,技术研究,LAMP | 浏览数(1225) | 评论数(0) | 2007-04-09
[转]Apache 2: MPM的引入带来性能改善  

Apache 2.0在性能上的改善最吸引人。在支持POSIX线程的Unix系统上,Apache可以通过不同的MPM运行在一种多进程与多线程相混合的模式下,增强部分配置的可扩充性能。相比于Apache 1.3,2.0版本做了大量的优化来提升处理能力和可伸缩性,并且大多数改进在默认状态下即可生效。但是在编译和运行时刻,2.0也有许多可以显著提高性能的选择。本文不想叙述那些以功能换取速度的指令,如HostnameLookups等,而只是说明在2.0中影响性能的最核心特性:MPM(Multi-Processing Modules,多道处理模块)的基本工作原理和配置指令。

  毫不夸张地说,MPM的引入是Apache 2.0最重要的变化。大家知道,Apache是基于模块化的设计,而Apache 2.0更扩展了模块化设计到Web服务器的最基本功能。服务器装载了一种多道处理模块,负责绑定本机网络端口、接受请求,并调度子进程来处理请求。扩展模块化设计有两个重要好处:

  ◆ Apache可以更简洁、有效地支持多种操作系统;

  ◆ 服务器可以按站点的特殊需要进行自定制。

  在用户级,MPM看起来和其它Apache模块非常类似。主要区别是在任意时刻只能有一种MPM被装载到服务器中。

阅读全文...
标签:技术研究,LAMP | 浏览数(1034) | 评论数(0) | 2007-04-09
[转]MySQL中SQL优化和架构设计的一些简单想法  

普通MySQL运行,数据量和访问量不大的话,是足够快的,但是当数据量和访问量剧增的时候,那么就会明显发现MySQL很慢,甚至down掉,那么就要考虑优化我们的MySQL了。

优化无非是从三个角度入手:
第一个是从硬件,增加硬件,增加服务器
第二个就是对我们的MySQL服务器进行优化,增加缓存大小,开多端口,读写分开
第三个就是我们的应用优化,建立索引,优化SQL查询语句,建立缓存等等

我就简单的说说SQL查询语句的优化。因为如果我们Web服务器比数据库服务器多或者性能优良的话,我们完全可以把数据库的压力转嫁到Web服务器上,因为如果单台MySQL,或者 Master/Slave 架构的数据库服务器都负担比较重,那么就可以考虑把MySQL的运算放到Web服务器上去进行。当然了,如果你Web服务器比数据库服务器差,那就把压力放在数据库服务器上吧,呵呵。

如果是把MySQL服务器的压力放在Web服务器上,那么很多运算就需要我们的程序去执行,比如Web程序中全部交给PHP脚本去处理数据。单台MySQL服务器,查询、更新、插入、删除都在一台服务器上的话,访问量一大,你会明显发现锁表现象,当对一个表进行更新删除操作的时候,就会拒绝其他操作,这样就会导致锁表,解决这个问题最简单直接的办法就是拿两台MySQL服务器,一台负责查询(select)操作,另外一台负责更改(update/delete/insert),然后进行同步,这样能够避免锁表,如果服务器更多,那么就更好处理了,可以采用分布式数据库架构和数据的散列存储,下面我们会简单说一下。

 

阅读全文...
标签:技术研究,LAMP | 浏览数(1280) | 评论数(0) | 2007-04-09
[转]Apache的一些必要的mod安装  

PS:
Apache强大指出在于方便的插件和模块技术,这里安装的是部分不常用但是很不错的模块,包括:防范拒绝服务器攻击的mod_evasive,用于防注入等安全性防范的mod_security,以及对网页进行压缩的mod_deflate等等模块

 

阅读全文...
标签:技术研究,LAMP | 浏览数(1266) | 评论数(0) | 2007-04-09
[转]PHP中GBK和UTF8编码处理  

来源:http://blog.csdn.net/heiyeshuwu/archive/2007/01/20/1488900.aspx

一、编码范围

1. GBK (GB2312/GB18030)
\x00-\xff  GBK双字节编码范围
\x20-\x7f  ASCII
\xa1-\xff  中文
\x80-\xff  中文

2. UTF-8 (Unicode)
\u4e00-\u9fa5 (中文)
\x3130-\x318F (韩文
\xAC00-\xD7A3 (韩文)
\u0800-\u4e00 (日文)
ps: 韩文是大于[\u9fa5]的字符


正则例子:
preg_replace("/([\x80-\xff])/","",$str);
preg_replace("/([u4e00-u9fa5])/","",$str);

阅读全文...
标签:技术研究,LAMP | 浏览数(1129) | 评论数(0) | 2007-04-09
在网上看到使用PHP实现常见的数据结构和算法  

偶然使用google的代码搜索里面发现一个使用php实现的基本的数据结构和算法,什么二叉树、二叉搜索树、AVL树、B树、链表和常见排序、搜索算法等等,而且全部是使用面向对象来实现的,确是是很强。

源码地址:http://www.brpreiss.com/books/opus11/public/Opus11-1.0.tar.gz

文档地址:http://www.brpreiss.com/books/opus11/

标签:技术研究,LAMP | 浏览数(1194) | 评论数(0) | 2007-04-09
优化MySQL数据库性能的八大“妙手”  

本文探讨了提高MySQL 数据库性能的思路,并从8个方面给出了具体的解决方法。

阅读全文...
标签:技术研究,LAMP | 浏览数(1466) | 评论数(0) | 2006-11-10
  • 共11文章
  • 1
  • 2
  • >

Powered by Haiwit