O'Reilly
Velocity China 2010
,在北京举行了为期两天的大会,由
O'Reilly
和
Taobao
联合主办,本次大会的主题是
”Fast by default(
与生俱来的快
)”
,关注
web
性能(更多为前端性能)和运维。
自己有幸参加了首次在中国举行的
Velocity
大会,自我总结有以下几点:
1、
WPO web performance
optimation
2、
运维(比如
taobao
如何管理
15,000
台服务器)
3、
Automate
一些数据
Data@Taobao
•
Alexa
排名
13
•
10
亿日
PV
•
15,000
服务器
•
带宽
318G/410G
Data@Facebook
•
+5
亿的活跃用户,超过一半每天访问
•
200
亿日
PV
Performance
带来的价值
WPO
•
Web Performance Optimization
–
Drives traffic
–
Improves UX
–
Increases revenue
–
Reduces costs
How
to WPO
Measure
|
•
Yahoo!
Boomerang
•
Stevesouders.org/episodes
•
Jiffy
•
WebPagetest.org
•
ShowSlow.com
|
Profile
|
•
Firebug
•
Fiddle
•
HttpWatch
•
Speed Tracer
•
Web Inspector
•
Dyna Trace
|
Research
|
•
Domain sharding
•
Concatenation
•
Sprites vs. MHTML
•
WebP (A new image format for
the Web)
•
Prefetch
•
SPDY, cwnd=10
|
Best
practices
|
•
High performance Even faster
web sites
•
High performance JS
•
Code.google.com/speed
•
Developer.yahoo.com/performance
•
Stevesouders.com/blog
•
Perfplanet.com
|
Evangelize
(传道)
|
•
Velocity conference
•
Workshops
•
University
•
Case studies
•
blogs
|
Lint
|
•
Page Speed
from google
•
YSlow
|
Automate
|
如何做到自动化的性能优化?参见下面
|
Facebook
的
3
个前端优化框架
•
Quickling ajaxifies the whole web site
•
PageCache cache user-visited page in browser
•
BigPipe pipelines website
Quickling
remove redundant work via ajax
如上图,从首页跳转到图片
detail
页面,红框标示的部分,它们是不变化的,因此可以不用每次页面请求,都从服务器端生成这些内容,这也是
Quickling
的出发点(创新无处不在)
实现示意图:
PageCache
Cache
visited pages in client side.
如下图,在用户访问
facebook
网站时,分析用户行为发现,一般情况下,用户会多次访问首页,因此可以
cache
第一次访问,后面的请求都从本地
cache
取数据即可。
PageCache
的实现有几个难点:
•
实时更新
•
Cache
一致性
至于作者如何解决的,还是详细看他的
ppt
吧(
http://velocity.oreilly.com.cn/ppts/ChanghaoJiang.pdf
)。
BigPipe
Pipeline website
如上图,为一般情况下,一个页面从服务器生成,到网络传输,最后到客户端渲染的过程。可见它是一个串行的过程。
Facebook
的工程师,经过分析,发现一个页面(如下图),可以分成许多
Pagelets
,它们间相互影响不大,可以拆开来分别加载。
BigPipe
后,页面加载的方式变为如下方式,这样可以有效改进用户感知的页面加载时间。
更多,也请查看作者的
ppt
(
http://velocity.oreilly.com.cn/ppts/ChanghaoJiang.pdf
)
一些个人总结
•
性能提升可以带来流量、带来收入
•
前端性能优化很重要
•
有专门的团队、专门的人在做
•
人是最不可靠的,靠系统,靠自动化
•
持续的做,不是三天打渔,两天晒网
资源连接
Boomerang
(
Boomerang is a piece of
JavaScript that you add to the bottom of your Web pages, where it measures
page-load time, among other things, and beacons the results back to your server
)
:
http://developer.yahoo.com/blogs/ydn/posts/2010/06/performance_testing_with_boomerang/
Jiffy: http://code.google.com/p/jiffy-web/
SPDY
:
http://www.guao.hk/tag/spdy
Page Speed: http://code.google.com/speed/page-speed/
WebP: http://code.google.com/speed/webp/
Speed Tracer: http://code.google.com/webtoolkit/speedtracer/
Web Inspector: http://trac.webkit.org/wiki/WebInspector
Dyna Trace: http://www.dynatrace.com
Velocity china pdf: http://velocity.oreilly.com.cn/index.php?func=slidesvideos
- 大小: 90.4 KB
- 大小: 153 KB
- 大小: 50.9 KB
- 大小: 30.3 KB
- 大小: 24.2 KB
- 大小: 222.2 KB
- 大小: 35.4 KB
分享到:
相关推荐
Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎
Velocity Velocity Velocity Velocity Velocity Velocity Velocity Velocity Velocity Velocity
Velocity 和 FreeMarker区别 对于大部分的应用来说,使用 FreeMarker 比 Velocity 更简单,因为 Velocity 还必须编写一些自定义的
本课程从velocity engine也就是velocity引擎开始, 先讲解velocity的基本使用以及基础语法 , 然后再讲解velocity 的进阶内容velocity Tools , 以及velocity作为web项目的视图改如何使用 , 每一部分都会有一个综合案例...
打开网址:http://www.web-tag.net/all_17.htm 就是velocity标签大全 、教程 或下载CHM格式帮助文档
赠送jar包:velocity-engine-core-2.3.jar; 赠送原API文档:velocity-engine-core-2.3-javadoc.jar; 赠送源代码:velocity-engine-core-2.3-sources.jar; 赠送Maven依赖信息文件:velocity-engine-core-2.3.pom;...
在使用velocity作为视图层时候,经常会碰到为空的判断,这里整理了velocity为空判断
Velocity教程
Velocity入门教程,语法,Velocity布局,Spring框架集成Velocity
赠送jar包:velocity-engine-core-2.3.jar 赠送原API文档:velocity-engine-core-2.3-javadoc.jar 赠送源代码:velocity-engine-core-2.3-sources.jar 包含翻译后的API文档:velocity-engine-core-2.3-javadoc-...
赠送jar包:velocity-tools-generic-3.1.jar; 赠送原API文档:velocity-tools-generic-3.1-javadoc.jar; 赠送源代码:velocity-tools-generic-3.1-sources.jar; 赠送Maven依赖信息文件:velocity-tools-generic-...
velocity 电子书velocity 电子书velocity 电子书
开发velocity所需的jar包
关于velocity的学习资料,velocity教程和velocity用户手册
velocity中文文档 教程 velocity中文文档 教程 velocity中文文档 教程
模板:velocity和freemarker的比较模板:velocity和freemarker的比较
vim velocity插件 velocity.vim vim异常强大哦
Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。 当Velocity应用于web开发时,界面设计人员可以和java程序开发人员...
velocityTemplate java 模块 引擎\Velocity教程
JAVAEE Velocity例子工程,一个简单的Velocity例子,用的都是代码,没有用Velocity配置文件