写点什么

百度 Web App 应用开发者大会移师上海

  • 2011-05-07
  • 本文字数:1499 字

    阅读完需:约 5 分钟

继成功举办了百度 Web App 应用开发者大会北京站之后,近日大会移师上海。百度产品架构师田晓萌、百度高级工程师朱建庭以及大众点评网高级系统架构师王宏为大家带来了精彩的主题演讲,随后的 Open Space 环节中,各位演讲人、嘉宾及与会者也做了深入交流,会后大家均表示意犹未尽。

田晓萌在开场演讲中对百度应用开放平台做了一个介绍,自去年 8 月底上线以来,该平台的累计使用次数已达数十亿次,有 30000 提交应用,超过 10000 个审核通过的应用,20000 名以上的开发者投入其中;不少应用上线后使用量的增长惊人,有的使用次数增长高达 5000%。百度开放平台为开发者和用户架起了一座桥梁。关于百度开放平台的更多内容可以访问活动北京站的报道

随后,参与了百度应用开放平台建设的朱建庭介绍了如何开发一款平台上的应用。与其他的开放平台有所不同,百度应用开放平台上的应用既可以出现在网页搜索结果页面里,也可以出现在应用的独立页面中,因此它的加载方式是先在页面中加载应用画布页,随后在画布页中加载第三方应用页面。此处的加载模式又可分为 BDML 模式、BDiframe 模式与普通 iframe 模式,推荐使用普通 iframe。之后,他又详细说明了应用的参数校验方式、用户登录授权方式、OpenAPI 的调用方式,还有平台对应用稳定性的监控策略等内容。并为提升用户体验提了一些建议,例如,针对页面高度自适应的问题就有如下方案:

  • 所有页面都使用一样的固定高度
  • 各页面高度不一致,但都是固定高度
  • 各页面高度不确定,为自适应 JS 函数传入可能的最小值
  • 同一页面的高度可能会因 JS 事件而发生变化,此时可重新设置高度

在《大众点评网的 Web 开发之路》中,王宏介绍了大众点评网是如何从2003 年的2 名技术人员一台虚拟主机,发展到现在102 名技术人员35 台主干服务器,在发展的不同阶段遇到了什么问题,他们又是如何解决的。大众点评网的技术发展路线对中小网站来说非常具有参考价值。

比如,在走过初创期之后的2005 年,大众点评网已经达到了180 万动态请求,这时他们的优化措施主要是动静分离,建立了动态和静态两个站点,压缩CSS、JS 资源,对图片进行优化,使用gzip 缩减带宽开销。尤其是要为静态站点设置一个短域名,这样可以缩短路径长度,更重要的是能减少同域的Cookie 网络传输开销。另外还要合理地设置过期时间,充分利用本地缓存。此时他们使用了第三方CDN,考虑到CDN 对静态资源的更新策略不同,王宏建议通过URL Rewrite 为文件名增加版本号的方式进行静态资源的版本控制,例如在CDN 上以xxx.v22.css 的文件名来表示这个css 文件的22 版本。

2008 年开始,网站的发展进入了一个新的阶段,此时的网站架构又有了新的变化,遇到了新的问题。比如图片文件数量剧增,导致服务器的 IO 居高不下,这时他们引入了分布式文件系统来存储这些图片,建议在初期就要对文件存储目录做合理的规划,避免大量文件都存储在一个目录中。针对缓存的使用,要控制缓存对象的粒度,注意对象序列化带来的 CPU 及网络开销,可以通过缓存自身的失效机制来实现大批量缓存数据的清除。大量的原子更新会造成数据热点,要对数据表做适当拆分,对于原子更新可以考虑使用目前流行的 NoSQL 产品,比如 Redis MongoDB

演讲最后,王宏总结了几点经验:

  • 尽早动静分离
  • 突发性的诡异问题,往往都是由于低级错误造成的
  • memcached 好用,但要用好却不容易
  • 谨慎使用 SQL Join
  • 使用成熟的第三方平台,把你不擅长的事交给擅长的人去做
  • 建立有效的监控系统

在活动最后的 Open Space 环节中,来自篱笆网五分钟盛大等公司的嘉宾与大家做了精彩互动。百度 Web App 应用开发者大会下一站将移师深圳,后续各站的详细议程请关注大会专题页面,我们期待您的参与。

2011-05-07 09:082099
用户头像

发布了 135 篇内容, 共 66.7 次阅读, 收获喜欢 43 次。

关注

评论

发布
暂无评论
发现更多内容

DolphinDB插件开发深度解析

DolphinDB

数据库 大数据 时序数据库 插件开发 DolphinDB

我给我讲GIT,并成功把我得罪了

加百利

git 7月日更

union 分页/group/join 复杂查询(.net core/framework)

Spook

sql ORM

Go 学习笔记之 数组

架构精进之路

Go 语言 7月日更

DataWorks赋能企业一站式数据开发治理能力

阿里云大数据AI技术

小马哥的Java项目训练营-毕业总结

姑射仙人

互联网公司的「敏捷开发」流程是怎么样的?每个职位的角色和分工是什么?

万事ONES

华为云薛浩:媒体业务进入全面云化时代,云原生成为必然选择

华为云开发者联盟

云原生 媒体 音视频 华为云

在数据库中如何查询表的创建时间?

华为云开发者联盟

数据库 日志 视图 GaussDB(DWS) 查找对象

统一缓存帝国 - 实战 Spring Cache

悟空聊架构

缓存 passjava 悟空聊架构 7月日更 Spring Cache

什么?C语言也能try...catch!

实力程序员

萌宠大陆APP开发|萌宠大陆系统软件开发

4轮技术面+1轮HR面,成功拿到腾讯40k*16的Offer ,详解面试流程和真题解析

Java 程序员 架构 面试

并发王者课-铂金9:互通有无-Exchanger如何完成线程间的数据交换

MetaThoughts

Java 多线程 并发

替换 Spring Cloud,使用基于 Cloud Native 的服务治理

火山引擎开发者社区

云原生 后端 Service Mesh 服务网格

使用tar 命令进行文件的归档和压缩

学神来啦

云计算 Linux 运维 linux运维

腾讯二面:Linux操作系统里一个进程最多可以创建多少个线程?

白亦杨

Redisson 分布式锁源码 06:公平锁排队加锁

程序员小航

Java redis 分布式锁 redisson

网安行业这几个熟悉又陌生的名词,啥帽子都清楚啦?

郑州埃文科技

我删库跑路失败了

程序员鱼皮

Java c++ Python Linux 服务器

如何利用极狐GitLab CI提高生产力?

极狐GitLab

ci

拖延背后的故事

卢卡多多

拖延症 7月日更

银行业智能运维的探索与实践

云智慧AIOps社区

银行数字化转型 智能运维

我还是没有忍住,于是乎我开通了lua语言学习专栏!

李阿柯

lua 专栏

研发管理和项目管理有哪些痛点?

万事ONES

研发管理 ONES 项目管理工具

底层技术支撑智慧出行,汽车智能化发展下区块链大放异彩

旺链科技

区块链产业

多媒体技术(一)之图形图像

轻口味

android 音视频 计算机图形学 图形图像处理

Python 绑定:从 Python 调用 C 或 C++

华为云开发者联盟

c c++ Python 函数 Python 绑定

RTC为何这么火?

anyRTC开发者

音视频 WebRTC RTC 实时通讯

百度交易中台之商品推广流程构建以及实现

百度Geek说

中台 软件架构 电商 交易

百度Web App应用开发者大会移师上海_Java_丁雪丰_InfoQ精选文章