[转贴] 著名社交网站LinkedIn的Java架构技术

news/2024/5/20 1:32:51/文章来源:https://blog.csdn.net/iteye_21202/article/details/82546961

在JavaOne 2008的会议上,著名社交网站LinkedIn的开发者做了2个关于LinkedIn网站的架构技术的演讲,目前这两个演讲的PPT已经可以下载了。下载地址如下:

  • LinkedIn - A Professional Social Network Built with Java™ Technologies and Agile Practices
  • LinkedIn Communication Architecture

需要注册才可以下载,能下载PDF版本。

LinkIn开发者透露LinkedIn 99%都是用java写的,除了缓存通过C++实现。

下面是详细架构图:

可以看一下LinkedIn网站的基本情况: 1、2千2百万用户 2、每个月4百万独立用户访问 3、每天4千万page view 4、每天2百万搜索流量 5、每天25万邀请发送 6、每天1百万的回答提交 7、每天2百万的email消息发送

这是一个世界顶尖级别流量的网站了,看看LinkedIn的系统架构: * 操作系统:Solaris (running on Sun x86 platform and Sparc) * 应用服务器:Tomcat and Jetty as application servers * 数据库:Oracle and MySQL as DBs * 没有ORM,直接用JDBC No ORM (such as Hibernate); they use straight JDBC * 用ActiveMQ在发送JMS. (It’s partitioned by type of messages. Backed by MySQL.) * 用lucene做搜索Lucene as a foundation for search * Spring做逻辑架构Spring as glue

下面是随着流量增加,LinkedIn的架构演化:

2003-2005 1、一个整体的web程序, 2、一个核心数据库, 3、在Cloud中缓存所有network图,Cloud是用来做缓存的独立server。 4、用lucene做搜索,也跑在Cloud中。

2006年 1、复制另外一个数据库,减少直接load核心数据库,另外一个server来管理非只读数据库的数据更新 2、把搜索从Cloud中移出来,单独一个server跑搜索 3、增加Databus数据总线来更新数据,这是通过分布式更新的核心组件,任何组件都需要Databus

2008年 1、WebApp不再任何事情都它自己做,把业务逻辑分成很多部分,通过server群来做。WebApp仍然提供用户界面给用户,但是,通过server群来管理用户资料,小组等等。 2、每个服务有自己的域数据库 3、新的架构允许其他应用链接LinkedIn,比如增加的招聘和广告业务。

The Cloud 1、Cloud是整个架构最重要的部分,整个LinkedIn的网络图都缓存在Cloud里面 2、Cloud大小:22M nodes, 120M edges 3、需要12GB RAM 4、在生产环境要跑40个实例 5、从硬盘重建Cloud一个实例需要8个小时 6、Cloud通过databus实时更新 7、关闭时持久化到硬盘 8、缓存通过C++实现,用JNI调用,LinkedIn选择C++而不是Java有两个原因: 1)尽可能的减少RAM的使用 2)垃圾收集暂停会杀死整个系统,LinkedIn用了最新的GC程序,也就是就是说java的的垃圾搜集性能不太好 9、将所有东西放在缓存里面是一种限制,但是LinkedIn指出,分割业务图将更麻烦 10、Sun提供了2TB的RAM

Communication Architecture交流架构包括:

Communication ServiceCommunication Service是用来提供永久信息的,比如收件箱里面的消息和email 1、整个系统通过JMS异步通讯 2、客户端用JMS发送消息 3、消息通过路径服务器来到达相应的邮箱或者直接放到email进程中 4、消息发送:同时使用Pull主动寻求信息(如用户需要信息)和Push发送信息(如发email) 5、使用Spring和LinkedIn专业Spring插件完成,使用HTTP-RPC

Scaling Techniques 1、通过功能来划分:发送,接受,文档等。 2、通过类别来划分:用户信箱,访问者信箱等 3、等级划分:用户ID等级,Email等级等 4、所有的操作都是异步的。

转自 http://www.wokaoo.com/2008/06/%E8%91%97%E5%90%8D%E7%A4%BE%E4%BA%A4%E7%BD%91%E7%AB%99lin

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

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

