elementui技术解密-揭秘腾讯后端技术体系

2023-08-29 0 6,428 百度已收录

1 序言

为了了解目前后端的发展趋势,让我们先从国外各大互联网公司入手,了解他们的最新发展和未来规划。 这是第三篇揭秘大厂后端技术体系的文章。 前两篇文章已经描述了阿里和百度近年来在后端技术方面的技术发展。 本文源自腾讯

2腾讯团队介绍

2018年9月30日,腾讯宣布启动新一轮战略升级,优化组织架构,对原有七大事业群进行拆分重组,在保留原有四大事业群的基础上,新增平台和内容业务集团和云与智能产业集团。

平台与内容事业群(PCG)成立后,原来分散在QQ、QQ浏览器等不同产品的团队聚集在一起。 腾讯希望,当5G时代到来时,他们能够成为内容流媒体方面重要的外国媒体。 新的平台和内容事业群(PCG)成立,腾讯规模最大、规模最大的部门诞生。 包括新闻、长短期视频、电影产业、动漫、信息流、社交平台等各级管理党员和产品业务,由之前的四个不同业务集团组成,员工人数超过10000人。

云与智慧产业事业群(CSIG)主体部分脱胎于原SNG下的腾讯云业务,包括原SNG的音视频团队、优图AI实验室团队,同时也纳入了智能产业事业群。原CDG的零售、原MIG的地图、安全、孵化器的互联网+业务。 这是腾讯20年历史上首次出现完全TOB的大型业务部门。 腾讯将TOB业务提升到前所未有的战略高度。 原本分散在各个业务群下的TOB业务获得了统一的插座,将以日益融合、高效的方式为企业客户提供服务。

介绍完腾讯的组织架构,我们重点关注一下腾讯后端技术团队的情况:

合金队

腾讯Web后端团队-AlloyTeam来自腾讯SNG(社交网络事业群)。 始于2008年成立的腾讯WebQQ团队,2011年10月24日,将使用<Tencent AlloyTeam>作为团队名称,用于公司外部对外交流。 AlloyTeam的寓意是:就像合金一样,各种技术和每个成员的智力都会聚合在一起,形成更强的合金特性。 未来,我们也希望共同推动后Web端技术在中国的发展! 我们以Web后端技术的研究为目标,热衷于HTML5和移动Web技术,用最酷的新技术开发各种有趣的开源项目。

AlloyTeam在业界拥有特别高的声誉,在开源社区也非常活跃。 一些流行的项目包括:wepy-mini程序组件框架、omi-后端跨平台框架、weui-Momo风格的UI组件库等。

四网

IVWEB团队是腾讯专业的后端团队。 我们的口号是“卓越Web,全栈开发”。 主要负责腾讯联通旗下直播产品NOW直播、花花直播、花花交友、手机QQ附近等腾讯直播平台的开发。 团队专注于社区建设和对外沟通分享。 目前外部开源项目包括:Feflow和Aegis。

除了开源项目之外,IVWEB团队还组织了TLC腾讯直播开发者大会,目前已经是第七届了。 已经颇具影响力了。

CDC

腾讯CDC,全称“腾讯用户研究与体验设计中心(CustomerResearch&UserExperienceDesignCenter)”,成立于2003年,将于2006年5月成立。腾讯产品的用户体验探索互联网生态体验的创新。

CDC经历了腾讯各大产品的体验设计,如QQ、QQ空间、QQ游戏、RTX、QQ笔记本管家、QQ浏览器、QQ音乐、腾讯视频、开放平台、企业QQ、腾讯网、财付通、腾讯微信博、交友网、腾讯地图、QQ拼音、SOSO、拍拍、腾讯WE大会、微众建行、米大师、企业云、安全云、AILAB、微宝、腾讯公益、数字山东等,还有更多概念产品孵化。

T吉迪斯

TGideas隶属于腾讯互娱,专注于IP内容能力的建立和发展。 是一支集产品内容开发、内容营销、IP商业化拓展、体验设计于一体的中期设计团队。 成员由资深创意人员、内容创作者、视觉设计师、概念美术师、技术工程师、内容营销策划人员、内容业务人员等成员组成。

这个团队在创意设计方面有着特别扎实的基础,创作了很多图像和影片。 同时,在技术方面,他们还开源了如适合中国联通的Motion组件库、移动Mocha-UI组件库、字体压缩FontSpide等。

