写点什么

58 集团 CTO 邢宏宇:58 的技术演进之路

  • 2016-12-19
  • 本文字数:3384 字

    阅读完需:约 11 分钟

2015 年到 2016 年,58 集团在整个业务和战略层面面临了几项大的挑战:一是各平台间整合后如何发挥协同优势,如何搭建适应各个业务线发展的大平台 + 垂直的业务模型;二是经过十年的高速发展,如何在产品、技术体系和架构仍存在诸多问题的情况下让业务跑的更快;三是怎样从此前的分类信息服务过渡到垂直化业务模式。
基于这样的大背景,外界最关心的无外乎两点,即:

  • 在业务整合的基础上,58 的传统技术架构和体系该进行哪些调整?
  • 在从平台化到平台 + 垂直的演进过程中,技术架构该做哪些升级和再造?

ArchSummit2016 北京——58 集团架构与大数据应用创新专场上,江军平、孙玄、闫杰、赵健博、沈剑 5 人分别对 58 核心技术平台和技术架构的设计思路进行了分享、介绍。例如千亿级存储平台的打造就经历了从 MySQL+Cache 到 WTable 再到 WList 的多轮演进;为适应差异化业务的需求和终端使用度的转变,58 又是如何搭建流式特征挖掘平台、柔性广告服务框架来应对的。

为更全面的输出 58 集团的技术演进历程,向来低调的邢宏宇也在会后接受了 InfoQ 的专访,阐述了这一年来,他对技术决策的一些思考和对 58 技术演进历程的一些感悟。正所谓“与其战胜敌人一万次,不如战胜自己一次”,这条路上,邢宏宇和 58 都在做着一道战胜自己的决策。同时,58 特殊的业务板块组成机制也决定着,58 技术团队在架构和体系搭建上必须“因地制宜”,走出一条自己的特色。因此,“孤独”与“伟大”相伴,“磨砺”与“美好”共眠。

58 技术发展到哪、未来要去哪

对于以上两点,58 技术团队在解决方案上主要经历了两个阶段的思考:

一、分析 58 现有的技术架构,判断它是否能适应目前的业务诉求。随着平台 + 垂直的战略方向落地、合并后集团研发人员的快速扩增,58 技术决策不仅仅是做浅层次的局部修补,而是要完成对整个技术架构的升级和再造,58 内部将其称之为技术 3.0 阶段。技术 3.0 将“面向未来的架构设计、支撑平台化及垂直化未来演进、更好的满足业务闭环需求”作为理念,以实现技术对业务的核心支持。

二、在架构模型做清晰的逻辑分层和业务的核心分层,将其中可以成为基础架构和基础核心模块的部分提炼出来。这个过程中形成了 58 现阶段较为关键的技术核心系统,包括存储平台、架构平台、核心服务、大数据平台等。例如,在数据量、请求量爆发式增长的业务环境下,为解决传统 MySQL 存储在扩容、读写性能、扩展性和可用性等方面所暴露的问题,58 自建了一套分布式存储平台 WTable。并且为解决在筛选、排序操作及开发效率层面所存在的痛点,又完成了从 WTable 到 WList 升级。

对架构和核心模块分层的过程,也让 58 技术团队厘清了此前业务改造升级过程中,缺乏重视或容易被忽略的几点重要理念:一是如何做简单化设计,即在理解和分析各业务线基础上,将其抽象变为更为重要的核心系统。二是全面去做服务化。过去 58 的技术核心模型多是基于库和框架间的共享,互相之间过度依赖耦合。而服务化就是让 58 内部基于服务的核心能力能完成自我的升级迭代,减少多个模型间的干扰和影响。三是可管理。随着参数和核心数据的可视化实现、业务演进的深化,58 会越来越重视对架构演进过程和新系统平台的可管理。

同时,邢宏宇认为任何技术决策都不能孤立的站在技术的角度来制定或思考,技术方向和技术战略方向是与业务模型和未来的演进、组织能力和组织变化息息相关,因此,技术演进必须要在遵循客观逻辑的基础上“因地制宜”。

在邢宏宇看来,58 技术真正的“因地制宜”包括三方面。除了设计面向未来的框架,还包括在兼容原有模式的原则下实现对架构系统的平滑升级和迭代升级,不断替代原有系统。其次,在兼并各业务线特征时,58 倡导技术上抓大放小、求同存异发展步调,面对不同业务板块上技术成熟的快与慢,邢宏宇认为应该在逐渐改造过程中接纳暂时的不完美。