相关文章

Android 开发者福利Google Developers中国网站发布

今天一早就听到各大QQ群,好友说Google 发布中国站点了,迫不及待的查看了究竟。 摘自原文 谷歌开发者公众号 我们很高兴地宣布,Google Developers 中国网站 (developers.google.cn) 正式发布! 谷歌自带中文翻译,让我们…

网站原生app服务器安装环境,Websphere环境搭建及应用部署

3) 启动报错: SRVE0293E: [Servlet错误]-[null]: com.ibm.ws.webcontainer.webapp.WebAppErrorReport报错信息:[13-4-9 17:23:42:960 CST] 0000002d webapp E com.ibm.ws.webcontainer.webapp.WebApp logError SRVE0293E: [Servlet错误]-[null]: com.ibm…

九度搜索引擎点击优化_seo优化快排技术是什么?靠不靠谱?

近半年来市场上充斥着大量的seo 优化快速排名的产品,标榜着“指定词7-15天上首页”“不上首页不扣费”“核心算法,稳定官网排名”等各种宣传口号,让人眼花缭乱。那么,到底有没有优化快排的技术?现在这些产品靠不靠谱呢…

让您的网站拥有MSDN资源库搜索功能[转摘MSDN]

方式一 在您需要添加MSDN搜索链接的地方添加以下代码&#xff1a;<script language"Javascript" src"http://www.microsoft.com/china/msdn/search/msdn_search.js"> </script>使用以上代码&#xff0c;产生的搜索样式如下图所示&#xff1a;注…

国外SEO圣经[PDF]

本文专自&#xff1a; 国外的一本经典之作&#xff0c;专业人士称为“SEO圣经”。不教你用任何作弊手段欺骗搜索引擎&#xff0c;而给你一种正确的方法&#xff0c;让你走一条seo优化的康庄大道。将你引向网络营销的成功颠峰&#xff01;这是一本世界上最有名的SEO教程&#xf…

使用 Nginx 提升网站访问速度

本文主要介绍如何在 Linux 系统上安装高性能的 HTTP 服务器 —— Nginx、并在不改变原有网站结构的条件下用 Nginx 来提升网站的访问速度。Nginx 简介 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器&#xff0c;也是一个 IMAP/POP3/SMTP 代理服务器。 …

手机网站与普通网站的区别

手机网站与普通网站有很多不同的地方&#xff0c;所以在编写手机网站时&#xff0c;有很多问题需要注意&#xff0c;需要多测试。 1. 内容优先 手机分辨率比电脑的分辨率小很多&#xff0c;所以在手机版网页上只显示最主要的内容。下图所示是携程网的首页和手机版的首页。 2. 垂…

大型网站架构演变和知识体系