右图是腾讯后端技术体系全景图,包括基础设施、服务层、跨平台框架、UI组件库、小程序、工程:

3 基础设施

依托腾讯云服务的能力elementui技术解密,腾讯积累了强大的基础设施能力,这里只抽取了一小部分与后端技术体系相关的服务。

CDN作为静态资源分发方式早已被广泛应用,对于提升用户体验有很大作用。 腾讯云不仅提供快速、稳定、智能、安全的全网内容加速服务,还支持海外加速和全球应用加速,对全球应用有很大帮助。

Serverless作为一种无服务器技术服务,已经成为各大云厂商的标配。 Cloud Function SCF是腾讯云为企业和开发者提供的无服务器执行环境。 您无需订购和管理服务器,只需使用平台支持的语言编译核心代码并设置代码运行的条件,即可使代码在腾讯云基础设施上弹性、安全地运行。 腾讯云全面管理底层预估资源,包括服务器CPU、内存、网络等配置/资源维护、代码部署、弹性伸缩、负载均衡等。代码按需运行,空闲时不收费。 使用云功能将帮助您减少一切运维操作,让您更加专注于核心业务的发展,实现快速上线和迭代,把握业务发展的黄金时期。

腾讯云还提供视频直播、短视频、网络安全、大数据可视化平台、小程序云开发解决方案、测试服务、监控服务、极光推送等相关能力。

其中HTTPDns解析服务提供稳定、中立的第三方DNS解析服务,有效解决DNS劫持、DNS解析速度等问题,能够有效提升用户体验。

极光推送是中国联通APP推送的主要解决方案。 它集成了iOS和Android的推送能力,解决了国外Android机型分散和缺乏统一推送能力的问题,并且具有每天数亿条消息的处理能力和非常高的到达率。

4 个小程序

陌陌小程序

陌陌小程序于2017年上线,是一款无需下载即可使用的应用程序。 目前已经构建了全新的小程序开发环境和开发者生态。 如今,已有超过150万开发者加入小程序开发。 小程序应用数量已突破百万个,覆盖200多个细分行业,日活跃用户数已达2亿。

Momo小程序是一款真正非凡的平台产品,它改变了许多人使用应用程序的方式。 而随着陌陌小程序的成功elementui技术解密,各大互联网厂商都开始开发适合自己平台的小程序,手机厂商也联手开发快应用平台。

小程序的渲染层和逻辑层分别由两个线程管理:渲染层的界面使用WebView进行渲染,逻辑层使用JsCore线程运行JS脚本。

为什么要这样设计呢? 上面提到的控制和安全,为了解决这个问题,我们需要阻止开发者使用某些浏览器提供的开放套接字,比如跳转页面、操作DOM、动态执行脚本等。

同时,小程序的资源文件被下载到本地缓存进行加载、渲染、运行,类似于原生App中的Hybrid离线包,可以提供非常好的性能体验。

wepy - 小程序组件开发框架

原生小程序开发方式相对封闭,很难依赖后端开发完整的系统生态,因此wepy希望通过组件化和现代后端开发方式将其引入到小程序开发中。

