Yupoo! 的网站技术架构

news/2024/5/9 13:00:30/文章来源:https://blog.csdn.net/chinalinuxzend/article/details/2069659
原贴:http://www.dbanotes.net/arch/yupoo_arch.html

Yupoo! 的网站技术架构

又有机会爆料国内 Web 2.0 网站的架构了。这次是 Yupoo! 。非正式的采访了一下 Yupoo!(又拍网) 的创建人之一的 阿华(沈志华)同学,了解了一些小道消息。

作为国内最大的图片服务提供商之一,Yupoo! 的 Alexa 排名大约在 5300 左右。同时收集到的一些数据如下:

带宽:4000M/S (参考)
服务器数量:60 台左右
Web服务器:Lighttpd, Apache, nginx
应用服务器:Tomcat
其他:Python, Java, MogileFS 、ImageMagick 等

首先看一下网站的架构图:

Yupoo_Arch.jpg

该架构图给出了很好的概览(点击可以查看在 Yupoo! 上的大图和原图,请注意该图版权信息)。

关于 Squid 与 Tomcat

Squid 与 Tomcat 似乎在 Web 2.0 站点的架构中较少看到。我首先是对 Squid 有点疑问,对此阿华的解释是"目前暂时还没找到效率比 Squid 高的缓存系统,原来命中率的确很差,后来在 Squid 前又装了层 Lighttpd, 基于 url 做 hash, 同一个图片始终会到同一台 squid 去,所以命中率彻底提高了"

对于应用服务器层的 Tomcat,现在 Yupoo! 技术人员也在逐渐用其他轻量级的东西替代,而 YPWS/YPFS 现在已经用 Python 进行开发了。

名次解释:

  • YPWS--Yupoo Web Server YPWS 是用 Python开发的一个小型 Web 服务器,提供基本的 Web 服务外,可以增加针对用户、图片、外链网站显示的逻辑判断,可以安装于任何有空闲资源的服务器中,遇到性能瓶颈时方便横向扩展。
  • YPFS--Yupoo File System 与 YPWS 类似,YPFS 也是基于这个 Web 服务器上开发的图片上传服务器。

【Updated: 有网友留言质疑 Python 的效率,Yupoo 老大刘平阳在 del.icio.us 上写到 "YPWS用Python自己写的,每台机器每秒可以处理294个请求, 现在压力几乎都在10%以下"】

 

图片处理层

接下来的 Image Process Server 负责处理用户上传的图片。使用的软件包也是 ImageMagick,在上次存储升级的同时,对于锐化的比率也调整过了(我个人感觉,效果的确好了很多)。”Magickd“ 是图像处理的一个远程接口服务,可以安装在任何有空闲 CPU资源的机器上,类似 Memcached的服务方式。

我们知道 Flickr 的缩略图功能原来是用 ImageMagick 软件包的,后来被雅虎收购后出于版权原因而不用了;EXIF 与 IPTC Flicke 是用 Perl 抽取的,我是非常建议 Yupoo! 针对 EXIF 做些文章,这也是潜在产生受益的一个重点。

图片存储层

原来 Yupoo! 的存储采用了磁盘阵列柜,基于 NFS 方式的,随着数据量的增大,”Yupoo! 开发部从07年6月份就开始着手研究一套大容量的、能满足 Yupoo! 今后发展需要的、安全可靠的存储系统“,看来 Yupoo! 系统比较有信心,也是满怀期待的,毕竟这要支撑以 TB 计算的海量图片的存储和管理。我们知道,一张图片除了原图外,还有不同尺寸的,这些图片统一存储在 MogileFS 中。

对于其他部分,常见的 Web 2.0 网站必须软件都能看到,如 MySQL、Memcached 、Lighttpd 等。Yupoo! 一方面采用不少相对比较成熟的开源软件,一方面也在自行开发定制适合自己的架构组件。这也是一个 Web 2.0 公司所必需要走的一个途径。

非常感谢一下 Yupoo! 阿华对于技术信息的分享,技术是共通的。下一个能爆料是哪家?

--EOF--

| Permalink | Comments (10) | | Edit

