摘要: PlentyOfFish(以下简称POF)是一家在美国广受欢迎的婚介交友网站,平均每月有4千5百万的访问者,每天有3千万的访问量(这是前一段时间的数据了),但你万万想不到的是,这个被估值$1000000000的网站却只有一个人每天只干两小时活。POF对网友是100%免费的,所有的收入来自于Google广告点击,不像中国有的婚介交友网站广告纷乱,POF只有一个广告通栏,此外没有任何弹出广告,感觉非常的简洁。 它的成功的关键因素可能就是在基本功能方面能很符合用户的需要,在UE方面做的也比较贴心,同时也让用户能够坦然接受这个免费网站的UI的丑陋和服务的不稳定性,而更为愿意通过这个平台来发布一些内容, 阅读全文
posted @ 2011-08-17 13:23 Wolves 阅读(947) 评论(2) 推荐(1) 编辑
摘要: OK,我们以一个销售数据库场景开始分区表实战。第一步:建立我们要使用的数据库,最重要的是建立多个文件组。CREATE DATABASE Sales ON PRIMARY (NAME = N'Sales',FILENAME = N'C:\Sales.mdf',SIZE = 3MB, MAXSIZE = 100MB,FILEGROWTH = 10%),FILEGROUP FG1(NAME = N'File1',FILENAME = N'C:\File1.ndf',SIZE = 1MB,MAXSIZE = 100MB,FILEGROWT 阅读全文
posted @ 2011-06-01 10:05 Wolves 阅读(319) 评论(1) 推荐(0) 编辑
摘要: 分区方案对表和索引进行分区的第二步是创建分区方案。分区方案定义了一个特定的分区函数将使用的物理存储结构(其实就是文件组),或者说是分区方案将分区函数生成的分区映射到我们定义的一组文件组。所以分区方案解决的是Where的问题,即表的各个分区在哪里存储的问题。分区方案的创建语法如下:CREATE PARTITION SCHEME partition_scheme_nameAS PARTITION partition_function_name[ ALL ] TO ( { file_group_name | [ PRIMARY ] } [ ,...n ] )[ ; ]分区方案语法的相关解释:1, 创 阅读全文
posted @ 2011-06-01 09:58 Wolves 阅读(367) 评论(1) 推荐(0) 编辑
摘要: 在谈论分区表这个话题之前,先和大家分享一个案例:2008年秋天的某天,我的团队接到成都市XX局一个SQL调优的ESS单子。客户反映查询统计一次各地市局上报的数据汇总,需要6到15秒才能获得真正想要的数据,当我和销售人员赶到客户数据中心现场后,发现里面布置了很多柜式服务器,每台服务器都是8核16G内存。和相关技术负责人沟通以及演示业务系统之后,可以肯定不是服务器性能的问题,我详细分析了他们的数据库,统计慢的几张表往往一周的上报数据便会增加1百多万行,导致他们这个系统刚上线没多久,某些表产生的数据已经在2000万行以上,最终我提出了优化方案,业务逻辑层采用存储过程代替普通的SQL语句,并启用相关开 阅读全文
posted @ 2011-06-01 09:57 Wolves 阅读(401) 评论(1) 推荐(1) 编辑
摘要: SEO最关键的4点就是:关键词,内容,内链,外链,我分别分类整理一些最近学到的知识点给大家,欢迎大家也来补充,可以在本文后面评论中来补充,我将及时更新该文。域名域名最好包含要进行优化的关键字,简短易记,最好是顶级域名不要使用冷门,很少使用的英文单词gov>edu>org>com=net=cn,但只占很少因素,对SEO影响不大二级域名和顶级域名是独立的PR值和信任度,如果是小站,最好用二级目录代替二级域名域名最好一次多注册几年,给人信任度高如果是抢注的域名,查下该域名的历史,是否曾经被搜索引擎降权空间空间是否和别人共用IP,该IP下是否有被搜索引擎惩罚过的站点要保证网站可用性高 阅读全文
posted @ 2011-03-12 17:05 Wolves 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 这几天一直在关注和学习一些大型网站的架构,希望有一天自己也能设计一个高并发、高容错的系统并能应用在实践上。今天在网上找架构相关的资料时,看到一个被和谐的视频网站YouTube的架构分析,看了以后觉得自己又向架构走近了一步,于是赶快拿出来与大家一起分享。YouTube发展迅速,每天超过1亿的视频点击量,但只有很少人在维护站点和确保伸缩性。这点和PlentyOfFish类似,少数人维护庞大系统。是什么原因呢?放心绝对不是靠人品,也不是靠寂寞,下面就来看看YouTube的整体技术架构吧。平台Apache Python Linux(SuSe) MySQL psyco,一个动态的Python到C的编译器 阅读全文
posted @ 2011-03-12 17:03 Wolves 阅读(341) 评论(0) 推荐(0) 编辑
摘要: Facebook是一个社会化网络站点,它于2004年2月4日上线。每个用户在facebook上有自己的档案和个人页面,用户之间可以通过各种方式发生互动:留言、发站内信,评论日志。虽然目前在国内无法访问facebook,但其强悍的技术架构还是值得我们去研究分析和总结的,或许我们可以从中得到一点启发。facebook的设计原则是模块化原则、整合化原则、清晰化原则,其架构设计的目标是简单、高效。facebook的架构是基于LAMP,差不多是用LAMP实现的最大的动态站点,以下是facebook架构图概览:PHP经验:为什么 Facebook 选择 PHP 而不是其他语言? 用Flickr 的 Cal 阅读全文
posted @ 2011-03-12 17:00 Wolves 阅读(1491) 评论(0) 推荐(0) 编辑
摘要: 1234567891011。。。。。。。。。。。。。。 LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so LoadModule proxy_http_module modules/mod_proxy_http.so 。。。。。。。。。。。。。。。。。。。。 <Proxy balancer://mycluster> BalancerMember "http://slave1:8008/App" loa 阅读全文
posted @ 2011-03-12 16:59 Wolves 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 维基百科(Wikipedia)是一个基于Wiki技术的全球性多语言百科全书协作计划,同时也是一部在网际网路上呈现的网路百科全书,其目标及宗旨是为全人类提供自由的百科全书──用他们所选择的语言来书写而成的,是一个动态的、可自由和的全球知识体。wikipedia在IT架构方面的经验,对于我们构建网站极有参考价值,因为wikipedia提供的这些信息非常详细和确凿。下面是我学习Wikipedia架构后的一些总结。1、Wikipedia的相关数据峰值每秒钟3万个HTTP 请求每秒钟 3Gbit 流量, 近乎375MB350 台 PC 服务器Wikipedia的数据来源来自Wikimedia archi 阅读全文
posted @ 2011-03-12 16:54 Wolves 阅读(449) 评论(0) 推荐(0) 编辑
摘要: 1. 避免将多个类放在一个文件里面。 2. 一个文件应该只有一个命名空间,避免将多个命名空间放在同一个文件里面。3. 一个文件最好不要超过500行的代码(不包括机器产生的代码)。 4. 一个方法的代码长度最好不要超过25行。5. 避免方法中有超过5个参数的情况。使用结构来传递多个参数。 6. 每行代码不要超过80个字符。 7. 不要手工的修改机器产生的代码。 a) 如果需要编辑机器产生的代码,编辑格式和风格要符合该编码标准。b) Use partial classes whenever possible to factor out the maintained portions.8. 避免利用 阅读全文
posted @ 2011-03-10 15:39 Wolves 阅读(566) 评论(3) 推荐(0) 编辑