上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 59 下一页
  2012年12月28日
摘要: <?php其他 isset() 变量是否存在 boolean empty() 检查变量是否存在,并判断值是否为非空或非0 void unset() 销毁变量 header('Content-Type: text/html; charset=utf-8'); method_exists($obj, $method) 判断对象的方法是否可用 file_exists($file) 判断文件是否存在 function_exists(); class_exists($class_name); gettype();获取数据类型 set... 阅读全文
posted @ 2012-12-28 14:29 一个人的天空@ 阅读(3923) 评论(0) 推荐(0) 编辑
摘要: 1、升级硬件的一般规则:对于 PHP 脚本而言,主要的瓶颈是 CPU ,对于静态页面而言,瓶颈是内存和网络。一台 400 Mhz 的普通奔腾机器所下载的静态页面就能让 T3 专线(45Mbps)饱和。2、Apache 处理 PHP 脚本的速度要比静态页面慢 2-10 倍,因此尽量采用多的静态页面,少的脚本。3、PHP 脚本如果不做缓冲,每次调用都需要编译,因此,安装一个 PHP 缓冲产品能提升 25-100% 的性能。4、把基于文件的会话切换到基于共享内存的会话。编译 PHP 时采用 --with-mm 选项,在 php.ini 中设置setsession.save_handler=mm 。这 阅读全文
posted @ 2012-12-28 14:25 一个人的天空@ 阅读(10643) 评论(0) 推荐(0) 编辑
摘要: 平时用linux时,我有一个习惯就是把遇到的,比较有用,并且容易忘的命令,放到一个文本文件中,没事的时候可以拿出来看看,这样可以加深映像,时间长了这些命令的用法基本上都能掌握了。以下是100个用法,有什么不对,还请大家指正。1,echo "aa" > test.txt 和 echo "bb" >> test.txt //>将原文件清空,并且内容写入到文件中,>>将内容放到文件的尾部2,chmod go+w -R /home/zhangy //给组用户和其他用户添加写的权限3,tar -tzvf test.tar.gz 阅读全文
posted @ 2012-12-28 10:44 一个人的天空@ 阅读(811) 评论(0) 推荐(0) 编辑
摘要: 网页的缓存是由HTTP消息头中的“Cache-control”来控制的,常见的取值有private、no-cache、max-age、must-revalidate等,默认为private。其作用根据不同的重新浏览方式分为以下几种情况:(1) 打开新窗口值为private、no-cache、must-revalidate,那么打开新窗口访问时都会重新访问服务器。而如果指定了max-age值,那么在此值内的时间里就不会重新访问服务器,例如:Cache-control: max-age=5(表示当访问此网页后的5秒内再次访问不会去服务器)(2) 在地址栏回车值为private或must-reval 阅读全文
posted @ 2012-12-28 10:41 一个人的天空@ 阅读(15030) 评论(0) 推荐(1) 编辑
摘要: 1.网络IO模型 Memcached是多线程,非阻塞IO复用的网络模型,分为监听主线程和worker子线程,监听线程监听网络连接,接受请求后,将连接描述字pipe 传递给worker线程,进行读写IO, 网络层使用libevent封装的事件库,多线程模型可以发挥多核作用,但是引入了cache coherency和锁的问题,比如,Memcached最常用的stats 命令,实际Memcached所有操作都要对这个全局变量加锁,进行计数等工作,带来了性能损耗。(Memcached网络IO模型) Redis使用单线程的IO复用模型,自己封装了一个简单的AeEvent事件处理框架,主要实现了epo.. 阅读全文
posted @ 2012-12-28 10:27 一个人的天空@ 阅读(2291) 评论(0) 推荐(2) 编辑
  2012年12月27日
