打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
InfoQ: Google Technological Details

Google+ Technological Details

Posted byAbel AvramonJul 13, 2011

Community
Architecture,
Java
Topics
Technology,
Javascript
Tags
Google,
Closures,
Google+

Google Plus, the social network from Google, is built mostly onJava and JavaScript while Hangouts, its video conferencing framework,uses a client-server approach.

Google Plus or Google+, thelong awaited social network from Google, has recently made its debut,being available to a limited number of users based on invitation. Theproject started in early 2010 and it was done behind the scenes withlittle or no information available on its underlying technology. Joseph Smarr, a technical lead on Google+ and former CTO at Plaxo, unveiled some of the network’s technical detailsin an AnyAsk interview without being very specific. We contacted Smarrfor further detail on Google+’s architecture, but he declined to offermore information, promising more will be released in the not-so-distantfuture.

According to Smarr, Google+ uses Java with Guice on the server side and lots of JavaScript on the client side for the UI based on the open source cross-browser Closureframework. Closure is a set of tools for JavaScript developers whowant to write rich web applications, and it is used by Google forGMail, Maps and Docs. It is interesting that Google did not choose toemploy GWT, which is used for Wave and AdWords, a technology that is targeted more to Java developers rather than JavaScript ones. The HTML5 History APIis added in order to “maintain pretty-looking URLs even though it's anAJAX app (falling back on hash-fragments for older browsers)”, and theClosure templates are often rendered on the server so that “the pagerenders before any JavaScript is loaded, then the JavaScript finds theright DOM nodes and hooks up event handlers, etc. to make itresponsive.” Smarr further explains:

The cool thing about Closure templates is they can be compiled intoboth Java and JavaScript. So we use Java server-side to turn thetemplates into HTML, but we can also do the same in JavaScriptclient-side for dynamic rendering. For instance, if you type in aprofile page URL directly, we'll render it server-side, but if you goto the stream say and navigate to someone's profile page, we do it withAJAX and render it client-side using the same exact template.

The back-end is built on BigTable and Colossus, Google’s file system used for real-time search.

Smarr acknowledges that the Google+ team learned from others, bothfrom Google and other companies, and they are “’standing on theshoulders of giants’ in many ways, learning both from our previoussocial products and the industry at large”, perhaps referring toFacebook and Twitter, and the product looks in many ways like Facebook.

Google+ Hangoutsis an online cloud video conferencing platform based on XMPP, Jingle,RTP, ICE, STUN, SRTP, and which has taken a completely differentapproach than Skype which uses a P2P network. Hangouts is aclient-server/cloud technology that heavily relies on Google’sinfrastructure. There is no data available on how much resourcesHangouts consume, but it is expected to be a lot. All of that in orderto provide low-latency (<100ms) for smooth group communication.

Hangouts requires the same plug-in as Google Talk but they are working on moving it to WebRTC,a JavaScript-based framework for video communication, being opensource and supported by Google, Mozilla and Opera. When WebRTC will beintegrated in Chrome, there will be no need to download a plug-in forHangouts if it is run inside Firefox, Opera or Chrome. At that time,Hangouts will be using the VP8 codec which is integrated in WebRTCinstead of H.264 that it is using right now.

Christian Oestlien, PM on Google+, has revealed that Google prepares special features for businesses,such as analytics and integration with the other business accounts,but he declined being specific. He asked businesses to refrain fromcreating Google+ accounts now because they will be deleted, and ratherwait until the features are ready.

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
如何在SAP Server Side JavaScript里消费destination
Ice & Ajax
Google的新主意:JavaScript on Rails
Enterprise Java Community: News : Comparing the Google Web Toolkit to Echo2
com.google.android.gts.placement.CoreGmsAppsTest#testCoreGmsAppsPreloaded fail
AJAX是什么
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服