【BOSS系统】——淘宝的工作人员怎么去管理这么庞大的一个系统,例如某时刻突然宣布某位作家的作品全部从淘宝消失,从数据库到搜索引擎到广告系统,里面的相关数据在几分钟内全部消失,这又需要一个牛叉的后台支撑系统。 【运维体系】——支持这么庞大的一个网站,你猜需要多少台服务器?几千台?那是零头。这么多服务器,上面部署什么操作系统,操作系统的内核能否优化?Java虚拟机能否优化?通信模块有没有榨取性能的空间?软件怎么部署上去?出了问题怎么回滚?你装过操作系统吧,优化过吧,被360坑过没,崩溃过没?这里面又有很多门道。 不再多写了,除了上面提到的这些,还有很多很多需要做的技术,当然并不是这些东西有多么高不可攀,任何复杂的庞大的东西都是从小到大做起来的,里面需要牛叉到不行的大犇,也需要充满好奇心的菜鸟,最后这一句,你当我是别有用心好了。 回答:覃超,Facebook工程师 功能上面虽然不复杂,但是要完成的细节却很多。比如news feed里面的推荐算法就很重要,要根据用户之前的记录和与好友的关系来生成。另外就是根据用户的信息和行为,要做机器学习和数据挖掘,从而来挑出最匹配的广告。这也是比较花人力的事情。 另外Facebook的用户量奇大无比。假设你只是做一个学校内部用的社交网站,那肯定很简单。但是如果考虑到上亿人在上面用。你首先服务器就必须是一个分布式的机群,还要保证能抗住那么大的流量。同时为了性能够好,不得不加上mem cache和网页分块加载等功能。还有就是每天用户产生的总数据量(状态,留言,照片,分享等)有TB的数量级,你数据库是否撑住等等。 另外树大招风,你要一个很强的安全小组来保证网站在受攻击的时候能防御好,还有要防止垃圾信息和恶心广告或者程序的散播。另外还有为了全球化而带来的多语言问题。 总之,一个网站做大了之后,很多问题就会产生,不是在校园里面做一个学期作业那么简单。 编辑 陈迎利 (责任编辑:职场达人) |