写代码的人

Posts tagged ‘Quora’

Quora用了哪些技术 ?

导读:作者根据在philwhln.com上发表的《Quora’s Technology Examined》这篇文章,编辑翻译《Quora用了哪些技术 ?》。文中阐述了Quora的技术架构,记录一些值得关注的信息。

文章内容如下:

使用云计算服务

Quora大量使用Amazon EC2 与 S3服务;操作系统部署的是Ubuntu Linux,易于部署和管理;静态内容用Cloudfront.服务分发,图片先传到EC2服务器,使用Pyhon S3 API 处理后后传到S3。

从开始就使用云计算服务的的好处是节省了大量人工维护硬件服务器的成本,当然这个做法在咱这片土地上不太可行。

(refer:Copyright)

Web层与CMS

HAProxy作为前端负载均衡服务器,反向代理服务器是Nginx,Nginx后面则是Pylons(Pylons + Paste),承担动态Web请求。

Webnode2与LiveNode这两个内部系统承担创建、管理内容的重任,Webnode2生成HTML、CSS与JavaScript,并且与LiveNode轻度耦合。LiveNode的作用用以显示Web页面内容。用Python、C++与JavaScript写的。特别提到用到了jQuery与Cython。LiveNode有可能开源。

为什么用Python?

前面已经提到了一些Python相关的技术组件。有意思的是从Facebook出来的团队居然用Python作为主要开发语言。Quora对此有所解释:Facebook选择PHP也并非是最佳选择,而是有历史原因。Quora技术团队在考察了多个语言之后选择的Python,当然理由有一大堆,总体看来,并非很激进。

通信处理

后端通信使用的是Facebook开源出来的Thrift,除了开发接口简单之外,可能更为熟悉也是一个因素吧:)Comet服务器使用的是Tornado,用以处理Long polling以及Push 更新(不知道知乎用的什么?),Tornado是前FriendFeed技术团队开源的产品。

实时搜索

因为Sphinx不能满足实时性方面的要求,Quora启用了自己开发的搜索引擎,只使用了Thrift与Python Unicode库,此外没有用别的。Quora的搜索比较特别,因为要对输入内容做关联并且要做有效提示,所以需要提供更好的前缀索引(Prefix indexing)功能。

Quora搜索的实现还是挺有技术含量的,对后端的查询请求压力也不小(或许当前的并发请求量还没那么大)。对这个场景,做相关开发的朋友不妨仔细研究一下。如果大体框架类似,那么决定最后生出的因素很可能是那些细节。

数据持久层

大量使用MySQL作为存储方案,Memcached作Cache层。没有使用当前比较火爆的NoSQL相关产品。Quora这样做有自己的理由,用户量级没有达到百万的SNS站点完全没必要用NoSQL的东西。或许以后Quora也会启用。

创始人查理·奇弗(Charlie Cheever)与亚当·德安杰洛(Adam D’Angelo)之前都在Facebook,所以,Quora的技术还真有不少Facebook的基因。Quora的团队规模并不大,做技术的估计十余人而已,这么紧凑的团队利用了这么多的技术与产品,可见很多人都是多面手了。这是国内技术团队需要向国外同行学习的地方。

EOF

这只是一篇概要性的描述,如果要知道一些更为细节的东西,请看Quora上的相关评论,上文中已经给出相关链接。

原文链接:Quora’s Technology Examined

译文链接:Quora用了哪些技术 ?

 

Quora,下一代社交媒体巨头?

我第一次听说Quora,还是来自这么一段对话:

Jill:“你听说Quora这个网站没?是一个问答网站”

Jack:“你是指Yahoo Answers?”

Jill:“不是,Quora上都是专家来给你的问题做出最好的解答。”

Jack:“听起来像Linkedin Answers?”

Jill:“也不是,社区会为最佳的答案投票,然后可以屏蔽掉一些不相关的答案。”

听到这里,似乎有了些概念。Quora就像是把每篇维基文章转换成一个个Jeopardy问题(译者注: Jeopard是美国一个涵盖时事、历史、文学、艺术、流行文化、科学、体育、地理、文字游戏多方面知识的智力问答电视秀节目),虽然准确度下降,但是更带有主观性,且具有自我推广。

当然,这仅是我对Quora的第一印象。在经过一番捣鼓之后,最初的一些看法似乎应该有些变动。

Quora是什么?

Quora将自己定位为“持续收集每个用户创造、编辑和组织的问题和答案。”听起来很不错,而事实是Quora就像是在对5岁儿童经常玩的玩具进行组织、编辑,让他们看起来舒适。

