PHP技术在淘宝搜索中的应用.ppt

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP技术在淘宝搜索中的应用

与其他搜索产品不同,排行榜使用Nginx作为Web服务器,主要原因是排行榜中有大量的静态内容。 * 目前在3个机房部署,近百台前端机,每天几亿流量。 LAMP架构,前端机处理PHP请求;CSS/JS/图片资源放在CDN上。 Linux + Apache + APC + PHP; 缓存采用Memcached; 数据库使用MySQL * Bootstrap是我们的入口程序,处理用户的请求,做一些前期的校验; QP是我们的Query解析模块,识别用户关键词,分析用户查询意图,改善搜索结果。 经过QP后,我们已经对用户的Query有了一定的了解,也知道要查询哪几个模块了。在这个时候,可以看看是否命中了Cache,如果命中就直接返回数据。否则就查询后台各个服务的接口,组装数据。 数据拿到后,做一些处理,如:记录日志等信息,之后套用模板展示在页面上。 * 上图是Velocity 2009大会上,Google和Bing的研究人员总结出来的性能对于搜索的影响。可以看出,当网站速度下降2秒后,对于用户搜索、点击和满意度都有这严重的影响。 毋庸置疑,Web性能优化也是最近几年非常热门的话题。从Yahoo!在2006年推出YSlow以及相应的14的军规,到领军人物Steve Souder提出WPO的概念。几年时间里,网站性能重要性的概念已经深入人心,除一线的工程师,包括产品经理以及管理层纷纷加入其中,推进页面性能优化。大家普遍认为:性能好的网站,能吸引更多的用户,提供更好的用户体验,增加收入,并且降低成本。 * 预期理论很重要。如果你不能做到很快,也要让用户感觉到比较快。 * 使用 * PHP技术在淘宝搜索中的应用 PHP技术在淘宝搜索中的应用 PHP技术在淘宝搜索中的应用 PHP技术在淘宝搜索中的应用 PHP技术在淘宝搜索中的应用 PHP技术在淘宝搜索中的应用 PHP技术在淘宝搜索中的应用 淘宝 见素 30分钟 Agenda 搜索产品介绍 性能优化 故障排查 系统架构 Polyglot:多语言混合编程 淘宝有非常多的应用是基于Java开发的。 为什么我们会选择PHP? 熟练程度 开发效率 Java + PHP 相得益彰 * 搜索产品介绍(Products Overview) 搜索产品介绍:淘宝搜索 淘宝搜索() LAMP架构 搜索产品介绍:一淘 一淘() LAMP架构 搜索产品介绍:淘宝排行榜 排行榜() LNMP架构 * 系统架构(Architecture) 网络 电信机房 网通机房 教育网机房 应用架构 搜索结果页 页头 搜索框 Compass 智能导航 相关搜索 掌柜推荐 Tab 搜索定制快速翻页 产品搜索结果 Refine 筛选区 商品搜索结果 性能优化(Performance) 为什么要关注性能? 性能优化中的CPP原则 Cache 缓存 APC Memcached Parallelism 并发 并发访问多个接口 Prediction 预期 Flush early for First Byte Cache, Cache, Cache! 具体实践 前端 CDN Combo:合并HTTP请求; 压缩CSS/JS文件 在首页预先加载结果页所需的部分文件 图片的Lazy-load 服务器端 Gzip Multi Flush Multi CURL Memcached(Multi Fetch) PHP扩展(解析XML文件) 故障排查(Troubleshooting) 哈勃监控 报警 定期扫描日志,统计PV、超时和latency等数据。如果发生问题,发短信报警。 期待您的加入! 下一代淘宝搜索,期待您的参与! 联系方式: jiansu@ 新浪微博: @淘宝见素 各位来宾,各位朋友,大家上午好! 非常荣幸有这样一个机会和大家分享PHP技术在淘宝搜索中的应用。淘宝搜索()是一个典型的LAMP/LNMP应用,也是淘宝访问量非常大的一个系统,每天流量在几个亿。在过去几年的开发过程中,积累了一些经验和最佳实践。今天我会从架构、性能等角度和大家分享这些内容。 * 各位可能对淘宝的技术已经有所了解,淘宝有非常多的应用是基于Java开发的,有上千名Java工程师。可以说是国内最大、最成熟的Java开发团队之一。 但Java语言,和C语言一样,并不是为开发动态Web应用而设计的,在生产力上存在一些问题。更重要的是,我们对PHP技术更加熟练,也更有经验。 不同的语言有各自的优势和不足,混合编程可以充分利用各种程序设计语言的优势。在我们开发过程中同时使用了Java 和PHP,通常的场景是使用Java封装一些后台的服务,类似于MVC中的Model;使用PHP进行逻辑控制和页面展现,做View、Controller的工作。 * PHP技

您可能关注的文档

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档