Yupoo! 的网站技术架构

news/2024/5/16 13:46:32/文章来源:https://blog.csdn.net/peakerli/article/details/2511271

又有机会爆料国内 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! 阿华对于技术信息的分享,技术是共通的。下一个能爆料是哪家?

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

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

相关文章

.NET 发布网站步骤

本文章分为三个部分: web网站发布、IIS6 安装方法、ASP.NET v4.0 安装方法 一、web网站发布 1.打开 Visual Studio 2013 编译环境 2.在其解决方案上右击弹出重新生成解决方案,以查看是否有错误 3.如果项目没有错误右击WebUI层发布

新概念绿色上网工具,向网站病毒say no

Dear All: 近來很多網站都含有病毒或木馬程式,而上網者多數都是用超級用戶或power user的權限上網,中招後惡意程序會更改windows系統,或設置一些木馬程序.用戶電腦的資料完全暴露,而且還要忍受廣告困擾,雖然裝有防毒軟件,但防毒軟件也不是萬能,特別是木馬程序,經常變化.所以用戶…

PHP——网站构成即LAMP基础知识

网站的构成: 客户端IE/FireFox/Safari等多种浏览器 超文本标记语言HTML 层叠样式表CSS 客户端脚本编程语言JavaScript/VBScript/Applet等中的一种 Web服务器Apache/ Nginx/TomCat/IIS等中的一种 服务器端编程语言PHP/JSP/ASP等中的一种 数据库管理系统MySQL…

网站架构的伸缩性设计

网站开发初期,我们习惯性把所有代码都写到一个项目中。 前台、后台、缓存、数据库、静态资源... 等等。 网站系统物理分离 慢慢的系统会原来越大,很显然需要面对大量用户的高并发访问和存储海量数据。 很多用户的请求,不可能在一台服务器上…

以电商网站为例,谈大型分布式架构设计与优化

本文大纲: 目录 一、使用电商案例的原因 二、电商网站需求 三、网站初级架构 四、系统容量预估 五、网站架构分析 六.网站架构优化 本文主题为电商网站架构案例,将介绍如何从电商网站的需求,到单机架构,逐步演变为常用的、…

使用cloudflare+wzfou为自己的网站配置CDN加速

本文同步于个人博客 : 蝴蝶飞不过沧海 | Blog 本文链接 泛播 Cloudflare 挖站否 Wzfou 为什么用到挖站否?单独泛播不就可以作cdn加速吗? 众所周知泛播(cloudflare)国外知名免费cdn服务商无需网站备案 但有个缺点就是单独使用泛播&…

企业网站建设需要做哪些前期准备工作?

随着互联网的发展,制作官方网站已经成了众多企业的需求。定制企业网站有助于提升企业形象,增加品牌曝光度,配合网络营销,可以给企业带来更多的业务。很多企业选择了外包给专业的开发公司来定制自己的网站,但并不是说所…

程序员应该熟知的网站TIOBE

TIOBE TIOBE 排行榜是根据互联网上有经验的程序员、课程和第三方厂商的数量,并使用搜索引擎(如Google、Bing、Yahoo!)以及Wikipedia、Amazon、YouTube统计出排名数据,只是反映某个编程语言的热门程度,并不能说明一门编…

使用Chrome浏览器查看淘宝的IPhone版网站

用IPhone手机访问http://m.taobao.com ,淘宝的设计已经达到了和APP相媲美的地步。多次想查看其源码学习,单无奈用PC浏览器访问该网址,出现的是一个比较简化的wap2.0版本的。经过若干的夜晚的冥思苦想,终于想出了解决方案。 1.IPho…

Springboot+Vue开发旅游网站

项目简介 所需技术栈: 后端技术栈:springboot mybatis 前后端分离:axios、json 前端技术栈、技术架构:Vue、node.js 前置知识: 了解 Vue 组件之前的知识 对 springboot mybatis 较熟悉 开发流程: 需求…

spring boot酷炫小说网站 包括 PC网站端 和 移动端可做毕设

spring bootspring mvcspring整合开发微信小程序(含简单服务端) 项目描述: spring bootspring mvcspring酷炫小说网站,然后提供给微信小程序做显示 运行环境: jdk8IntelliJ IDEAmaven 项目技术: spring bootspring mvcspring 数据库文件:…

高可用Hadoop平台-实战(电商网站的用户行为分析)

今天要和大家分享的案例是一个基于电商网站的用户行为分析,这里分析的指标包含以下指标: 统计每日PV每日注册用户每日IP跳出用户 其他指标可以参考上述4个指标进行拓展,下面我们开始今天的分析之旅。 2.流程 首先,在开发之前我们…

网站日志分析项目案例(一)项目介绍

一、数据情况分析 1.1 数据情况回顾 该论坛数据有两部分: (1)历史数据约56GB,统计到2012-05-29。这也说明,在2012-05-29之前,日志文件都在一个文件里边,采用了追加写入的方式。 (2&a…

网站日志分析项目案例(二)数据清洗

一、数据情况分析 1.1 数据情况回顾 该论坛数据有两部分: (1)历史数据约56GB,统计到2012-05-29。这也说明,在2012-05-29之前,日志文件都在一个文件里边,采用了追加写入的方式。 (2&a…

网站日志分析项目案例(三)统计分析

一、借助Hive进行统计 1.1 准备工作:建立分区表 为了能够借助Hive进行统计分析,首先我们需要将清洗后的数据存入Hive中,那么我们需要先建立一张表。这里我们选择分区表,以日期作为分区的指标,建表语句如下:…

提高网站速度的最佳实践

原版见:http://developer.yahoo.com/performance/rules.html ,是Yahoo 人写的《提高网站速度的最佳实践》共有 14 条。 以下是中文版 相信互联网已经越来越成为人们生活中不可或缺的一部分。ajax,flex等等富客户端的应用使得人们越加“幸福”…

网站的分布式架构

互联网的网站和大部分企业管理软件一样都是使用B/S架构模型,但是大型的公共网站B/S架构会更加复杂,对架构人员的要求更高,今天我想在自己博客里聊聊我设计的网站的B/S技术架构。 不管是B/S架构的企业管理系统还是网站技术架构可以抽象为如下简…

GOOGLE CHROME 不能打开 FTP 网站解决方法

GOOGLE CHROME 不能打开 FTP 网站解决方法 将下面的粘贴到地址栏: chrome://flags/#enable-ftp接下来就可以访问啦!

网站访问登陆原理

0.传统网站访问工作流程 原始的网站访问工作原理 这样的访问再工业应用中存在的问题是,USER的账号和密码有可能再web请求过程中被破解。 所以有如下新的授权方式 1. Token Auth 访问原理 流程 用户使用用户名和密码请求服务器服务器进行验证用户信息服务器通过…

云服务建站

个人网站 www.1314xiu.cn 效果图 准备环境 一台云服务器 公网IP 我用的是CentoS6.8版本 连接云服务器的终端Xshell 下载地址https://download.csdn.net/download/qq_31147847/11169285 具体使用 解压软件 软件操作如下 登陆成功 例如 ssh root主机地址 会提示输入密…