不过这点并不值得担心,因为Quora的搜索功能十分优秀,只要缩小问题范围,一般都能找到真正有用的信息。

Quora的优势

尽管我语存讽刺,但是其实Quora还是有很多迷人的机会来发展成社交媒体网站的。

1. Quora是发现内容想法的好去处

不知道博客该怎么写么?想知道你的受众想了解你的行业的那些东西?Quora就是一款非常好的市场搜索工具,可以确保博客内容与自己的受众相关。

2.在Quora上可以找到专家

Quora的优势体现在专家上。每个问题都经过民主投票从而产生“最佳答案”,自然也就会排除“最佳回答者”。与这些人建立联系,自然会为企业带来不少的好处。

3. Quora也有社区发展潜力

任何一个行业都不能“缺人”,但是与最聪明的和最受欢迎的人有联系无疑也会提高你本身的可见度。Quora就提供了用户与专家建立联系的渠道。不仅 仅在Quora上,而且还会依附于专家所在的社交网络,当然这还取决于这些专家会把自己的那些社交网络资料写进自己的Quora档案中。

4.在Quora寻找业务合作机遇

其实Quora真正的价值与问答没什么关系,而是在于把可以一起合作的非常聪明的人联系在一起。如果我将Quora看做一个战略资源,我不仅仅会与 “最佳答题者”建立联系,还会尽力地取得与他们的合作机遇。这些人本身就有自己的雄心抱负,他们把精力和希望放在一个只受社交媒体忠实粉丝的社交网络上, 位的就是能够找到共同合作的机会。

Quora的劣势

 

1. 仍然有一些愚蠢的问题

如果你是一个专业人士或者是市场人员,期待回答一些与你的核心行业相关的严肃问题,借以提高你的曝光率,很不幸你仍会碰到下面这样的问题:

2. 每个人回答问题的角度不同

你的业务的目的是为了赚钱,那就要吸引客户。只有成为最佳的那个答题者才能得到最多的客户。不幸的是,Ouora并未很好的解决这个问题,因为每个人对待问题的角度会有所不同,无法确定那个答案是最佳的。

3. LinkedIn Answers?

文章的开头我并不是在开玩笑,Quora并非有什么创新之处。

Linkedin Answers更加专业,而且与用户的专业档案相挂钩,并且有1亿用户。我认为仅仅允许用户能够对答案进行投票并不能形成一个新的平台。不过也许下图中的观点会令我改变看法:

(图片中的文字翻译)

1:我认为Quora能够培养成一个Q+A社区,因为他们最初就是想这么做的。Linkedin Answers一开始就有一个预定好的社区(9百万用户),也许连Linkedin Answers都无法知道他们适合哪种Q+A网站…他们可能在过去纪念中吸取了许多经验,但是要培养称一个Q+A社区还是很难,因为他们的许多用户对如何 使用Linkedin都有一个既定的习惯。

2:Quora的用户体验是十分棒的!我认为Quora是目前最佳的Q+A网站。Linkedin Answers是依照Linkedin现存的UI设计,很明显并不适合Q+A网站。

3:在Linkedin上,问题和答案都与你的专业身份挂钩,这从某种程度上降低了用户参与。因为用户最不想发生的事情就是损害自己的品牌,不过在Quora上用户却不需要担心这点。

不过最重要的区别在于,在Quora上,内行和负责人是可选项。

小结

总之,我对Quora的看法还是比较悲观。已经有一个平台可以提供专业的答案了,并且可以通过查看这些专家的档案来获取更多的信息并,这就是Linkedin。至少有1亿人是这么认为的。

而且,也有一个组织信息的地方,这就是Wikipedia,已经形成相当棒的社区(保持优质和良好声誉的信息)。另外还存在投票系统来过滤掉一些不精确的信息。

我们需要戒掉一个坏习惯:就是创建一个类似于平台X却具有Y的功能的新平台。这不值得花时间或精力去弄,除非这个平台能够改变人们的呈现方式,有着极大地使用价值,否则只是增加他们的社交媒体负担。

Quora与Linkedin和Wikipedia的唯一不同就是来自自尊心和同行的压力。我现在已经把自己的 名字和企业写进我给出的答案中,而且还可以宣称在Twitter上对某某行业了解最多的就是我,而且我还可以把我在Twitter上followers上 拉过来,给我投票,让我获得“Smartest Question Answerer Ever”的头衔。

原文链接:Is Quora the Next Big Social Media Site?

译文链接:Quora,下一代社交媒体巨头?