WebRTC技术详解

随着4G的普及和5G技术的应用,实时音视频技术正在蓬勃发展。实时通信技术已经渗透到各行各业,支撑着人们的日常生活。在互联网领域,花椒、映客等直播平台吸引了大量的用户;在教育领域,通过实时直播技术搭建的“空中课堂”惠及全球数亿学生;在医疗行业,随着电子处方单纳入医保,互联网看病、复诊正在兴起,地域之间医疗资源不均衡的问题被实时直播技术逐步消除。

在WebRTC诞生之前,实时通信技术非常复杂,想获得核心的音视频编码及传输技术需要支付昂贵的专利授权费用。此外,将实时通信技术与业务结合也非常困难,并且很耗时,通常只有较大规模的公司才有能力实现。

WebRTC的出现使实时通信技术得以广泛应用。WebRTC制定、实现了一套统一且完整的实时通信标准,并将这套标准开源。这套标准包含了实时通信技术涉及的所有内容,使用这套标准,开发人员无须关注音视频编解码、网络连接、传输等底层技术细节,可以专注于构建业务逻辑,且这些底层技术是完全免费的。WebRTC统一了各平台的实时通信技术,大部分操作系统及浏览器都支持WebRTC,无须安装任何插件,就可以在浏览器端发起实时视频通话。

什么是WebRTC


WebRTC(Web Real-Time Communication)是一个谷歌开源项目,它提供了一套标准API,使Web应用可以直接提供实时音视频通信功能,不再需要借助任何插件。原生通信过程采用P2P协议,数据直接在浏览器之间交互,理论上不需要服务器端的参与。“为浏览器、移动平台、物联网设备提供一套用于开发功能丰富、高质量的实时音视频应用的通用协议”是WebRTC的使命。

WebRTC技术最初为Web打造,随着WebRTC自身的演进,目前已经可以将其应用于各种应用程序。

WebRTC的技术架构


从技术实现的角度讲,在浏览器之间进行实时通信需要使用很多技术,如音视频编解码、网络连接管理、媒体数据实时传输等,还需要提供一组易用的API给开发者使用。这些技术组合在一起,就是WebRTC技术架构,如图1所示。

图1 WebRTC技术架构

WebRTC技术架构的顶层分为两个部分:

一部分是Web API,一组JavaScript接口,由W3C维护,开发人员可以使用这些API在浏览器中创建实时通信应用程序。

另一部分是适用于移动端及桌面开发的libwebrtc,即使用WebRTC C++源码在Windows、Android、iOS等平台编译后的开发包,开发人员可以使用这个开发包打造原生的WebRTC应用程序。

第二层是WebRTC C ++ API,它是Web API和libwebrtc的底层实现。该层包含了连接管理、连接设置、会话状态和数据传输的API。基于这些API,浏览器厂商可以方便地加入对WebRTC的支持。WebRTC规范里没有包含信令协议,这部分需要研发人员依据业务特点自行实现。

WebRTC支持的音频编码格式有OPUS和G.711,同时还在音频处理层实现了回音消除及降噪功能。WebRTC支持的视频编码格式主要有VP8和H264(还有部分浏览器支持VP9及H265格式),WebRTC还实现了Jitter Buffer防抖动及图像增强等高级功能。

媒体传输层,WebRTC在UDP之上增加了3个协议。

■数据包传输层安全性协议(DTLS)用于加密媒体数据和应用程序数据。

■安全实时传输协议(SRTP)用于传输音频和视频流。

■流控制传输协议(SCTP)用于传输应用程序数据。

WebRTC借助ICE技术在端与端之间建立P2P连接,它提供了一系列API,用于管理连接。WebRTC还提供了摄像头、话筒、桌面等媒体采集API,使用这些API可以定制媒体流。

如何学习WebRTC技术?

WebRTC技术包含了音视频编解码技术、传输技术、流媒体服务器技术等,涵盖了音视频处理和传输的方方面面。这些技术中任意一个都能成为独立的课题,都值得花大量时间深入研究。除此之外,理解WebRTC相关API,还必须掌握现代Web技术,尤其是ES6、Promise等语法知识。可见,学习WebRTC技术需要掌握大量的预备知识,这对于初学者来说有一定的门槛。