演进的技术如何形成高壁垒

面向未来的设计决定了 58 目前的架构具有较大的延展性和伸缩性,按照服务化平台的理念去做架构体系,58 的核心技术会在服务化功能上进一步升级,变成58 内部的云

此外,邢宏宇认为,接下来 58 的技术还要形成在大数据及数据智能等方向上的自身特色,使这些能力可以成为构建 58 核心竞争力的壁垒。

在邢宏宇看来,58 的技术积累已完成从 0 到 1,从无到有的过程,但从有到好还需要进步。这段路需要迈过三个“坎”,一是用技术实现对用户更快的响应速度,也使团队协作和内部沟通更有效率;二是基于原先不能实现但又具有重要作用的用户所需体验,用技术做出相应的变革。例如对于长时间前的历史帖子显示功能、投递简历环节的实时联系及互动功能,都是在技术改造和架构升级过程中完成的突破;三是在朝“好”迈进的途中,会体现更多的创新性机会。邢宏宇认为,这个过程为培育创新提供了土壤和孵化器,在满足用户需求的同时,也是对 58 技术能力储备的打磨。

不过从宏观角度看,人们的传统认知里,58 或许并不算真正意义上的技术公司,尽管从站点初期小流量发展到超 10 亿量级的综合化平台,58 技术架构经历了无数次的演进和优化,但行业却很少将 58 看作以技术为主要导向的企业。此外,近些年关于 58 技术的相关曝光也相对较少。

也正是基于此,58 集团在本次 ArchSummit 北京 2016 大会上设立了 58 集团专场,目的就是对外放声和输出这几年来 58 在技术上所累积的经验和实力,包括分享其在存储和大数据平台、人工智能、微服务架构上的创新理念和实际思考。邢宏宇说:“任何技术上的改进,反映到产品或用户体验上需要一定过程。或许这种成效不是立竿见影,而是需要一两年的蛰伏。所以第一步 58 需要小范围进行一系列技术分享,或许明年某个结点,我们也会做类似技术的开放日的活动,从而实现更全面的放声。”

怎样打造优质技术团队?

以上几点体现了 58 未来在技术效率和组织可持续性能力上的优势。当然,对于构建企业或技术方的壁垒,技术方向的落地只是其中一点,此外还应包括对人才结构和技术文化的塑造。

邢宏宇很看重技术员在技术视野和技术思维上的磨砺。他认为好的架构师需要在专业性的持续储备上,跳出自己的视野,形成合理性视角,也就是通常意义上的用户视角。"越是好的优秀管理者越能用简单的方法解决复杂的问题”。

几千人的 58 技术团队非常注重对人才梯队的搭建,对工程师文化的塑造。在邢宏宇看来,对技术高低的评定包括两个方面:一是技术的专业能力,二是技术理念能力。58 的工程师文化提倡的就是对技术理念和文化的实践。此外,文化从某种程度上来说是从上到下的传达和感染,为了更系统的制定技术决策,邢宏宇平时除了将时间花在整体的技术战略方向把握和人才选拔、培养方面,还会在产品、业务流程和业务模式上有更多的投入。“如果只孤立的站在技术视角来制定决策,很多问题的解法肯定会受限”,这是他在专访中多次强调的观点,“如果有时候是产品或商业流程不对,那么即便投入大量的精力做再好的技术,也很可能是事倍功半;这时就需要在根本上改变产品或商业流程”。

怎样用“热炒”中的概念解决实际问题?

首先,对于这两年热炒的“微服务”概念,邢宏宇坦言,自己并不像业界那么热衷。在他看来,微服务并不是整个架构体系的核心点,反而应该是服务的治理。将服务拆成足够细小后,表面看每个服务都可迭代,但接下来怎样让如此细化的分散服务有效融合,理清相互间关系,都是微服务架构的真正问题和痛点。相反,无论做成怎样规模的服务,都对服务的治理和管理有很高的要求,即为邢宏宇谈及的服务治理和管理系统。

另外,对于 AI 和大数据在 58 技术上的应用,邢宏宇也坦言,AI 在 58 乃至国内整个发展都走在较为初级的阶段,目前在搜索、推荐和广告平台上有使用,是小团队在摸索。