摘要: Memcached概念: Memcached是一个免费开源的,高性能的,具有分布式对象的缓存系统,它可以用来保存一些经常存取的对象或数据,保存的数据像一张巨大的HASH表,该表以Key-value对的方式存在内存中。官网下载地址: http://www.memcached.org/运行环境: linux,BSD,windows都可跑协议理论:http://code.sixapart.com/svn/memcached/trunk/server/doc/protocol.txt (英文)操作流程:1、检查客户端的请求数据是否在memcached中,如有,直接把请求数据返回,不再对数据库进行任何操 阅读全文
posted @ 2012-12-27 17:31 一个人的天空@ 阅读(1718) 评论(0) 推荐(2) 编辑
摘要: 1、启动Memcache 常用参数-p <num> 监听的TCP端口(默认: 11211)-U <num> UDP监听端口 (默认: 11211, 0 时关闭)-d 以守护进程方式运行-u <username> 运行运行 Memcached的账户 非root用户-m <num> 最大的内存使用单位是MB 默认是64MB-c <num> 软连接数量默认是1024-v 输出警告和错误信息-vv 打印客户端的请求和返回信息-h 打印帮助信息-i 打印memcached和libevent的版权信息-l <ip_addr> 绑定地址 阅读全文
posted @ 2012-12-27 17:30 一个人的天空@ 阅读(1837) 评论(0) 推荐(0) 编辑
摘要: Memcached是一个高效的分布式内存cache,了解memcached的内存管理机制,便于我们理解memcached,让我们可以针对我们数据特点进行调优,让其更好的为我所用。这里简单谈一下我对memcached的内存管理的一些认识,在没有特别注明的情况下,这里谈到的memcached是1.2版本,1.1和1.2版本有一些差异。基本概念:Slab和chunk在Memcached内存结构中有两个非常重要的概念:slab 和 chunk,我们先从下图中对这两个概念有一个感性的认识:图1 memcached内存结构Slab是一个内存块,它是memcached一次申请内存的最小单位。在启动memca 阅读全文
posted @ 2012-12-27 17:01 一个人的天空@ 阅读(2548) 评论(0) 推荐(0) 编辑
摘要: 一,什么负载均衡一个新网站是不要做负载均衡的,因为访问量不大,流量也不大,所以没有必要搞这些东西。但是随着网站访问量和流量的快速增长,单台服务器受自身硬件条件的限制,很难承受这么大的访问量。在这种情况下,有二种方案可以选择:1,对单台服务器的硬件进行更新,由双核的变成四核的,内存加大等。2,增加服务器的台数,来分担服务器的负担。以实现增加网络带宽,增加服务器的处理能力的目的。第一种方法可以理解为纵向发展,这种方法总是有限。第二种方法才是解决问题的正确选择实现负载均衡的方法,大至分为二个方向,一种是用软件来实现负载均衡,另一种是硬件实现负载均衡(包括结合硬件和软件)用软件来实现负载均衡,实现负载 阅读全文
posted @ 2012-12-27 16:30 一个人的天空@ 阅读(24873) 评论(4) 推荐(7) 编辑
摘要: 前段时间趁空把《大规模web服务开发技术》这本书看完了,今天用一下午时间重新翻了一遍,把其中的要点记了下来,权当复习和备忘。由于自己对数据压缩、全文检索等还算比较熟,所以笔记内容主要涉及前5章内容,后面的零星记了一些。本文可能对如下人士比较有帮助:1、对这本书有兴趣,但对内容存疑的;2、对大规模Web服务有一定经验的,可对照着查漏补缺。Hatena的规模(2010年4月)注册用户150w,UU1900w/月请求数:几十亿/月繁忙时流量:850Mbps(不含图像)硬件(服务器)600台,通过虚拟化技术,主机超过1300台日志每天几GB级别,数据库GB到TB级别系统增长的战略最小化开端、预见变化的 阅读全文
posted @ 2012-12-27 16:23 一个人的天空@ 阅读(407) 评论(0) 推荐(0) 编辑
摘要: mysql的sql语句优化都使用explain,但是这个没有办法知道详细的Memory/CPU等使用量MySQL Query Profiler, 可以查询到此 SQL 语句会执行多少, 并看出 CPU/Memory 使用量, 执行过程 System lock, Table lock 花多少时间等等.mysql> show variables like 'profiling%';+------------------------+-------+| Variable_name | Value |+------------------------+-------+| prof 阅读全文
posted @ 2012-12-27 11:50 一个人的天空@ 阅读(308) 评论(0) 推荐(1) 编辑
摘要: 之前写过一个篇【HTTP协议详解】,这次介绍代理服务器, 代理服务器是HTTP协议中一个重要的组件, 发挥着重要的作用。 本文介绍一些HTTP代理服务器的概念和工作原理阅读目录什么是代理服务器Fiddler就是个典型的代理代理作用一:FQ代理作用二:匿名访问代理作用三:通过代理上网代理作用四:通过代理缓存,加快上网速度代理作用五:儿童过滤器IE代理设置:手动设置代理IE代理设置:使用自动配置脚本(PAC)IE代理设置:自动探测设置(WPAD)代理认证,407状态码使用代理服务器的安全问题如何搭建代理服务器什么是代理服务器Web代理(proxy)服务器是网络的中间实体。 代理位于Web客户端和W 阅读全文
posted @ 2012-12-27 10:36 一个人的天空@ 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 之前写过一个篇【HTTP协议详解】,这次继续介绍HTTP协议中的压缩。本文会使用Fiddler来查看HTTP request和Response, 如果不熟悉这个工具,可以先参考[Fiddler教程]HTTP压缩是指: Web服务器和浏览器之间压缩传输的”文本内容“的方法。 HTTP采用通用的压缩算法,比如gzip来压缩HTML,Javascript, CSS文件。 能大大减少网络传输的数据量,提高了用户显示网页的速度。当然,同时会增加一点点服务器的开销。 本文从HTTP协议的角度,来理解HTTP压缩这个概念。阅读目录HTTP内容编码和HTTP压缩的区别HTTP压缩的过程实例:用Fiddler观 阅读全文
posted @ 2012-12-27 10:19 一个人的天空@ 阅读(240) 评论(0) 推荐(0) 编辑
摘要: http协议是无状态的, 浏览器和web服务器之间可以通过cookie来身份识别。 桌面应用程序(比如新浪桌面客户端, skydrive客户端)跟Web服务器之间是如何身份识别呢?阅读目录什么是HTTP基本认证HTTP基本认证的过程HTTP基本认证的优点每次都要进行认证HTTP基本认证和HTTPS一起使用就很安全HTTP OAuth认证其他认证客户端的使用什么是HTTP基本认证桌面应用程序也通过HTTP协议跟Web服务器交互, 桌面应用程序一般不会使用cookie, 而是把 "用户名+冒号+密码"用BASE64算法加密后的字符串放在http request 中的header 阅读全文
posted @ 2012-12-27 09:27 一个人的天空@ 阅读(315) 评论(0) 推荐(0) 编辑
  2012年12月26日
摘要: 当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。使用Fiddler工具非常方便地捕获HTTP Request和HTTP Response, 关于Fiddler工具的用法,请看我另一篇博客[Fiddler 教程]阅读目录什么是HTTP协议Web服务器,浏览器,代理服务器URL详解HTTP协议是无状态的打开一个网页需 阅读全文
posted @ 2012-12-26 15:02 一个人的天空@ 阅读(346) 评论(0) 推荐(0) 编辑
上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 59 下一页