《WebRTC技术详解:从0到1构建多人视频会议系统》是一本能够降低国内技术人员使用WebRTC的门槛,帮助研发人员更好地将WebRTC技术应用到产品中的书。本书系统地涵盖WebRTC的技术内容,剥离层层技术面纱,将WebRTC以一种易于理解的形式完整呈现给国内技术人员。

本书特色

■全面涵盖WebRTC 1.0规范。

■详细讲解WebRTC底层技术。

■结合示例演示WebRTC API的使用。

■从零起步实现高效、实时的信令系统。

■使用WebRTC技术从0到1打造开源视频会议系统。

作者介绍

栗伟,资深音视频技术专家,在该领域有多年实践经验,对WebRTC有非常深入的研究。曾任职于中科院计算所、CC视频,任职期间利用WebRTC技术开发了直播、在线课堂、视频会议等商业产品,并发用户数达到500万。开源社区的积极参与者,在GitHub上开源了视频会议项目WiLearning,免费供中小企业使用。

目录

●第1章 WebRTC概述1

1.1 WebRTC的历史1

1.2 WebRTC的技术架构2

1.3 WebRTC的网络拓扑3

1.4 Simulcast联播4

1.5 可伸缩视频编码5

1.6 WebRTC的兼容性5

1.7 其他直播技术6

1.8 统一计划与Plan B8

1.9 本章小结9

●第2章 本地媒体10

2.1 媒体流10

2.1.1 构造媒体流11

2.1.2 MediaStream属性11

2.1.3 MediaStream方法11

2.1.4 MediaStream事件14

2.2 媒体轨道15

2.2.1 MediaStreamTrack属性15

2.2.2 MediaStreamTrack方法17

2.2.3 MediaStreamTrack事件20

2.3 媒体约束22

2.3.1 约束类型22

2.3.2 数据类型与用法23

2.3.3 通用约束25

2.3.4 视频约束25

2.3.5 音频约束25

2.3.6 屏幕共享约束26

2.3.7 图像约束26

2.3.8 约束的advanced属性27

2.4 媒体设备28

2.4.1 WebRTC隐私和安全28

2.4.2 获取摄像头与话筒29

2.4.3 共享屏幕30

2.4.4 查询媒体设备31

2.4.5 监听媒体设备变化33

2.5 从canvas获取媒体流34

2.6 从媒体元素获取媒体流34

2.7 播放媒体流35

2.8 录制媒体流36

2.8.1 构造MediaRecorder36

2.8.2 MediaRecorder属性37

2.8.3 MediaRecorder方法39

2.8.4 MediaRecorder事件42

2.9 示例45

2.9.1 代码结构45

2.9.2 获取图片像素数据46

2.9.3 替换视频背景47

2.10 本章小结48

●第3章 传输技术49

3.1 RTP49

3.2 RTCP52

3.3 SRTP/SRTCP54

3.4 TLS/DTLS55

3.5 SDP55

3.6 ICE57

3.7 搭建STUN/TURN服务器63

3.8 本章小结65

●第4章 连接管理66

4.1 WebRTC建立连接的过程66

4.1.1 会话描述信息RTCSession-Description69

4.1.2 pending状态与current状态70

4.1.3 ICE候选者RTCIceCandidate70

4.2 RTCPeerConnection接口72

4.2.1 构造函数RTCPeerConnection73

4.2.2 连接配置RTCConfiguration74

4.2.3 RTCPeerConnection接口的属性76

4.2.4 RTCPeerConnection接口的方法82

4.2.5 RTCPeerConnection接口的事件90

4.3 完美协商模式94

4.3.1 SDP冲突问题95

4.3.2 使用完美协商模式95

4.3.3 再谈ICE重启97

4.4 示例98

4.4.1 运行示例98

4.4.2 使用WebSocket99

4.4.3 创建RTCPeerConnection的时机100

4.5 本章小结102

●第5章 RTP媒体管理103

5.1 WebRTC编解码104

5.2 RTCPeerConnection RTP扩展110

5.2.1 RTCPeerConnection扩展方法111

5.2.2 RTCPeerConnection扩展事件113

5.3 传输媒体流114

5.3.1 无流轨道115

5.3.2 有流轨道115

5.4 RTP收发管理116

5.4.1 RTCRtpTransceiver属性117

5.4.2 RTCRtpTransceiver方法118