采访后记

专访中,邢宏宇也向 InfoQ 讲述了此前的一些个人经历和个人思考,虽然其本人不愿过多的谈及自己,但至少我们可以从他对技术的思考、认知中了解到 58 集团这一年技术演进的根源、方向。正如“每一段传奇人生背后都有一个精彩的故事”一样,58 的技术故事也在沉淀中继续累积……

嘉宾介绍

邢宏宇,毕业于清华大学电子工程系,获得硕士学位。2005 至 2015 年在腾讯任职,历任搜索产品部副总经理、网络媒体产品技术部总经理、微博事业部总经理等职务,有丰富的产品、技术、运营团队的管理经验。2016 年 3 月,58 集团任命邢宏宇为 CTO,全面负责 58 同城和赶集网、安居客的技术战略方向的制定、技术创新以及集团研发资源的规划、管理和调配。

2016-12-19 02:393818
用户头像
Cherry倩芸 InfoQ高级策划编辑

发布了 51 篇内容, 共 21.6 次阅读, 收获喜欢 34 次。

关注

评论

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

云上MongoDB常见索引问题及最优索引规则大全

MongoDB中文社区

mongodb

C++后端开发进阶学习大纲指南

赖猫

c++

焱融看|AI 如何驱动存储发展

焱融科技

云计算 AI 分布式 高性能 文件存储

[Day9]-[动态规划]编辑距离

方勇(gopher)

LeetCode 动态规划 数据结构算法

Go 实现 WebSockets:1.什么是 WebSockets

宇宙之一粟

Go 4月月更

订单管理系统(OMS)搭建实战 - 低代码拖拽定制订单管理系统

蒋川

低代码 低代码开发 低代码平台 订单系统 订单管理系统

对话核心开发者,波卡的EVM+最新技术分享活动回顾

One Block Community

区块链 Substrate EVM 波卡

Substrate Builders Program | 了解波卡生态云计算平台与最先进的查询节点框架

One Block Community

区块链 Substrate 波卡

怒肝 JavaScript 数据结构 — 栈篇(二)

杨成功

数据结构 4月月更

Java 初始化 List 的几种方法

HoneyMoose

Tomcat:应用加载原理分析

IT巅峰技术

Tomccat

Spring定义BeanDefinition

IT巅峰技术

Go 学习笔记——Only For

为自己带盐

Go 4月月更

C++11 智能指针之shared_ptr<void>

轻口味

c++ android 4月月更

Hoo虎符研究院|一图了解币圈后浪Magic Eden

区块链前沿News

虎符研究院

互联网的下一站,大概率是能源

脑极体

架构师作业2

小虾米

架构师实战营

设置 Jupyter Notebook 主题

信号量

Python Jupyter Notebook notebook 主题 科学计算

MariaDB 的自增字段 AUTO_INCREMENT 字段

HoneyMoose

自己动手写Docker系列 -- 5.3实现logs命令查看容器日志

golang Docker

前端食堂技术周刊第 32 期:2022 年 3 月 TC39 会议、Rome Formatter、Node 内置 Test Runner

童欧巴

JavaScript 程序员 前端 web前端

哈希值游戏DAPP开发|区块链哈希值竞猜游戏开发

薇電13242772558

区块链 哈希值

音视频&流媒体的原理以及基础入门知识

玩转音视频技术

Linux SRS 音视频开发 流媒体开发

从分层架构到微服务架构(五)之服务化架构

元闰子

架构 从分层架构到微服务架构

基于 HTML+CSS+JS 的纸牌记忆游戏

海拥(haiyong.site)

html 游戏 4月月更

Linux驱动开发-编写NEC红外线协议解码驱动

DS小龙哥

4月月更

crmeb Java 项目打包可运行jar文件详细教程

CRMEB

在线XML转JSON工具

入门小站

工具

Redis集群架构剖析(5):复制与故障转移

非晓为骁

主从复制 redis cluster master

关于数据湖几个问题详细剖析

五分钟学大数据

数据湖 4月月更

Java 在 IntelliJ IDEA 中提示 set the language level 9

HoneyMoose

58集团CTO邢宏宇:58的技术演进之路_语言 & 开发_Cherry倩芸_InfoQ精选文章