WePY(发音:/'wepi/)项目于2017年11月启动,是最早的小程序框架之一。 它是一个允许小程序支持基于组件的开发的框架。 通过预编译,开发者可以选择自己喜欢的开发风格来开启好友程序。 框架细节的优化、Promise、AsyncFunctions的引入,都是为了让好友程序项目的开发变得更加简单、高效。

特征:

小程序开发框架已经在业界全面开花。 上图是一个对比。 可见,小程序的多端开发需求非常高。 Wepy在支持小程序类型上稍显不足,同时也不具备支持联通侧容器的能力。 但在普及度和组件丰富度上还是有优势的。

westore-陌陌小程序解决方案

受 Omi 框架的启发,JSONDiff 库是专门为小程序开发的,因此配合 westore 全局状态管理和跨页面通信框架,一切尽在掌握,并且由于高性能 JSONDiff 库的缺点,滚动长列表的显示显得简单且易于管理。 概括起来,它具有以下特点和优点:

解决了小程序的痛点:

5UI组件库

我们的用户界面

WeUI是一套符合陌陌原创视觉体验的基础样式库。 陌陌官方设计团队为陌陌内部网页和陌陌小程序量身定制,让用户的使用感知更加统一。

WeUI提供了表单、基础组件、操作反馈、导航相关、搜索相关、层次化规范的组件库。 右图是表单、列表和选择器的一些组件的示例。 通过这套UI组件库,可以在Momo Web生态中构建出符合Momo原有体验的界面风格,可以保证用户的体验。

腾讯云地图

腾讯云可视化(TCV)是一站式数据可视化展示平台,致力于帮助用户通过可视化图表快速展示海量数据,零门槛10分钟打造专业大屏数据展示。 精心预设多种行业模板,将数据的魅力展现到极致。 采用免拖拽布局,无需编码,全图形化编辑,快速可视化制作。 腾讯云图支持多种数据源配置,并支持数据实时同步更新。 同时,腾讯云图集基于WEB页面渲染,可以灵活投射到各种屏幕终端。

6 跨平台

嬉皮-多终端一体化解决方案

作为前端终端一体化解决方案,Hippy拥抱W3C标准,通过复用自绘和原生混合绘图组件追求极致性能,并不断接入实现更多优质组件。 已在浏览器上应用数十种内外部服务,承载数十亿用户访问量,荣获公司2018年度代码文化奖。

行业仍在探索多终端融合的发展形式。 例如ReactNative、Weex通过JS编译和Native渲染,在开发效率和渲染效率之间取得了很好的平衡,但仍然无法直接实现Web/Native的多端融合。 因此,仍然有必要寻找一种能够实现跨平台、高性能、多终端动态发布的开发方案的框架。

HippySDK的项目结构采用三层设计,其中:

从Hippy-React框架中,你可以看到它是如何支持三种终端的:

Hippy目前有以下特点:

omi-backend跨端平台

Omi(发音为/ˈomɪ/,与Omi类似)是一个跨框架框架,基于WebComponents设计,也可以使用相同句型的omio来兼容IE8+。 支持PCWeb、移动H5和小程序开发(Oneframework、Mobile&desktop&miniprogram)。

与React或者Vue等目前主流后端框架相比,Omi有以下特点:

基于omi,已经有一整套完整的生态支持:

Kbone-后端和小程序同构框架

Kbone 解决方案的出现源于一个需求:陌陌开放社区当时只有 Web 终端。 为了让信息传播、分享和使用更加便捷,希望实现社区小程序版本,交互体验尽可能接近网页端。

这次同构到小程序端需要考虑几个激励:多端代码复用、尽可能支持现有功能、性能保证。 看来,最重要的是尽可能在不改变现有代码的情况下完成小程序的开发。

Kbone适配器解决方案的总体设计思路,我们将其概括为两个模块:建模套接字和自定义组件。 由于该方案通过提供适配器来模仿Web环境,因此用户代码不需要修改,大部分功能无需删除即可继续使用,例如vue-router、window.location操作等。

与其他使用句子翻译的后端和小程序同构框架不同,Kbone 模拟了 Dom socket,因此底层后端代码不需要做太多改动。 Kbone的解决方案最大的优点:可扩展性强,对各种特性的支持全面,对代码编译的要求少且自由度高,无需修改Web框架的底层实现,使得代码的维护和升级也方便更简单 为了简单和方便。

7 工程

在2019 ArchSummit大会上,腾讯Now直播团队分享了团队对工程相关建设的思考,从中我们可以得到很多启发。

后端工程不再只是简单的webpack打包和部署。 从完整的开发流程来看,可以包括项目创建、本地开发、功能测试、发布、在线监控等多个环节。 每个链接都有自己的需求。 基础能力建设,只有具备这种DevOps能力,才能规范研发团队的技术,提升研发和运维的效率。

在分享中,我重点思考了构建后端工程的几个方面:

写在最后

腾讯一直给大家的印象是产品驱动、默默发财,而在技术方面,并没有因为阿里、百度等技术积累深厚的公司给人们留下深刻的印象。 而且,近年来随着陌陌平台的崛起,陌陌平台的开发框架和跨端同构都取得了重大突破。 生长。

本文试图从后端的各个方面对腾讯目前的技术体系进行梳理和总结,但肯定有很多遗漏。 同时,虽然开源信息有限,但希望相关朋友能够多多交流。

这是揭秘各大厂商后端技术体系系列文章的第三篇。 后续还会有其他各大厂商的内容,精彩还将持续。 感兴趣的朋友可以关注这个公众号【码农爸爸】第一时间获取资讯。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 elementui elementui技术解密-揭秘腾讯后端技术体系 https://www.wkzy.net/game/168833.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务