5.5 RTP发送器118

5.5.1 RTCRtpSender属性119

5.5.2 RTCRtpSender方法119

5.6 RTP接收器123

5.6.1 RTCRtpReceiver属性123

5.6.2 RTCRtpReceiver方法123

5.7 DTLS传输层126

5.7.1 RTCDtlsTransport属性126

5.7.2 RTCDtlsTransport方法127

5.7.3 RTCDtlsTransport事件127

5.8 ICE传输层128

5.8.1 RTCIceTransport属性128

5.8.2 RTCIceTransport方法130

5.8.3 RTCIceTransport事件132

5.9 使用DTMF134

5.9.1 RTCDTMFSender属性134

5.9.2 RTCDTMFSender方法135

5.9.3 RTCDTMFSender事件135

5.10 RTC错误处理136

5.11 通话的挂起与恢复137

5.11.1 通话挂起137

5.11.2 通话恢复138

5.12 示例139

5.12.1  动态设置视频码率140

5.12.2  使用VP9和H264141

5.12.3 使用虚拟背景144

5.13 本章小结145

●第6章 信令服务器146

6.1 使用Node.js147

6.2 使用TypeScript156

6.3 使用Express164

6.4 使用Socket.IO173

6.5 实现信令服务器179

6.6 实现信令客户端186

6.7 示例189

6.8 本章小结191

●第7章 数据通道192

7.1 SCTP192

7.2 RTCPeerConnection数据通道扩展接口196

7.3 RTCSctpTransport199

7.4 RTCDataChannel200

7.5 带内协商与带外协商206

7.6 文字聊天与文件传输206

7.7 本章小结216

●第8章 统计数据217

8.1 统计数据入口217

8.2 RTCStats及其扩展219

8.3 实时码率监测241

8.3.1 使用Chart.js242

8.3.2 获取码率数据244

8.4 本章小结247

●第9章 移动端WebRTC248

9.1 原生应用与混合应用248

9.2 原生开发环境249

9.2.1 Android原生开发环境249

9.2.2 iOS原生开发环境250

9.3 WebView251

9.4 Cordova252

9.4.1 编译环境253

9.4.2 全局配置config.xml254

9.4.3 应用程序行为preference258

9.4.4 应用程序图标icon261

9.4.5 简单的WebRTC移动应用264

9.4.6 调试Cordova应用267

9.5 Ionic Framework268

9.5.1 安装与使用269

9.5.2 开发工具269

9.6 基于Ionic的WebRTC移动应用270

9.6.1 使用模板创建应用程序271

9.6.2 首页组件272

9.6.3 连接管理服务275

9.6.4 视频与聊天组件281

9.6.5 构建Android应用程序283

9.6.6 构建iOS应用程序285

9.7 本章小结286

●第10章 从0到1打造多人视频会议系统287

10.1 整体设计287

10.2 媒体服务器289

10.2.1 OWT289

10.2.2 Kurento289

10.2.3 Janus290

10.2.4 Mediasoup291

10.2.5 媒体服务器的选择291

10.3 Mediasoup信令交互过程293

10.4 服务器端实现294

10.4.1 房间与参与者295

10.4.2 管理与监控接口296

10.5 客户端实现298

10.5.1 发布媒体流298

10.5.2 订阅媒体流301

10.5.3 共享桌面303

10.5.4 共享本地媒体303

10.5.5 文档及白板304

10.5.6 文字聊天307

10.6 传输质量监控308

10.7 从网络故障中恢复309

10.8 本章小结310

上下滑动查看

WebRTC降低了实时通信技术的门槛,使得之前只有互联网巨头才能掌握的实时通信技术得以普及,使得我们能够在家远程办公,孩子们能够“停课不停学”。相信在5G普及之后,WebRTC还会迎来更加蓬勃的发展。

可以预见,未来将有更多技术人员学习并应用WebRTC,希望本书能够帮助大家轻松踏入WebRTC的技术殿堂!


扫码关注【华章计算机】视频号

每天来听华章哥讲书

更多精彩回顾

书讯 | 5月书讯(下)| 5天小长假,一起读新书

书讯 | 5月书讯(上)| 5天小长假,一起读新书

资讯 | DB-Engines 4月数据库排名:Redis有望甩掉“千年老七”?

书单 | 8本书助你零基础转行数据分析岗

