`

研究gmail快速响应原理——猜想

阅读更多

今天看见同事在那搞一个httpfox的(firefox)插件,刚巧跟boss讨论了一些问题,他提到gmail的快速响应,他的意思是说当你使用gmail邮箱时,有新邮件到达时,它能够立即就在页面上显示出来。

于是我使用httpfox观察了gmail的请求行为,发现它每隔1分钟就请求服务器一次,如下图:

我在一次定时请求的开始时给该gmail发送了一封邮件,继续观察了gmail的行为,如下图:

可以看出,只隔了3秒就收到了我发送的邮件,这3秒还包括我发送邮件操作的时间(邮件事先写好了,只要按一个发送按钮)。

这就是我好奇的地方,为何能如此之迅速。搞web开发的都明白http协议,服务器是不会记录浏览器状态的,也不会主动请求浏览器。

我的猜测是gmail每个一分钟请求一次服务器目的是维持浏览器在服务器端的状态(即在线状态),而在服务器端可能有个端口在监听浏览器的请求,如果隔了一分钟没有收到浏览器的请求则在服务器端将浏览器的状态设为离线状态。在这样的前提下,如果服务器端记录的浏览器的状态为在线的话,那么当有新邮件到达时就会通过ajax即时反应到浏览器中,如果为离线状态则将新邮件保持在服务器中,等到用户下次登录gmail的时候再在其浏览器中体现出来。

PS:这只是我的猜测,不知道和事实是否有那么几分相似。

  • 大小: 64.9 KB
  • 大小: 29.8 KB
分享到:
评论
1 楼 zhannufeifei 2010-07-26  
comet长连接技术

相关推荐

    安卓Android源码——Gmail备份手机短信源码.zip

    这个压缩包文件“安卓Android源码——Gmail备份手机短信源码.zip”提供了一个示例,展示了如何利用Android SDK将手机短信备份到Gmail邮箱中。通过分析这个源码,我们可以学习到以下几个关键知识点: 1. **Android...

    ASP论坛网站实例开发源码——Gmail自助申请系统实例开发.rar

    ASP论坛网站实例开发源码——Gmail自助申请系统实例是一个基于ASP技术的Web应用程序,用于构建一个用户可以自我申请Gmail邮箱的平台。这个实例主要适用于学习和理解ASP编程、网站开发以及如何与Google的Gmail API...

    Ajax Hacks中文版 创建快速响应Web站点的工具和技巧

    ### Ajax Hacks中文版:创建快速响应Web站点的工具和技巧 #### Ajax技术概览 Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。这种技术使得Web应用程序...

    Android源码——Gmail备份手机短信源码.zip

    这份"Android源码——Gmail备份手机短信源码.zip"包含了实现这一功能的源代码,对于想要学习Android开发、尤其是与数据同步和备份相关的开发者来说,是一份宝贵的学习资料。 首先,我们需要了解Android系统的短信...

    安卓Android源码——Gmail备份手机短信【源码】.zip

    这份“安卓Android源码——Gmail备份手机短信【源码】.zip”提供了一种实现此类功能的具体实现。下面将详细讨论相关知识点。 1. **Android源码**:Android是一个开源的操作系统,其源代码可以在Google的AOSP...

    ASP论坛网站实例开发源码——Gmail自助申请系统实例开发.zip

    ASP论坛网站实例开发源码——Gmail自助申请系统实例是一个基于ASP技术的在线应用程序,用于构建一个用户可以自我申请Gmail邮箱的平台。这个系统主要适用于那些需要为组织成员或特定用户群体提供Gmail邮箱服务的场景...

    Android源码——Gmail备份手机短信源码.7z

    这份"Android源码——Gmail备份手机短信源码.7z"文件提供了实现这一功能的源代码,对于Android开发者来说,是一个极好的学习和参考资源。下面我们将深入探讨相关的知识点。 首先,我们要了解Android的权限管理。在...

    机器学习被带到沟里了——恶意软件可轻易逃脱检测(包括Gmail).pdf

    机器学习被带到沟里了——恶意软件可轻易逃脱检测(包括Gmail).pdf

    Gmail Notifierv5.2.3绿色中文版

    《Gmail Notifier v5.2.3:全能Gmail客户端的邮件管理神器》 Gmail Notifier,作为一款高效且功能丰富的Gmail客户端工具,为用户提供了前所未有的邮件管理体验。这款软件专为那些频繁收发邮件并需要实时监控Gmail...

    PHP论坛社区类网站实例开发源码——Gmail自助申请系统简体中文版.zip

    他们可以研究代码结构,了解如何在Discuz! 平台上实现特定功能,如用户注册流程、权限管理、API调用等。此外,开发者还可以根据需要对源码进行修改和扩展,以满足特定社区的需求。 6. **安全性和隐私**:在部署和...

    很好用的Gmail信息接受软件(日文版)

    本文将深入探讨一款专为接收Gmail信息而设计的日文版软件——"GmailChecker0.8"。 GmailChecker是一款实用工具,它的主要功能是帮助用户实时监控并接收Gmail账户中的新邮件。对于那些频繁处理邮件,或者需要快速...

    Gmail 轻松登录

    2. 使用快捷方式:将Gmail添加到浏览器书签或桌面快捷方式,快速访问。 3. 登录提示:设置手机接收登录提示,当有人尝试从新设备或位置登录时,会收到通知。 四、Gmail功能介绍 1. 邮件分类:Gmail的自动分类功能...

    gmail群聊天机器人

    本文将深入探讨Gmail群聊天机器人的工作原理、优势和应用实例。 一、Gmail群聊天机器人概述 Gmail群聊天机器人是基于Google Hangouts Chat或Google Workspace(原G Suite)平台开发的自动化工具,它们能够自动响应...

    gmail 泛邮箱

    这可能是一个专门设计的软件或脚本,用于快速、稳定地生成大量Gmail子邮箱,同时优化了性能,避免了系统卡顿或内存占用过高。 基于提供的标签“gmail 泛邮箱”,我们可以推测这个压缩包可能包含一个名为“gmailapp....

    如何快速管理Gmail里的语音邮件

    例如,你可能同时想将一封语音邮件归入“工作”和“紧急”两个标签,这样在需要查找与工作相关的紧急事项时,就可以快速定位到这封邮件。 总的来说,虽然Gmail默认没有提供语音邮件的特定管理工具,但通过巧妙利用...

    AJAX案例研究之详细剖析Gmail应用

    Gmail作为AJAX技术的典范,其应用设计和实现策略值得深入研究。 首先,当我们登录Gmail时,会看到一个包含JavaScript的HTML页面。页面中的JavaScript代码负责创建和管理AJAX请求。例如,`vb()`函数用于在不同浏览器...

    PHP CURL GMAIL好友邀请 GMAIL邮箱登录

    不过,如果项目对实时性要求较高,且不涉及大量用户,模拟登录和抓取数据的方法可能是一个快速实现的解决方案。 在实际应用中,应考虑隐私政策、安全性和合规性,遵循最佳实践,避免滥用用户数据。对于文件名列表中...

    AJAX案例研究之Gmail

    在Web开发领域,AJAX的应用极大地提升了用户体验,因为它允许网页后台与服务器进行数据交互,而用户界面仍然保持响应状态。Gmail是AJAX技术的典范应用之一,其流畅的邮件处理体验得益于AJAX的强大功能。 Gmail的...

Global site tag (gtag.js) - Google Analytics