“我们要在高速行驶的过程中把奥拓升级成奥迪。”第47期百度技术沙龙现场上,百度搜索研发部资深工程师蒋锦鹏这样说道。正如这次他分享的主题《sofa:像搭积木一样构建系统》一样,百度在通过sofa技术打造搜索技术的新时代。
据了解,从接口定义,到组件开发,再到分布式服务托管,sofa提供的整套环境令开发者可专注于自己的业务逻辑,独立地开发各种组件。最后简单地把它们集成起来就能组成靠谱的互联网应用。sofa支持快速实验,你可以像换掉一块积木一样快速对系统进行变更,以响应瞬息万变的市场需求。并且通过集群通信和异步调用可以轻松应对访问量和数据量的增长,你甚至不需要写一行代码,简单修改几行配置就能实现弹性架构。这就是sofa所倡导的以搭积木的方式构建系统的方法论,令开发工作变得更加简单直观。
承办此次活动的百度技术沙龙,是国内规模最大最具影响力的技术沙龙,“百度技术沙龙已经成功举办47期,长期的沙龙组织经验,使我们深刻了解到技术开发人员的需要点,并且百度愿意将前沿的技术分享给大家,让更多的开发者受益”百度技术沙龙相关负责人说。
百度搜索研发部资深工程师蒋锦鹏说,sofa构建系统的高效开发可以使“奥拓”变“奥迪”。
Sofa由“苛刻”需求应运而生
作为互联网技术人员,经常会遇到这样的问题,被产品经理催进度,然后反复的修改,这种情况对于技术人员可谓苦不堪言。快速搭建新的系统、快速响应现场变化,并能够完成试错等等是目前互联网普遍需要的技术,是解决上述问题最有效的手段。
百度搜索研发部资深工程师蒋锦鹏表示:“百度搜索引擎是一个非常复杂的系统。其后台模块众多,逻辑复杂,架构庞大。同时我们处理的访问量、数据量也非常惊人,对系统的稳定性、性能、延时提出了极高的要求。如何又快又好地拥抱变化,是一个摆在所有人面前的难题。正是基于这种需求,sofa技术在百度应运而生。"
准确的说,sofa提供一套面向接口、面向组件开发的规范、运行时库、工具和平台支持。根据统一接口开发的sofa能够很容易的替换后台的实现,同时又能够做到很大程度上的隔离。同时还能够保证本地、远程架构的透明扩展,甚至透明的变成一个服务,在这个过程中不需要修改代码。
Sofa仅500行代码构筑搜索引擎
500行代码即可构建搜索引擎,这似乎太不可思议,然而通过sofa确实能够做到,蒋锦鹏并在沙龙现场演示了这款迷你的搜索引擎。他表示:“麻雀虽小五脏俱全,这款迷你搜索引擎不仅包含各种功能,还能够扛住很大的压力,并且可以做动态的扩展。”
从系统对外接口定义,到web前端开发,再到内部接口划分,再到快速原型实现,再到在线服务调试,再到快速实验python版中文分词,最后轻松应对访问量和数据量增长。sofa让开发者一步一步以非常简单的方式搭建出一个靠谱的迷你搜索引擎,并在开发的全流程上给予用户有力的技术支持。这就是sofa所倡导的以搭积木的方式构建系统的方法论,令开发工作变得更加简单直观。
“sofa技术非常有魅力,这项新的技术带来了简单和便捷,也提供了新的管理思路,期待百度能够更加完善这项技术。”一位现场听众表示。
Sofa引发高效开发创新“革命”
据了解,sofa的基本机制已经成型,但会继续完善,尤其会在稳定性、易用性和安全性三个方面做出进一步提升,并且继续完善PHP的支持,以及对Java语言和P2P组件下载方式的支持。
蒋锦鹏的现场演讲,吸引了大批听众,连过道里都挤满了人。一位现场听众说:“Sofa带来高效开发的创新革命,给我们这些开发人员新的思路。百度愿意把这些技术无私分享给我们,很受启发。”
据了解,百度技术沙龙每月举办一期,每期都会给听众带来百度和业界最前沿的技术。比如,上一期所讲的百度识图相关技术,这一期则是最新的sofa技术,实际上这两期都与百度的搜索技术息息相关,并且它们有个共通的特征都是当下最前沿的技术。
业内专家表示,百度技术沙龙秉承“畅想、交流、争鸣、聚会”的理念,每一期都吸引大批的IT技术从业者参与,这种倡导变革与分享、践行技术开放的行动,能够有效推动中国互联网的技术发展与行业创新。