从 Reddit 学到的经验,reddit的最新教程从Reddit吸取的经验教训最近一些有价值的文章似乎并没有引起太多关注,比如Steve Huffman关于创建Reddit过程中的经验分享,在Twitter上的中文技术圈似乎并没有提及。作为一个社交新闻网站,国内似乎关注Reddit的人并不多。我只知道有几个极客是它的......
最近一些有价值的文章似乎并没有引起太多关注,比如Steve Huffman关于创建Reddit过程中的经验分享,在Twitter上的中文技术圈似乎并没有提及。
作为一个社交新闻网站,国内似乎关注Reddit的人并不多。我只知道有几个极客是它的死忠粉丝。Reddit由史蒂夫·霍夫曼(Steve Huffman)和亚历克西斯·奥哈尼安(Alexis Ohanian)于2005年6月创立,后于2007年被康泰纳仕(CondéNast)收购。现在Alexa排名300以内。
根据维基百科的介绍(参考):Reddit最早是用Common Lisp开发的,后来用Python重写。著名的Python框架Web.py是由当时Reddit的员工艾伦·施瓦茨开发的,现在Reddit的Web框架使用的是Pylons。2009年11月,Reddit迁移到亚马逊的云计算平台。前端框架现在使用jQuery。也许你早就知道Reddit网站程序现在是开源的。如果有兴趣,不妨下载研究。
严格来说,史蒂夫的演讲实际上并没有涉及太多深入的技术信息,但这些经验确实可以作为通则分享给大家。
停机是家常便饭
很多人可能会觉得Startup的一些创始人是天才,其实未必。两个22岁初出茅庐的大学毕业生写的程序会有多好网站刚起步的时候,频繁的宕机让他们苦不堪言。其实Twitter和最近流行的FourSquare,一开始都不是很稳定,但还是吸引了足够多的用户。这是很多创业者需要慎重考虑的。
服务分离
现在有20多个数据库,每个数据库只处理一种特定类型的数据,只为简单起见。另外,Reddit的一个教训就是不要用Python线程,要用多进程。
打开架构
个人认为称之为KeyValue更合适。
让它保持无状态
这意味着无状态横向扩展更容易。也许这是单节点服务器扩展到多台服务器时首先要考虑的问题。否则负担会越来越重。
Memcached
除了尽可能使用Memcached来加快用户访问数据的速度之外,大量预先生成的页面内容都存储在Memcached中。此外,MemcacheDB还用于适当的场景,以满足数据持久化的需要。
存储冗余数据
让网站变慢的一个好方法是根据范式设计数据库。除了将数据存储在RDBMS中,大量的数据也存储在前文提到的MemcacheDB中。与收入相比,裁员的成本并不高。前提是能有效保证数据一致性。
脱机工作
尽可能异步处理用户操作,对于计算量相对较大的函数,利用离线计算模式。消息队列使用rabbit MQ (rabbit technologies ltd .已被SpringSource收购),并采用AMQP协议。
也许还有一些需要改进的地方。请按照文章的出处分析。Reddit就像一个技术标本,仔细琢磨会有很多有趣的地方。相信对你也有帮助。
特别声明:以上文章内容仅代表作者本人观点,不代表ESG跨境电商观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与ESG跨境电商联系。
二维码加载中...
使用微信扫一扫登录
使用账号密码登录
平台顾问
微信扫一扫
马上联系在线顾问
小程序
ESG跨境小程序
手机入驻更便捷
返回顶部