Archive for the ‘PHP’ Category



2010年6月,Google公布全球Top 1000网站。Facebook独占鳌头。 以Facebook现在的经营规模,诸多传统服务器的技术均将崩溃或根本无法支撑。那么面对5亿的活跃用户,Facebook的工程师们又将如何让网站平 稳运转呢?伯乐在线 – 职场博客的这篇文章将展示Facebook的工程师完成这个艰巨任务所用到的一系列软件。 Facebook级别规模的挑战 在我们深入细节之前,先了解一组Facebook不得不面对数据,你就可以想象这种规模。 Facebook每月的PV量:630,000,000,000 (6万3千亿) Facebook上的图片数量超过其他图片网站的总和(包括诸如Flickr这样的图片网站) 每个月有超过30亿的图片上传到Facebook Facebook系统每秒可以处理120万张图片。这还不包括Facebook的CDN处理的图片。 每月处理超过250亿的信息内容(包括用户状态更新,评论等) Facebook的服务器数量超过3万台(此数据为2009年的数据) Facebook所用的软件 从某些方面来说,Facebook还是属于LAMP类型网站,但是,为了配合其他大量的组件和服务,Facebook对已有的方法,已经做了必要的改变、拓展和修改。 比如: Facebook依然使用PHP,但Facebook已重建新的编译器,以满足在其Web服务器上加载本地代码,从而提升性能; Facebook使用Linux系统,但为了自身目的,也已做了必要的优化。(尤其是在网络吞吐量方面); Facebook使用MySQL,但也对其做优化。 还有定制的系统,比如, Haystack — 高度可扩展的对象存储,用来处理Facebook的庞大的图片;Scribe — Facebook的日志系统。 下面展现给大家的是,全球最大的社交网站Facebook所使用到的软件。 Memcached Memcached是一款相当有名的软件。它是分布式内存缓存系统。Facebook(还有大量的网站)用它作为Web服务器和MySQL服务器之间的缓存层。经过多年,Facebook已在Memcached和其相关软件(比如,网络栈)上做了大量优化工作。 Facebook运行着成千上万的Memcached服务器,借以及时处理TB级的缓存数据。可以这样说,Facebook拥有全球最大的Memcached设备。 HipHop for PHP 和运行在本地服务器上代码相比,PHP的运行速度相对较慢。HipHop把PHP代码转换成C++代码,提高编译时的性能。因为Facebook很依赖PHP来处理信息,有了HipHop,Facebook在Web服务器方面更是如虎添翼。 HipHop诞生过程:在Facebook,一小组工程师(最初是3位)用了18个月研发而成。 Haystack Haystack是Facebook高性能的图片存储/检索系统。(严格来说,Haystack是一对象存储,所以它不一定要存储图 片。)Haystack的工作量超大。Facebook上有超过2百亿张图片,每张图片以四种不同分辨率保存,所以,Facebook有超过8百亿张图 片。 Haystack的作用不单是处理大量的图片,它的性能才是亮点。我们在前面已提到,Facebook每秒大概处理120万张图片,这个数据并不包括其CDN处理的图片数。这可是个惊人的数据!!! BigPipe BigPipe是Facebook开发的动态网页处理系统。为了达到最优,Facebook用它来处理每个网页的分块(也称“Pagelets”)。 比如,聊天窗口是独立检索的,新闻源也是独立检索的。这些Pagelets是可以并发检索,性能也随之提高。如此,即使网站的某部分停用或崩溃后,用户依然可以使用。 Cassandra Cassandra是一个没有单点故障的分布式存储系统。它是前NoSQL运动的成员之一,现已开源(已加入Apache工程)。Facebook用它来做邮箱搜索。 除了Facebook之外,Cassandra也适用于很多其他服务,比如Digg。 Scribe Scribe是个灵活多变的日志系统,Facebook把它用于多种内部用途。Scribe用途:处理Facebook级别日志,一旦有新的日志分类生成,Scribe将自动处理。(Facebook有上百个日志分类)。 Hadoop and Hive Hadoop是款开源Map/Reduce框架,它可以轻松处理海量数据。Facebook用它来做数据分析。(前面就说到了,Facebook的数据量 是超海量的。)Hive起源于Facebook,Hive可以使用SQL查询,让非程序员比较容易使用Hadoop。(注1: Hive是是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为 [...]

yiic shell sub module by daveline at 4:50am on April 21, 2010. How can you use yiic shell to create a nested submodule? to create the 1st module module test1 to create the sub module module test1\test2 or possibly modules test1\modules\test2 在config里面main.php 增加下面modules的配置 ‘modules’ => array( ‘admin’ => array( )), 要在模块里面增加控制器只要 controller admin/System 这样就可以

在view里面只要这样就可以引入jquery 引入外面网址 引入本地站点 引入css

yiic 去执行时候因为调用另外一个model 所以会出现Trying to get property of non-object 所以在要在调用model之前判断这个model是否存在

http://hi.baidu.com/comdeng/blog/item/f272362e47ce29564ec226c5.html

多语言自动切换简单实现,在控制器上面进行个判断就可以 页面通过下面调用 protected/messages/zh_cn/Base.php下面代码

Yii 是什么 Yii 是一个基于组件、用于开发大型 Web 应用的高性能 PHP 框架。它将 Web 编程中的可重用性发挥到极致,能够显著加速开发进程。Yii(读作“易”)代表简单(easy)、高效(efficient)、可扩展(extensible)。 需求 要运行一个基于 Yii 开发的 Web 应用,你需要一个支持 PHP 5.1.0 (或更高版本)的 Web 服务器。 对于想使用 Yii 的开发者而言,熟悉面向对象编程(OOP)会使开发更加轻松,因为 Yii 就是一个纯 OOP 框架。 Yii 适合做什么? Yii 是一个通用 Web 编程框架,能够开发任何类型的 Web 应用。它是轻量级的,又装配了很好很强大的缓存组件,因此尤其适合开发大流量的应用,比如门户、论坛、内容管理系统(CMS)、电子商务系统,等等。 Yii 和其它框架比起来怎样? 和大多数 PHP 框架一样,Yii 是一个 MVC 框架。 Yii 以性能优异、功能丰富、文档清晰而胜出其它框架。它从一开始就为严谨的 Web 应用开发而精心设计,不是某个项目的副产品或第三方代码的组合,而是融合了作者丰富的 Web 应用开发经验和其它热门 Web 编程框架(或应用)优秀思想的结晶。   首先,我们来安装Yii框架。请在www.yiiframework.com上下载Yii框架文件(1.0.3版本或以上),下载后解压到/wwwroot/yii目录。确认加压后目录是这样的/wwwroot/yii/framework。 设置环境变量到 [...]

memcached的基本设置: -p 监听的端口 -l 连接的IP地址, 默认是本机 -d start 启动memcache d服务 -d restart 重起memcached服务 -d stop|shutdown 关闭正在运行的memcached服务 -d install 安装memcached服务 -d uninstall 卸载memcached服务 -u 以的身份运行 (仅在以root运行的时候有效) -m 最大内存使用,单位MB。默认64MB -M 内存耗尽时返回错误,而不是删除项 -c 最大同时连接数,默认是1024 -f 块大小增长因子,默认是1.25-n 最小分配空间,key+value+flags默认是48 -h 显示帮助 php.ini中的配置: [Memcache] ; 一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表, ; 它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。 ; 是否在遇到错误时透明地向其他服务器进行故障转移。 memcache.allow_failover = On ; 接受和发送数据时最多尝试多少个服务器,只在打开memcache.allow_failover时有效。memcache.max_failover_attempts = 20 ; 数据将按照此值设定的块大小进行转移。此值越小所需的额外网络传输越多。 ; 如果发现无法解释的速度降低,可以尝试将此值增加到32768。 [...]


About this blog

QK31欢迎你的到来.

Photostream

search_extends

 

2010年九月
« 八    
 12345
6789101112
13141516171819
20212223242526
27282930  

36
Unique
Visitors
Powered By Google Analytics

分类目录

标签云