文章分类 -  php

上一页 1 2 3 4 5
常见的网站服务器架构
摘要:简单说下以下的架构都是在假设已经优化过linux内核的情况下进行初级篇:(单机模式)假设配置:(Dual core 2.0GHz,4GB ram,SSD)基础框架:apache(PHP) + Mysql / IIS + MSSQL(最基础框架,处理一般访问请求)进阶1:替换Apache为Nginx,并在数据库前加上cache层【数据库的速度是最大的瓶颈】 Nginx(PHP) + Memcache + Mysql (此时已经具备处理小型访问量的能力)进阶2:随着访问量的上涨,最先面临的问题就来了:CGI无法匹配上Nginx的高IO性能,这时候可以通过写扩展来替代脚本程... 阅读全文
posted @ 2013-09-09 19:09 mynetstudy 阅读(232) 评论(0) 推荐(0)
转:神奇的Fastcgi_Finish_Request
摘要:当PHP运行在FastCGI模式时,PHP FPM提供了一个名为fastcgi_finish_request的方法。按照文档上的说法,此方法可以提高请求的处理速度,如果有些处理可以在页面生成完后再进行,就可以使用这个方法。听起来可能有些茫然,我们通过几个例子来说明一下:通过浏览器(不是命令行!)运行此脚本,结果发现并没有输出相应的字符串,但却生成了相应的文件。由此说明在调用fastcgi_finish_request后,客户端响应就已经结束,但与此同时服务端脚本却继续运行!合理利用这个特性可以大大提升用户体验,趁热打铁再来一个例子:代码里用sleep模拟耗时的操作,浏览时没有被堵塞,程序却都执 阅读全文
posted @ 2013-09-09 09:57 mynetstudy 阅读(401) 评论(0) 推荐(0)
PHP开发经验分享
摘要:上次参加了2013PHP技术峰会,非常精彩,很受益。最近空闲下来,把嘉宾的PPT下载下来看了一通,当然有大牛的主题对我这个菜鸟来说还是看不懂。这里摘录了@高春辉 老师的《Bug Free 的 PHP 开发实践分享》的主题分享内容,我觉得很有价值很有实践指导意义,没有晦涩的技术流,但是很多都是PHP实践中值得注意的细节点。要想代码写的好,前提配置做的好error_reporting = E_ALL | E_STRICTdisplay_errors = 测试机设置为 On,生产机设置为 Offdisplay_startup_errors = Onlog_errors = Onerror_log = 阅读全文
posted @ 2013-09-09 09:37 mynetstudy 阅读(201) 评论(0) 推荐(0)
转:PHP 5.3 与 PHP 5.2 开发区别和新特性
摘要:PHP V5.3 发布已经很久。“PHP V5.3 中的新特性” 系列文章将持续介绍该发行版提供的令人兴奋的新特性。 第 1 部分 介绍了 PHP 5.3 中对面向对象编程及对象处理所做的更改, 第 2 部分 介绍了闭包函数及 lambda 函数。 第 3 部分 探讨了名称空间,这是该 PHP 版本中最令人期待也是最具争议的特性之一。 第 4 部分 中,我们进一步研究了 Phar,这是一种用于 PHP 的归档格式。 简介 本系列着重介绍 PHP V5.3 中的新特性,例如名称空间、闭包、对象管理、面向对象编程和 Phar。虽然这些动人的新特性作为该语言的增补广受欢迎,但 PHP V5.3 .. 阅读全文
posted @ 2013-09-06 17:26 mynetstudy 阅读(306) 评论(0) 推荐(0)
转:Redis学习笔记9--Redis持久化
摘要:redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持四种持久化方式,一是 Snapshotting(快照)也是默认方式;二是Append-only file(缩写aof)的方式;三是虚拟内存方式;四是diskstore方式。下面分别介绍之。(一)Snapshotting 快照是默认的持久化方式。这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。可以通过配置设置自动做快照持久化的方式。我们可以配置redis在n秒内如果超过m个key被修改就自动做快照,下面是默认的快照保存配置:save 90 阅读全文
posted @ 2013-08-31 00:11 mynetstudy 阅读(165) 评论(0) 推荐(0)
转:PHP网站在Linux服务器上安全设置方案
摘要:PHP网站在Linux服务器上安全设置方案本文总结了PHP网站在Linux服务器上一些安全设置(ps:还有一些设置给忘了),在《lnmp一键安装包》大多数参数已经包含,如果有什么更多的设置,大家一起讨论学习PHP安全配置 1. 确保运行php的用户为一般用户,如www2. php.ini参数设置 disable_functions = passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_restore,dl,openlog,syslog,readlink,symli 阅读全文
posted @ 2013-08-21 09:27 mynetstudy 阅读(296) 评论(0) 推荐(0)
使用渐进式JPEG来提升用户体验
摘要:今天才认识到原来JPEG文件有两种保存方式他们分别是Baseline JPEG(标准型)和Progressive JPEG(渐进式)。两种格式有相同尺寸以及图像数据,他们的扩展名也是相同的,唯一的区别是二者显示的方式不同。 Baseline JPEG 这种类型的JPEG文件存储方式是按从上到下的扫描方式,把每一行顺序的保存在JPEG文件中。打开这个文件显示它的内容时,数据将按照存储时的顺序从 上到下一行一行的被显示出来,直到所有的数据都被读完,就完成了整张图片的显示。如果文件较大或者网络下载速度较慢,那么就会看到图片被一行行加载的效 果,这种格式的JPEG没有什么优点,因此,一般都推荐使用Pr 阅读全文
posted @ 2013-08-05 21:57 mynetstudy 阅读(186) 评论(0) 推荐(0)
转:Yupoo(又拍网)的系统架构
摘要:Yupoo!(又拍网) 是目前国内最大的图片服务提供商,整个网站构建于大量的开源软件之上。以下为其使用到的开源软件信息:操作系统:CentOS、MacOSX、Ubuntu服务器:Apache、Nginx、Squid数据库:MySQLmochiweb、MySQLdb服务器监控:Cacti、Nagios、开发语言:PHP、Python、Erlang、Java、Lua分布式计算:Hadoop、Mogilefs、日志分析:AWStats任务管理:Redmine消息系统:RabbitMQ、php-amqp前端框架:Mootools缓存系统:Memcached、php-memcached、libmemca 阅读全文
posted @ 2013-07-23 23:03 mynetstudy 阅读(347) 评论(0) 推荐(0)
转:php版memcached一致性hash方法分布缓存
摘要:最近在看一些分布式方面的文章,所以就用php实现一致性hash来练练手,以前一般用的是最原始的hash取模做 分布式,当生产过程中添加或删除一台memcache都会造成数据的全部失效,一致性hash就是为了解决这个问题,把失效数据降到最低,相关资料可以 google一下!php实现效率有一定的缺失,如果要高效率,还是写扩展比较好经测试,5个memcache,每个memcache生成100个虚拟节点,set加get1000次,与单个memcache直接set加get慢5倍,所以效率一般,有待优化!实现过程:memcache的配置 ip+端口+虚拟节点序列号 做hash,使用的是crc32,形成一 阅读全文
posted @ 2013-07-21 00:07 mynetstudy 阅读(214) 评论(0) 推荐(0)
转:Memcached详解
摘要:Memcached绝对称得上是NoSQL老兵!可惜随着时间的推移,Redis等后起之秀羽翼渐丰,Memcached相比之下已呈颓势。那我们还用不用学习它?答案是肯定的!毕竟仍然有很多项目依赖着它,如果忽视它,一旦出了问题就只有干瞪眼的份儿了。网络上关于Memcached的资料可以说是浩如烟海,其中不乏一些精彩之作,比如说由爱好者翻译的「Memcached全面剖析」系列文章,在中文社区广为流传,虽然已经是几年前的文章了,但是即便现在读起来,依然感觉收获良多,推荐大家多看几遍:Memcached的基础理解Memcached的内存存储Memcached的删除机制和发展方向Memcached的分布式算 阅读全文
posted @ 2013-07-20 23:20 mynetstudy 阅读(312) 评论(0) 推荐(0)
转:PHP程序里的敏感信息处理方法
摘要:何为敏感信息?简单点来说就是你不想让别人知道的信息,比如说数据库的地址,用户名,密码等等,此类信息往往知道的人越少越好。通常,PHP程序里的配置文件大致如下所示: array( 'host' => '192.168.0.1', 'user' => 'administrator', 'password' => 'e1bfd762321e409cee4ac0b6e841963c', ),);?>有时候出于某些原因,比如说代码审查,亦或者合作开发等等,第三方需要获取代码版本仓库的读 阅读全文
posted @ 2013-07-20 10:33 mynetstudy 阅读(350) 评论(0) 推荐(0)
Wap站URL自动传递Sessionid
摘要:Wap网站处理用户登录session问题要比普通html页面的网站麻烦一些。因为有不少手机不支持cookie。而sessionid默认是通过cookie来存储和传递的。解决wap站的session问题可以使用URL传递sessionid的方法:只要在php文件的最前面加上如下几行即可:?phpini_set("arg_separator.output","&"); //用来产生 URL 参数的分割标志,默认是 "&"ini_set("session.use_cookies",0); //是否使用 cookiesini_set("session.use_trans_sid",1); / 阅读全文
posted @ 2011-01-13 11:53 mynetstudy 阅读(1437) 评论(0) 推荐(0)
又拍网架构中的分库设计
摘要:又拍网是一个照片分享社区,从2005年6月至今积累了260万用户,1.1亿张照片,目前的日访问量为200多万。5年的发展历程里经历过许多起伏,也积累了一些经验,在这篇文章里,我要介绍一些我们在技术上的积累。又拍网和大多数Web2.0站点一样,构建于大量开源软件之上,包括MySQL、PHP、nginx、Python、memcached、redis、Solr、Hadoop和RabbitMQ等等。又拍网的服务器端开发语言主要是PHP和Python,其中PHP用于编写Web逻辑(通过HTTP和用户直接打交道), 而Python则主要用于开发内部服务和后台任务。在客户端则使用了大量的Javascript 阅读全文
posted @ 2011-01-07 09:24 mynetstudy

上一页 1 2 3 4 5