Generator | Trampoline
<script type="text/javascript"></script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script> <script language="JavaScript1.1" src="http://pagead2.googlesyndication.com/cpa/ads?client=ca-pub-2198040673582211&cpa_choice=CAAQhaT2_gEaCI52gVKP95-sKLGsuIEBMAA&oe=utf-8&dt=1201496531015&lmt=1201496197&format=ref_text&output=textlink&correlator=1201496531000&url=http%3A%2F%2Fwww.dbanotes.net%2Farch%2Fyupoo_arch.html&region=_google_cpa_region_&ref=http%3A%2F%2Fwww.dbanotes.net%2F&cc=100&ga_vid=995780019.1201496531&ga_sid=1201496531&ga_hid=1937244488&flash=9&u_h=1024&u_w=1280&u_ah=874&u_aw=1280&u_cd=32&u_tz=480&u_java=true" type="text/javascript"></script> Get Firefox with Google Toolbar for better browsing
<script type="text/javascript"></script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script> <script language="JavaScript1.1" src="http://pagead2.googlesyndication.com/cpa/ads?client=ca-pub-2198040673582211&cpa_choice=CAAQidTQgAIaCEapPfRcsfp6KN2uuIEBMAA&oe=utf-8&dt=1201496531359&lmt=1201496197&prev_fmts=ref_text&format=ref_text&output=textlink&correlator=1201496531000&url=http%3A%2F%2Fwww.dbanotes.net%2Farch%2Fyupoo_arch.html&region=_google_cpa_region_&ref=http%3A%2F%2Fwww.dbanotes.net%2F&cc=100&ga_vid=995780019.1201496531&ga_sid=1201496531&ga_hid=1937244488&flash=9&u_h=1024&u_w=1280&u_ah=874&u_aw=1280&u_cd=32&u_tz=480&u_java=true" type="text/javascript"></script> Generate revenue from your website. Google AdSense.

自定义搜索

本文相关评论|Comments(10)

yzx110 的评论:

这个。。。。
说的意犹未尽啊,
能打听到一些关键的技术信息就好了,呵呵

感觉架构复杂了点,怎么squid前又是lightppd,然后又是apache。

hushuobadao 的评论:

squid在web2.0中有大规模的应用,flickr在用,wikipedia在用。。国内门户就不用说了。。是一个很常见的web前端加速缓存。。

python写的ws因为脚本语言的动态特性,内存的管理对于性能和可靠性都不是很理想,不知道有没有经常崩掉的。。。

除了带宽最好有一些日pv和uip的参数。。(aleax不靠谱)前端的req/s很重要。。对架构影响大。。

疑问在有了lvs四层交换后,nginx的七层交换是不是有点多余?如果否,那么此处的nginx干嘛使?

应用层是java的,估计逃不出tomcat吧。。。

为保证squid命中率,为啥不用nginx?lighttpd毕竟是单进程的,好崩掉?而且nginx的规则也好写。。

http://www.openidfrance.fr/gaopengbo Author Profile Page 的评论:

写的太深奥,不是很懂。

徐林 的评论:

Web 2.0还未正式出来

就已经是风雨满天下了

我还是玩我的博客好了

Horus Lee 的评论:

Fenng大,用纯Python写的Web Server?效率会不会是个问题呢?还是仅仅作为一个客户和后端服务器的一个中间层?

草根网 的评论:

好文,收藏至20ju.com

css 的评论:

网站那么烂 后台架构再好有什么用

东东 的评论:

图片索引和权限控制能介绍下就更好了

小说家文学网 的评论:

大型网站的技术架构的确好庞大

FinalBSD 的评论:

URL Hash扩展性很差吧,增、减服务器要重新hash,Yupoo是怎么解决此问题的

ImageMagick处理图片也是很耗CPU的,不知道是怎么处理的,是即时还是队列的模式

添加评论 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_831772.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

郁闷少年架设某大型网站服务器之全部过程

原贴:http://www.cublog.cn/u/19818/showart.php?id118957郁闷少年架设某大型网站服务器之全部过程 郁闷少年架设某大型网站服务器之全部过程 *版权所有 所有:郁闷少年&&二娃家园 网站:http://www.mingfor.com 发布:mingfu 联系:msn:linuxmingfor.com 日期:2006-04-04…

网站运维之道 关于可用性

原贴:网站运维之道 关于可用性 作者: Fenng | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.dbanotes.net/web/web_operations_availability.html 这是前一段时间投稿给《程序员》的一篇文章。标题中的"道"有些大了&#…

网站运维之道 监控与报警机制

原贴: http://www.dbanotes.net/web/web_operations_monitoring_and_alert.html 网站运维之道 监控与报警机制 作者: Fenng | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.dbanotes.net/web/web_operations_monitoring_and_alert.h…

网站运维之道 之容量规划

原贴&#xff1a; http://www.dbanotes.net/web/web_operations_capacity_planning.html 网站运维之道 之容量规划 作者: Fenng | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.dbanotes.net/web/web_operations_capacity_planning.…

网站运维之道 之知识管理与积累

原贴:http://www.dbanotes.net/web/web_operations_knowledge_management.html网站运维之道 之知识管理与积累 作者: Fenng | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.dbanotes.net/web/web_operations_knowledge_management.h…

网站运维之道 之自动化管理

原贴:http://www.dbanotes.net/web/web_operations_automatic.html网站运维之道 之自动化管理 作者: Fenng | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.dbanotes.net/web/web_operations_automatic.html 还是继续这个网站运维的…

手机之家网站架构--对话高春辉

原贴:http://www.dbanotes.net/arch/imobile_web_arch_gaochunhui.html手机之家网站架构--对话高春辉 作者: Fenng | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.dbanotes.net/arch/imobile_web_arch_gaochunhui.html 这次去北京参…

面向用户的网站性能优化