(摘自http://www.blogjava.net/BlueDavy/archive/2008/09/03/226749.html) 大型网站架构演变和知识体系 之前也有一些介绍大型网站架构演变的文章&#xff0c;例如LiveJournal的、ebay的&#xff0c;都是非常值得参考的&#xff0c;不过感觉他们讲的更多的是每次演变的结果&…

HTTPS 方式访问网站

开发网页的时候&#xff0c;往往需要观察HTTP通信。 我使用的工具主要有两个&#xff0c;在Firefox中是Firebug&#xff0c;在IE中是Fiddler。但是&#xff0c;一直听别人说&#xff0c;付费软件HttpWatch是这方面最好的工具。 前几天&#xff0c;HttpWatch的官方网志刊登了一篇…

win7-VS2010-IIS网站的发布问题

前提&#xff1a;IIS配置已经完成   问题描述&#xff1a;我们在机房实验里&#xff0c;大家的都可以访问同学A发布的IIS网站&#xff0c;但是&#xff0c;A却不能访问我们每个人的网站&#xff0c;而我们也不能互相访问&#xff08;除了A&#xff09;。 问题解决&#xff1a…

大型网站--前端性能优化和规范

大型网站--前端性能优化和规范 Web性能涉及的范围太广&#xff0c;但一般web开发者在程序上线以后很多都曾遇到过性能的问题。普遍表现为页面速度开始急剧变慢&#xff0c;正常访问时间变的很长&#xff0c;或则干脆给你抛出异常错误页面。这里会涉及到很多可能发生的情况&…

网页设计-第四天-个人(个性)网站设计

个性网站设计 head 60px (50~70)banner 550px(500~600)色彩可以比企业站随意、鲜活&#xff0c;不用遵循3&#xff0c;6&#xff0c;9的原则footer 50px 小于head logo 可以设计的个性化一点&#xff0c;使用多边形&#xff0c;类似QQ登录时&#xff0c;多边形背景 使用钢笔…

网站易用性

1. 给logo添加替代文本 这样有两个好处&#xff1a;屏幕阅读器能识别logo图片代表的含义&#xff0c;图片未加载到时&#xff0c;也能告诉非视障用户那里是你的logo。 几种方法&#xff1a; <img src"logo.png" alt"前端界"> 或者&#xff0c;你用背…

【消息队列】转-大型网站架构之分布式消息队列

大型网站架构之分布式消息队列 以下是消息队列以下的大纲&#xff0c;本文主要介绍消息队列概述&#xff0c;消息队列应用场景和消息中间件示例&#xff08;电商&#xff0c;日志系统&#xff09;。 本次分享大纲 消息队列概述消息队列应用场景消息中间件示例JMS消息服务常用消…

实现网站国际化

插件&#xff1a;i18n项目管理工具&#xff1a;grunt需安装&#xff1a; grunt 和properties-reader&#xff08;i18n运行依赖&#xff09;在根目录下新建i18n文件夹&#xff0c;然后把i18n-parsers.coffee和i18n.coffee放在该文件夹(两文件在笔记最后)在js下面放**.json&#…

可视化网站教程:最流行的搭建工具及必学的7个功能

摘 要 记得刚进大学的时候&#xff0c;一位教授说大学里有十件必学的事情&#xff0c;其中有一件是&#xff1a;学会做网站。无论你是学什么的&#xff0c;像数据可视化&#xff0c;演示简历、作品或产品&#xff0c;都需要前端的知识。虽然目前有各种前端语言&#xff0c;像V…

网站变更服务器要重新备案吗,网站更换服务器要重新备案吗

网站更换服务器要重新备案吗 内容精选换一换Joomla是一套全球知名的内容管理系统&#xff0c;即Joomla CMS(Content Management System)。Joomla是使用PHP语言加上Mysql数据开发的软件系统&#xff0c;是网站的一个基础管理平台&#xff0c;适合从个人网站到各种企业网站、分类…

电脑配置太低?使用这几个网站,你的电脑软件要少装一半!

你还在为你的电脑配置太低导致软件过多而卡顿感到烦恼&#xff1f;还是电脑游戏太多&#xff0c;无法运行一些其他软件而不开心&#xff1f;其实不用难过&#xff0c;小编教你们使用一些在线网站&#xff0c;可以轻松的将你的电脑上的软件少安装一半&#xff01;你们准备好了吗…

statuml怎么添加用户_网站推广好怎么样的?来看看以下指引

网站推广好怎么样的&#xff1f;很多人刚开始接触推广&#xff0c;心里会有这么一个疑问&#xff0c;怎么做才可以&#xff1f;不会做怎么办&#xff1f;网站推广并不是单单做了一个网站&#xff0c;最理想化往往跟现实差别很大&#xff0c;找对方法不迷路&#xff0c;我这边给…

php网站栏目隐藏,zblogphp代码:首页不显示指定分类ID栏目的文章(可隐藏多个分类)...

有的时候&#xff0c;我们并不想要某个分类栏目的文章显示在zblogphp首页的中&#xff0c;也就是说&#xff0c;我们可以让某一个或多个分类ID下的文章隐藏不显示在网站首页中&#xff0c;操作方法如下&#xff1a;第一种&#xff1a;判断分类方式此方法可以通过指定分类ID或分…