干货 | 如何构建和推送容器镜像

收藏 | 数据仓库分层存储技术揭秘

上新 | 银行一线专家经验总结,全面揭示银行运维架构

点击阅读全文购买

相关推荐

什么是AB实验?能解决什么问题?终于有人讲明白了

导读:走向身边的AB实验。作者:木羊同学来源:大数据DT(ID:hzdashuju)“AB实验”是一个从统计学中借来的工具。我和大家一样,每次只要看到“统计学”这三个字,下意识就觉得这事和我没啥关系,然后手就忍不住想要点击下一条文章。不过且慢,开篇我说AB实验是一个从统计学中借来的工具,借来给谁用呢?给我们自己用。所以下面不会介绍太多的统计学知识,主要讲讲AB实验能和我们发生怎样的故事。01 什么...

华章IT官方博客 4505

【第115期】世界一流大学计算机专业,都在用哪些书当教材?

导读:转眼间离新学期开学又不远了。清华、北大、MIT、CMU、斯坦福的学霸们在新学期里要学什么?本文就带你盘点一下那些世界名校计算机专业采用的教材。不用多说,每本都是经典的烧脑技术书,建议配合防脱发产品一起食用。(要囤书的同学,一定要看到最后!)1深入理解计算机系统(原书第3版)作者:兰德尔 E.布莱恩特 大卫 R. 奥哈拉伦????卡内基-梅隆大学、北京大学、上海交大等国内外众多知名高校选用指定教材...

华章IT官方博客 3941

腾讯大数据总体架构图,对外公开!

导读:腾讯作为国内体量最大的互联网公司之一,业务涵盖用户日常生活的方方面面,面对如此巨大业务数据量,如果不能对数据进行专业化处理并高效有序地存、管、用,如果不能使数据产生应有的价值,那么数据资产将会成为数据垃圾,成为社会和企业的负担。大数据平台作为腾讯底层的基础设施之一,每天必须处理千万级规模的离线数据任务及十万亿级别的实时计算,否则无法满足业务每天数以亿计的数据分析计算的需求。本文主要介绍腾讯大...

华章IT官方博客 3709

API安全实战

一提起“信息安全”,不管是业内专家还是所谓的“吃瓜群众”,多半都会在脑海中浮现“网络安全”“Web安全”“软件安全”“数据安全”等常见的词汇。市面上绝大多数安全类书籍也多集中在这几个领域,而从API视角阐释信息安全的资料却凤毛麟角,也很少有人从软件系统之间“接口”的角度来分析和挖掘安全漏洞。API最初的应用基本都在本地系统之上。时至今日,API已经成为各类软件系统(尤其是大型Web系统)集成的一种...

华章IT官方博客 2997

Roblox、Epic Games和Meta,详解三巨头如何引爆元宇宙

导读:在元宇宙趋势确立的过程中,标志性公司的价值确立起到了重要支撑作用。元宇宙第一股Roblox、元宇宙游戏第一股Epic Games和元宇宙社区代表公司Facebook(已改名为Meta)这三家公司对于确立元宇宙趋势起到了重要推动作用,我们称它们是元宇宙先锋队并不为过。下面对三家公司分别做详细的介绍和分析。作者:周掌柜来源:大数据DT(ID:hzdashuju)01 Roblox与元宇宙▲Rob...

华章IT官方博客 1551

干货:23 个示例,吃透ES!