原贴: http://www.dbanotes.net/arch/user_oriented_web_tuning.html面向用户的网站性能优化 作者: Fenng | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://www.dbanotes.net/arch/user_oriented_web_tuning.html 在互联网这个行业&…

31个用来测试你网站各项性能的免费在线工具

原贴:http://blog.chinaunix.net/u/9465/showart.php?id173605231个用来测试你网站各项性能的免费在线工具 网站代码验证 没人可以细致到保证自己的网站代码都是正确的&#xff0c;你可以通过以下测试来验证网站代码是否正确。 1 . WDG HTML Validator 一个很好的工具&#…

网站优化之减少HTTP请求

原贴:http://lovelaozang.cn/show-6786-1.html网站优化之减少HTTP请求 Submitted by 老臧 on 2009, January 12, 11:37 PM. 好好学习 相关文章 评论 今天给大家分享一些网站优化的一些经验&#xff0c;如有不对的地方欢迎批评指正或与我讨论。关于网站优化&#xff0c;可以从多…

10个精选免费网站分析工具

原贴&#xff1a;http://www.cnbeta.com/articles/75109.htm10个精选免费网站分析工具 感谢zhengyongmw的投递 新闻来源:译言 在本文中&#xff0c;你将发现10个精选的免费web分析工具和应用程序&#xff0c;他们可以帮助你收集和分析与你网站内容有关的数据。 什么是Web分析学…

学习豆瓣好榜样--网站架构

原贴:http://www.dbanotes.net/arch/douban_arch.html 学习豆瓣好榜样--网站架构 这次的 QCon 会议&#xff0c;《豆瓣网技术架构的发展历程》这个议题差不多是最受关注的。洪强宁在演讲开始告诫大家期望值不要太高&#xff0c;我还是相信不会有人觉得失望的。 先说几句题外话&…

小规模低性能低流量网站设计原则

原贴&#xff1a;http://www.dbanotes.net/arch/small_site_arch.html 小规模低性能低流量网站设计原则 作者: Fenng | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://www.dbanotes.net/arch/small_site_arch.html 到处都是什么大规模啊…

使用Varnish代替Squid做网站缓存加速器的详细解决方案[原创]

原贴:http://blog.s135.com/post/313/ 使用Varnish代替Squid做网站缓存加速器的详细解决方案 大 | 中 | 小 [2007-11-29 22:11 | by 张宴 ] [文章作者&#xff1a;张宴 本文版本&#xff1a;v1.2 最后修改&#xff1a;2008.01.02 转载请注明出处&#xff1a;http://blog.s135.…

简约而不简单:网站着陆页的设计(Landing Page Design)

着陆页是一个在线营销的概念&#xff0c;是指当访客点击一个搜索引擎优化的搜索结果进入的第一个页面或“着陆”页面。这是一个重要的页面&#xff0c;它和提供的产品或服务的广告有点类似&#xff0c;提供了与产品相关的精确的信息&#xff0c;告诉客户可以购买的产品或服务。…

大型高并发高负载网站的系统架构[转载]

鄙人先后在CERNET做过拨号接入&#xff0c;在Yahoo&3721搞过搜索前端&#xff0c;在猫扑处理过mop.com的架构升级&#xff0c;在6.cn视频网站从事开发工作&#xff0c;还在多年的工作中接触和开发过不少大中型网站的模块&#xff0c;因此在大型网站应对高负载和并发的解决方…

一步步学习SPD2010--第八章节--理解工作流(7)--创建网站工作流

一步步学习SPD2010--第八章节--理解工作流&#xff08;7&#xff09;--创建网站工作流 在之前版本的SP中&#xff0c;所有工作流都是以文档为中心。然而&#xff0c;不是所有的工作流都像那样。为了应对其他情况&#xff0c;SP2010现在支持网站工作流。网站工作流在SP网站上下文…

Hexo博客网站再配置

这两天整理网站方面的事&#xff0c;本地IIS部署&#xff0c;个人网站&#xff0c;发现我的hexo做的个人网站实在很单调&#xff0c;于是找来资料做进一步的配置。 一、网站图标 看一下hexo\themes\modernist\layout\_partial\head.ejs&#xff0c;找到这句&#xff1a; <li…

[前端]分享一个Bootstrap可视化布局的网站

如果你像我一样&#xff1a;是个前端渣&#xff0c;能看懂css和html&#xff0c;略懂Bootstarp&#xff0c;懒&#xff01; 当你每次都想独立完成一个web页面而不知道从哪里下手的时候&#xff0c;那么下面的这个网站&#xff0c;就是你所以需要的&#xff01; http://www.runo…

unity3D 在官方网站 下载资源 路径存储问题

第一步打开 官网 https://store.unity3d.com/account/users 或者 在unity3D软件中&#xff0c;单击 window 再单机 asset store 即可进入商店&#xff0c;在商店中可以找到免费的学习案例&#xff0c;如&#xff1a;Unity Sample UI&#xff0c;在搜索栏中输入Unity Sample …