标点符(钱魏 Way)

知乎技术方案初探

知乎的整个网站架构图如下: 知乎是国内很少的使用Python开发的一个网站,也很多值得我们学习的地方,从知乎让我们也可以了解到一些新的WEB技术。 一、Python框架 知乎目前使用的是Tornado 框架。Tornado 全称Tornado Web Server,是一个用Python 语言写成的Web 服务器兼Web 应用框架,由 FriendFeed 公司在自己的网站FriendFeed 中使 […]

Facebook图片存储架构的学习

分享照片是Facebook上最流行的的功能之一。截至目前,用户已经上传超过15亿张照片,这使得Facebook成为最大的照片共享网站。对于每一个上传的照片,Facebook都生成并存储四个大小不同的图像,从而转化为共60亿张照片,总容量超过1.5PB。目前以每周220万新照片的速度增长,相当于每周要额外增加25TB存储。在高峰期每秒需要传输55万照片。这些数字对Facebook的照片存储基础设施的 […]

RAID磁盘阵列学习笔记

RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列。简单地解释,就是将N台硬盘通过RAID Controller(分Hardware,Software)结合成虚拟单台大容量的硬盘使用。RAID的采用为存储系统(或者服务器的内置存储)带来巨大利益,其中提高传输速率和提供容错功能是最大的优点。 简单的说,RAID是一种把多块独立的硬盘 […]

一淘网的系统架构

一淘网是淘宝推出的一款购物搜索引擎,目前主要是由四部分组成:购物相关资讯的文本搜索-导购、基于opensearch的全网商品搜索-商品、购物社区-淘吧、问答搜索、全网搜索(目前使用的是其他搜索引擎公司的系统、自己公司的也有,但不是默认项)。 导购搜索的目的是要将购前分流至各大垂直网站查找资讯的流量聚合,并且从百度和Google手中把搜索购物资讯的流量抢过来。但局限是内容可读性不如垂直网站,覆盖率不 […]

Stack Exchange的系统架构

Stack Overflow是我最喜欢的问答网站,没有之一,原因是它能解决我学习程序过程中遇到的大多数问题,而 Quora 和 知乎更多的是拓展我的视野。(不要和我提百度知道,百度知道是小学生用来做暑假作业的!) 目前Stack Overflow每月不重复的访问用户超过1600万;每月网页浏览量(PV)增长了近6倍,达到9500万。已经发展壮大成了 Stack Exchange Network,而 […]

Python抓取框架:Scrapy的架构

最近在学Python,同时也在学如何使用python抓取数据,于是就被我发现了这个非常受欢迎的Python抓取框架Scrapy,下面一起学习下Scrapy的架构,便于更好的使用这个工具。 一、概述 下图显示了Scrapy的大体架构,其中包含了它的主要组件及系统的数据处理流程(绿色箭头所示)。下面就来一个个解释每个组件的作用及数据的处理过程。 二、组件 1、Scrapy Engine(Scrapy引 […]

EverNote的系统架构

我们就先初略的从Evernote 服务的物理构造说起,这里我不会详细的介绍每一个组件。有意思的点会在接下来的文章中详述。 我们先从图片的左上角开始说起,所有的服务器状态截止为2011年5月17日。 网络:几乎所有的Evernote流量都是通过https://www.evernote.com:443 传输的。包括所有的“网络”的活动,还包括基于Thrift的客户端同步服务API 。他每天可以处理1. […]

使用DNSPod来处理网站的均衡负载

首先介绍下DNSPod。DNSPod 是一款免费智能DNS产品。DNSPod 可以为同时有电信、网通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,网通的用户访问网通的服务器,达到互联互通的效果。能够让使用双线路或拥有多镜像的网站站长轻松实现智能DNS解析,让用户仅用单域名即可访问到最快速的镜像。 如上图,我们可以给不同的线路(电信、网通、教育网)设置不同的IP(服务器),除此之外 […]

域名解析基础知识

一、DNS DNS,Domain Name System或者Domain Name Service(域名系统或者域名服务)。域名系统为Internet上的主机分配域名地址和IP地址。由于网络中的计算机都必须有个IP地址,来识别, 互相之间才能通信,但让我们记住一大串的IP地址来访问网站显然是不可能的,所以用户使用域名地址,而DNS系统的功能就是自动把域名地址翻译为IP地址。域名服务是运行域名系统的 […]