为了说明Elasticsearch的不同查询类型,我们将搜索一个图书文档集合,其中有以下字段:标题、作者、摘要、发布日期和评论数量。但首先,让我们创建一个新的索引,并使用批量API索引一些文档:PUT /bookdb_index { "settings": { "number_of_shards": 1 }}POST /bookdb_index/book/_bulk { "inde...

华章IT官方博客 1190

SaaS 定位:赢得市场

‍‍一.什么是产品定位通常我们讲定位时,可能涵盖 3 种意思。坐标,当前所处的位置。方向,指想要去的地方。声明,对定位的具体描述。在定位前加上“产品”,也有其 3 种意思。该产品在不同维度中(例如价格和市场、对象和业务等)的市场位置。确定该产品的发展方向,以及如何发展。对该产品定位的文字描述和解释。二.为什么做 SaaS 定位概念弄清楚后,我们来看看为什么要做 SaaS 产品的定位。2.1 认...

华章IT官方博客 1172

数据、算法、场景:工程化的“三驾马车”

作者:陆兴海 彭华盛编著来源:大数据DT(ID:hzdashuju)人们对新事物的认知过程总是螺旋式迭代演进的,对于智能运维也是如此,智能运维是运维发展的方向,而且是一个长期的过程—从经验主义到数据驱动,再回归到业务驱动的过程。从2016年对于Gartner的概念的理解,到之后每一年不断的探索与实践,到2020年,在笔者参加的智能运维国家标准编写组会议上,行业内达成了高度的、更加面向现实的共识:...

华章IT官方博客 1585

【第114期】五大经典风控系统全面解读

什么是风控系统?系统是由多个相互联系的元素组成、能完成特定功能的整体。风控系统是系统的一种,除了具备系统的三个特征之外,还具有两个特征:一是计算机系统,包含软件、硬件、数据。二是服务于风控业务,在风控领域使用。风控系统的分类风控系统分为在线系统和离线系统。在线系统:即产生真实业务结果,如审批系统;离线系统:不产生真实业务结果,主要作用是展示和分析,如BI系统,建模平台。典...

华章IT官方博客 4147

云计算的发展现状及未来

作者:阿里云智能-全球技术服务部来源:大数据DT(ID:hzdashuju)01 云计算的发展现状1. 云计算市场的马太效应云计算已走过十几个年头,从异军突起到百花齐放再到巨头崛起,云计算市场同样出现了马太效应。当前的云计算市场有以下几个比较明显的态势。聚类分化:由于云计算是一个规模性业务场景,只有达到一定规模后,边际成本才会出现,所以近年来,云计算出现了有趣的变化。一方...

华章IT官方博客 5854

OLAP:实现高效BI分析的必备技术

“每个做大数据的同学,都应该听过OLAP或者实践过。”什么是OLAP多维分析,它究竟有啥作用,如今都有哪些流行的技术解决方案来实现?今天我们详细聊一聊。文中部分内容参考了朱凯老师的《ClickHouse原理解析》,感兴趣的朋友可以买来读一读。01—BI系统的演进在聊OLAP之前,我们先把时间拉长,聊聊BI系统。(1)传统BI系统上个世纪,IT技术迅猛发展,主要特征就是线...

华章IT官方博客 1243

10000 字的 pandas 核心操作知识大全!

工作中最近常用到pandas做数据处理和分析,特意总结了以下常用内容。内容较多,建议收藏。引入依赖#导入模块importpymysqlimportpandasaspdimportnumpyasnpimporttime#数据库fromsqlalchemyimportcreate_engine#可视化importmatplot...

华章IT官方博客 1067

企业数据治理面临的 6 大挑战!

来源:谈数据,作者:石秀峰全文共3825个字,建议阅读8分钟数据作为数字经济时代新型生产要素,是企业的重要资产,也是赋能企业数字化转型的基石。在向着数字化快速迈进的同时,当前企业数据治理都面临着各种挑战和不足。企业越大,需要和产生的数据也就越多,数据越多,意味着就越需要定制适合自己企业的有效的、正式的数据质量策略。对企业而言,不同的行业、不同的业务特点,不同的信息...

华章IT官方博客 1143

你必须要掌握的大数据计算技术,都在这了

导读:分布式的并行计算框架,从数据处理时效角度可以分为离线的批处理框架和实时的流处理框架。当前最流行的批处理框架是Spark,流处理框架是Flink。01离线批处理这里所说的批处理指的是大数据离线分布式批处理技术,专用于应对那些一次计算需要输入大量历史数据,并且对实时性要求不高的场景。目前常用的开源批处理组件有MapReduce和Spark,两者都是基于MapReduce...

华章IT官方博客 2460

终于有人把AB实验讲明白了

导读:近几年AB实验的曝光度越来越高。AB实验并不是近几年才有的,从推荐系统诞生开始,AB实验就扮演着重要的角色。本文主要介绍AB实验的基本概念,包括AB实验和在线AB实验的定义以及AB实验的常见类型。作者:刘玉凤来源:大数据DT(ID:hzdashuju)01 AB实验的定义AB实验又称为受控实验(Controlled Experiment)或者对照实验。AB实验的概念...

华章IT官方博客 1532

看了无数篇文章,终于有人把大前端讲清楚了

近几年,大前端一直是行业热点。相较于单一端工程师,大前端工程师具有更大的职业广度。本文将带领读者快速了解大前端的生态、人才需求,帮助读者从整体掌握行业需求与个人发展路线。1.大前端能做什么有人把前端+移动端称为大前端,也有人把前端+服务端称为大前端,或者把“前端+移动端+后端”称为大前端,后来又出现了全栈工程师的概念,以及所谓的泛前端概念。我们不争论具体哪个概念或者定义是...

华章IT官方博客 7877

【第113期】分布式事务处理方案大 PK!

首先先说一个大原则:分布式事务能不用就不要用,毕竟这个用起来还是有一些麻烦的。当然,不用和不会用可是两码事。1. 分布式事务基础理论学习分布式事务,有一些基础理论需要我们先来了解下。1.1 本地事务本地事务是指将多条语句作为一个整体进行操作的功能,通过数据库事务可以确保该事务范围内的所有操作都可以全部成功或者全部失败,如果事务失败,那么效果就和没有执行这些SQL一样,不会...

华章IT官方博客 1054

逆流而上:计算机专业图书破圈营销,这个直播间做到了

你在直播间买过东西吗?是生活日用?还是零食饮料?或者是实体店优惠券?7月27日晚7点到10点,一场顺时而生却又处处“反其道而行之”的直播间打破了“直播带货”和“专业知识”的壁垒,将计算机专业图书带入直播当中,并在直播现场与众多知名计算机领域KOL连麦互动,交流分享经验。这是一场怎样的直播,这场直播背后又有哪些故事呢?| 一次叫好叫座的分享,一场事先张扬的直播“Java学习...

华章IT官方博客 1398

Jenkins 也宣布弃用 Java 8

出品 | OSC开源社区(ID:oschina2013)继Java 之父 James Gosling 先前称,开发者应尽快弃用 JDK 8,可以选择 JDK 17 LTS,因为后者在各个方面都带来了巨大的改进。开源 Devops 工具 Jenkins 宣布:从 6 月 28 日发布的 Jenkins 2.357 和即将发布的 9 月 LTS 版本开始,Jenkins 最低...

华章IT官方博客 1190

对话知道创宇丨如何守住内容安全生命线?

信息安全主要包括以下五方面的内容,即需保证信息的保密性、真实性、完整性、未授权拷贝和所寄生系统的安全性。信息安全本身包括的范围很大,其中包括如何防范商业企业机密泄露、防范青少年对不良信息的浏览、个人信息的泄露等。网络环境下的信息安全体系是保证信息安全的关键,包括计算机安全操作系统、各种安全协议、安全机制(数字签名、消息认证、数据加密等),直至安全系统,如UniNAC、DL...

华章IT官方博客 1089

《前端跨界开发指南》重磅来袭!

谨以此书献给相信“努力有用”的你by 大史不说话《 前端跨界开发指南:JavaScript工具库原理解析与实战》先做个自我介绍我是大史不说话,是一名前端工程师,一个相信“努力有用”的、不太聪明的、行动力还可以的程序员。曾经因为一篇《10000小时后,我从外包走进了字节跳动》而出圈,被朋友们戏称为“万时大佬”????。我2017年走进前端领域,2018年开始技术写作。为什么写这本...

华章IT官方博客 1328

李三红:Java版本升级需要纳入到可持续性维度

嘉宾 |李三红 撰稿 |云昭 审校 |千山如果从1992年Oka(Java的前身)算起,Java已经走过了30年的道路。作为公认的革新性的编程语言,Java怀揣着James Gosling,Patrick Naughton,Chris Warth,Ed Frank和Mike Sheridan的“可移植”、“跨平台”的初衷,在Bill Joy,Arth...

华章IT官方博客 374

换个角度看契约测试

本文作者:付彪,Thoughtworks总监级质量分析咨询师,常年专注于软件测试与软件质量保障领域。精通经典测试理论、自动化测试设计与实施,以及通用型软件系统前后端的各种测试活动,在敏捷测试和微服务系统测试方面有非常丰富的实践经验。长期关注工程效能与新兴技术对传统软件测试的革新,坚持通过博客和开源软件助力行业和社区发展。如今,契约测试在测试策略层面已经确确实实地被很多团队...

华章IT官方博客 355

Apache ShenYu毕业成为Apache顶级项目!

Apache ShenYu官宣毕业2022 年 7 月 28 日,全球最大的开源软件基金会 Apache 软件基金会发布博客,宣布 ShenYu 正式毕业,成为 Apache 顶级项目(TLP)。以上内容引用:https://blogs.apache.org/foundation/entry/the-apache-software-foundation-announces...

华章IT官方博客 550

超全!腾讯数据科学家深度长文讲透AB实验

导读:在数字化时代的大背景下,在数据驱动的产品增长理论和实践中,AB实验起的作用越来越重要。越来越多的岗位需要产品、运营、数据等职位候选人掌握AB实验相关的知识。作者:刘玉凤来源:华章计算机(hzbook_jsj)本文首先介绍AB实验的基本概念和原理,然后介绍AB实验的3个基本要素—实验参与单元、实验控制参数、实验指标,以及对于这3个基本要素的要求,之后介绍AB实验的2个...

华章IT官方博客 1707

8月书讯(下) | 人工智能、机器人、网络安全不可多得的好书上市!

豆瓣评分9.4、GitHub标星1.57万的“蒲公英书”《神经网络与深度学习》的实践篇8月重磅上市!机器学习、情感分析、对偶学习、智能无线机器人、网络安全等领域不可多得的好书,本本值得入手!参与文末赠书活动,好书就要抢先读。— 新书速览—1、《神经网络与深度学习:案例与实践》2、《机器学习Python版》3、《机器学习:从基础理论到典型算法(原书第2版)》4、《情感分析...

华章IT官方博客 1291

图解 3 种主流企业架构模式(建议收藏!)

导读:数字化转型的重要举措之一就是构建数字平台,实现对客户、员工、供应商及生态合作伙伴等的连接,为业务的发展提供坚实的基础。在UVCA时代,对于企业架构的诉求是既要保障业务的稳定运行,也要能够快速适应需求的变化。所以在规划数字平台时要积极引入业界成功的架构模式,达成解耦、服务化等目标。作者:新华三技术有限公司来源:大数据DT(ID:hzdashuju)业界主流的架构模式包...

华章IT官方博客 1375

市面上的大前端岗位到底是做什么的?

市面上的大前端岗位到底是做什么的?大前端这个词出现了不是一天两天了,但是这个岗位到底是做什么的,到目前也是仁者见仁智者见智,今天小编就带大家解开这个岗位的神秘面纱。其实对于所谓的【大前端】技术,市面上常见的有两种说法:一种是关于跨端技术,如Flutter、RN、小程序的集合称之为大前端。另一种是关于开发人员所具备的素质,把工程师同时具备前端+移动端的研发能力称之为大前端。...

华章IT官方博客 1242

华为数字化转型规划“三阶十二步法”

作者:华为公司企业架构与变革管理部来源:华夏基石e洞察(ID:chnstonewx)数字化转型是企业的必答题,企业必须自己主导自身的数字化转型,支撑主营业务成功。那么,怎样才能更好地帮助主营业务成功,又应该从哪里开始转型工作呢?这就涉及企业的数字化转型规划。我们说数字化转型是一项复杂的系统工程,而规划就是这项系统工程的顶层设计。一个好的规划应该对准业务战略,既能描绘出企业...

华章IT官方博客 2764

7行代码让B站崩溃3小时,竟因“一个诡计多端的0”

鱼羊 丰色 发自 凹非寺来源:量子位 | 公众号 QbitAI一个小小字符“0”,竟引得B站全面崩溃。不知你是否还记得那一夜,B站“大楼停电”、“服务器爆炸”、“程序员删库跑路”的彻夜狂欢。(手动狗头)时隔一年,背后“真凶”现在终于被阿B披露出来——没想到吧,就是这么简单几行代码,直接干趴B站两三个小时,搞得B站程序员彻夜无眠头发狂掉。你可能会问,这不就是个普普通通用来求...

华章IT官方博客 564
上一篇: 5月书讯(下)| 5天小长假,一起读新书
下一篇: 如何使用 Vault 安全地存储配置的 secret
hzbooks
hzbooks 企业官方账号 企业官方账号
博客等级 码龄19年 2400粉丝 969原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值