如果有意赞助 O'Reilly Velocity China 2012 或者有其他合作想法,请通过地址 donna at mail.oreilly.com.cn 联系马女士。
For Velocity China sponsorship information for companies outside China, contact Gloria Lombardo at glombardo at oreilly.com
Web 性能是一个持续性的工作,即使是监控最完备的网站也会经常出问题,把性能退化甩给终端用户。真实用户检测是一项必不可少的工具,但还不够,因为对于每一个发布周期可能带入的性能退化,用户是最终的受害者。
YSlow 一直通过分析和建议相应的修补办法来帮助提高专业网站性能,但它是通过在产品的末端手动运行浏览器扩展的形式完成的。现在有了 NodeJS 和 PhantomJS 后 YSlow 如虎添翼,可以无缝插入持续集成流程中,在构建过程中反馈性能退化,保证了网站的最低性能基准,避免不必要地把不愉快的体验带给最终用户。除了通过YSlow 来避免性能退化,在 Twitter 我们通过自动化分支性能比较来努力保持和提高每一次新发布的性能,它能够给出精确的测量,避免产品中甚至是毫秒级的性能退化。
SPDY(读作 SPeeDY)是关于 Web 内容传送的应用层协议,专门针对最小化延迟需求而设计。它使网站更加高效地将内容传送到浏览器,采用了流复用、头部压缩以及服务器推送等手段。SPDY 目前得到了 Chrome 和 Firefox 的支持,而且可以部署的服务器包括 Apache、nginx、node.js 等平台。
在本议题中我首先概述没有 SPDY 的互联网状况。然后讨论 SPDY 如何解决了 HTTP/TCP 面临的问题。最后我会讨论你的网站采用 SPDY 协议的可行方案,以及展示一些具体网站实例。
主要介绍在航旅纵横系统对异构数据的整合和触发事件消息业务中采用的一些做法。这些技术不仅仅将大量异构数据采集、清洗、加工、分析,而且实现数据的变化可跟踪,实现数据的可度量,基于数据统计分析和历史判断数据合理性和预测),同时保证数据准确性及系统可靠使用,梳理出大量的基于用户的移动消息事件。
“连续部署”对于更为传统的发布时间表来讲是一个巨大的背离。"代码一写好就更新到生产网站上”这样的想法听起来就很危险,尤其是在不了解为什么这么做、期望什么结果的情况下,这跟直接在生产服务器上改代码一样疯狂。然而,等你有了一定了解时这么做是有好处并且安全的。
我会谈到实现连续部署需要的一些文化、技术上的转变:
还会谈到采用连续部署我们体会到的益处:
淘宝/天猫双十一的流量势不可挡地突破百亿到191亿,其背后承载的交易订单、商品、用户构建在mysql数据库之上,mysql高可用的重要性不言而喻。如何实现异常情况下的主备库快速切换?如何批量切换?如何解决主备库延迟?如何保证切换后的数据一致性?如何自动切换?
此课题介绍了淘宝对mysql高可用的尝试,介绍设计思路、具体实现、主备库延迟的解决。
LVS是章文嵩博士于1998年创建的优秀开源软件,经过14年大量访问考验,它还有可以改进的地方吗?作为中国最大的互联网公司之一,阿里巴巴集团在LVS项目上有深入的研究和很大的贡献;阿里巴巴集团已经在线上环境长时间应用LVS,并针对大规模万兆网络环境进行了深入的优化;阿里巴巴将与大家分享LVS上相关优化的成果,并且该成果已经开源在LVS官网上。
将以问题驱动的方式介绍阿里巴巴对LVS功能上的改进和性能上的优化;功能方面,LVS添加了FULLNAT/SYNPROXY等新特性;性能方面,从硬件配置到系统软件进行了多层次优化改进,并提出了cluster部署方案。
主要阐述在 Android 上设计开发性能敏感程序需要考虑的策略和需要注意的编程技巧。包括编程时需要关注的会对应用性能产生影响的微小细节,如何更有效的使用Android UI Widget,如何高效地渲染以及如何正确地创建和使用 HTTP 连接。
为了更快地展现网页,浏览器除了需要强大的javascript引擎外,减少网络请求的耗时也是很重要的一部分。DNS Prefetch和TCP Preconnect就是两个很重要的技术。DNS查询通常会消耗一部分网页打开的时间。通过预测用户行为,事先建立网络连接来减少用户的等待时间。本议题中会详细介绍浏览器是如何实现的,还会介绍前端工程师如何修改网页代码来利用这两项技术。
另外,本议题还会介绍WebSocket和高速下载。
讲述百万甚至千万级别同时在线IM系统的细节,主要涉及四个方面:
随着网站的功能和规模越来越大,交互方式也越来越倾向于在单一页面内交互,内存泄漏也从单一的浏览器方面的事情变成了网站开发者需要密切关注的一个问题。
将主要介绍:
一天191亿成交,近亿笔订单,要做哪些运维工作来保障系统的平稳运行?从以下几个方面为您讲述阿里技术保障团队是如何做到的。
Velocity China 2012 活动第一天晚上(12月4日)让我们相聚在酒吧。社交活动,你将有机会和讲师单独交流,和业界同行交流,把你精彩的想法、甚至是还没想好的想法(只要有趣、精彩)讲给大家听,或者仅仅是聆听。
我们提供餐饮,甚至有啤酒,你需要带来的只有热情。
如果你有有趣的故事欢迎和大家分享。你有5分钟时间,20 张幻灯片,还是自动播放的,每 15 秒换一张,讲一个你的项目?讲讲网站?讲讲秘籍?Ignite @ Velocity China 2012 就是这样一个舞台。
“给我灵感,一定要快!”是 Ignite (点燃之夜)活动的口号,如果你还不了解可以参考此前的点燃之夜北京,看一下往期活动视频感受风格。也许你没能面对大家讲半个小时,但有好想法、精彩的故事,那来 Ignite 吧,就讲 5 分钟 20 张幻灯片展示给大家。
你知道你的网站还能更快吗?你知道还有哪些措施能减少用户的延迟时间?PageSpeed Insights 就是能帮到你的正确工具,它分析页面的内容然后给出提高页面速度的建议。
我将会讨论 PageSpeed Insights 整套工具,展示如何使用它们来减少用户延迟时间。
也许你会发现 PageSpeed Insights 给出的一些建议涉及的手动操作很麻烦,别担心,我会介绍一个工具——mod_pagespeed。这个 Apache 模块能自动应用所有 Web 性能的最佳实践,而不要求你修改现有的内容和工作流。
而且,如果你不想装这个 Apache 模块,甚至还有 PageSpeed 服务提供。你只需将 Web 指向 PageSpeed 服务一切就大功告成了。
我会探讨各种不同的 PageSpeed 产品来帮您找出最适合你网站的方法。
用户产生的数据是个老问题。系统和网络监测、页面分析和应用状态信息形成了不断扩张的“数据山”。搜集和存储这些数据绝不是单一应用就能做到的,也不存在一点用户可以深入系统、调试、重现一些棘手的错误。分布式系统需要对生产系统有一个清晰的了解,并且能访问到实时数据,从而来解决状态相关的复杂问题,同时还不能对用户体验有任何影响。
我会解释这些问题(痛苦)以及我们是如何解决的。在生产中开发,把代码推向开发端。
Web 网站和应用正逐渐开始和前端服务器脱离,把这部分任务交给互联网边界上的服务器来完成。这个概念通常称之为“边界计算(Edge Computing)”,越来越成为当下热潮。内容缓存和请求路由通常都被推给边界处理。随着这种趋势的发展很显然我们需要在边界端引入更多的处理能力,以支持更多应用。其中被讨论最多的办法就是支持 ESI(Edge Side Include)。这是一种简单的标记语言,在边界端提供内容装配能力。
在 Yahoo! 我们广泛地在高流量媒体项目(比如News、Lifestyle、Entertainments)中使用 ESI。本议程中将和大家分享我们的经验。我将从内容装配的简单实例开始,让大家马上熟悉这种极为简单和微小的模板语言,一分钟学会。然后我会给出两三个例子来阐明我们如何创新地大规模使用 ESI(例如用 ESI 构建一个 CSS/JS 联合处理程序,例如自动在边界缓存页面的静态版本,在前端服务器不能给出动态版本的情况下把这个静态版本给出去),并且向大家展示其巨大的潜力。我们还会和大家分享 HTTP 软件(比如 Apache Traffic Server 和 Varnish)对 ESI 支持的情况,以及供应商(比如 Akamai)的支持情况。最后我们会讨论 ESI 当前的局限性和不足之处,并希望重振大家对该规范的兴趣共同朝着 2.0 版本前进。
Facebook有超过十亿月度活跃用户(Monthly Active User, MAU),其中超过百分之六十的用户通过移动设备来访问Facebook的各种服务。在这个报告中,我们将探讨Facebook移动开发中的令人兴奋的巨大潜力和挑战,我们将对Facebook的安卓应用开发进行剖析,以此来讨论Facebook移动应用平台开发中的故事、机遇、挑战、技术和经验等。
作为中国最大的 Java 技术应用方,针对淘宝应用需求的 Java 虚拟机(JVM)的优化定制是必要且收益巨大的。TaobaoJVM 是基于 OpenJDK VM 并根据淘宝业务、应用特点及开发者需求开发的稳定,高效且深度定制的 JVM 版本。是国内第一个优化、定制且开源的服务器版 Java 虚拟机。目前已经在淘宝、天猫上线,替换了 Oracle 官方Hotspot VM,在性能、功能上都初步体现了它的价值。本议题会结合淘宝 Java 应用在性能、功能等方面的实际需求,介绍 TaobaoJVM 在 JVM 层所进行的优 化、定制内容,实现方法以及实现细节。
微博计数器是新浪微博平台非常核心的基础组件之一, 目前拥有千级亿的微博计数, 每秒承载着数百万次的访问. 在这个数据规模下, 业界并没有非常成熟和通用的设计方案, 因此本主题希望以微博计数器为例, 介绍新浪微博平台架构在发展过程中遇到的各种挑战和我们的设计思路, 与各位同行一起探讨。
随着搜狗近几年用户量的爆发式增长和多项新业务的频繁上线, 在机器、人员有限的条件下,如何更高效的应对近百亿的业务请求量,如何高效的管理PB级海量日志数据,如何轻松的运维上百个产品? 本次演讲与大家一起分享下搜狗运维部在推动平台化运维方面的一些收获和体会,主要内容包括:
随着互联网个性化时代的来临,很多需要通过多角度多属性进行实时分析的需求应运而生,如想即时统计最近任意几天、指定省份、指定地市、指定性别、指定年龄、指定频道的用户情况;如想结合用户的省份、地市、年龄、性别、偏好、最近购买情况给用户即时推荐最热门的商品;如想统计出多个关键词组合在省份、地市、年龄、性别、偏好等条件下的分布情况;而这些多维度多属性统计会存在无法穷举和无法通过离线计算进行预算的问题,如果固化业务逻辑则无法应对互联网业务的快速变化,在高并发互联网应用中解决这类问题则面临更大的挑战。
Garuda 是一个针对海量数据进行任意维度的密集计算与检索的支持高并发低延时的在线数据应用系统。目前在淘宝主站、SNS、数据魔方、淘宝指数等产品中得到了广泛应用,给这些产品提供高并发的实时计算服务;当前集群数据量已超过300亿条,平均每个请求涉及到300万条以上记录的实时多维度计算,请求响应时间小于50ms,QPS 超过300。本次分享将就Garuda设计原理、应用场景、历史变迁进行详细介绍,也将会介绍结合Redis、HBase的一些过渡方案的快速实现原理。