充电专属视频
UP主与粉丝之间的互动方式日益多样化,B站以其独特的社区文化和创新的互动模式,为UP主和粉丝搭建了一座新的桥梁:充电专属视频。
充电专属视频是一种付费视频,是B站为UP主提供的一项增值服务,允许UP主为那些通过“充电”方式支持他们的用户,制作并分享一些特别的、不免费公开的视频内容。专属视频不仅仅是单向的内容输出,更是UP主与粉丝之间互动的桥梁。通过这种方式,UP主可以更直接地了解粉丝的想法和需求,同时也让粉丝感受到自己对UP主的支持是被珍视和回应的。
B站的充电专属视频内容形式丰富,不同稿件类型(普通UGC视频、互动视频、联合投稿、带货视频等)都陆续支持充电功能。
充电专属视频从23年开始明确的业务探索方向,短短一年多无论是充电专属视频稿件数量还是充电人数以及收益,均有较快的增长,到目前已形成一定规模的业务体量。
短剧
2023年以来,微短剧进入大众视野,以快节奏、爽点多,博取大量流量,同时微短剧面临着导向低俗、制作粗糙等一系列的问题。为了保障平台微短剧规范运营,平台制定了微短剧的运营管理规范。其中对于微短剧投稿的账号及内容进行资质审核,要求必须具备相关资质才可合规运营。
短剧播放端、创作端的形式如下:
对于技术侧而言,如何构建高效稳定的平台体系去支撑包括充电与短剧在内各个业务的快速迭代和发展需求,存在极大的挑战。
现状与问题
现状
作为B站历史悠久的核心业务之一,稿件业务在内容创作者数量激增和业务形态多样化的推动下,正经历着前所未有的增长。然而,这种快速的发展也带来了系统负载和复杂性的显著增加。同时,随着组织结构的调整,新的管理模式和工作流程虽然应运而生,却也不可避免地增加了系统维护的难度和响应时间。加之早期业务界定的模糊,系统模块间的紧密耦合加剧了技术债务的累积,导致系统性能逐渐劣化。
面对技术和业务发展的双重挑战,B站的稿件系统迫切需要通过一系列措施来突破当前的瓶颈。这包括对系统架构进行彻底的升级,以适应不断变化的业务需求;更新技术栈,以提高系统的性能和可靠性;以及优化组织流程,以提高系统的可维护性和响应速度。这些改进将为B站稿件系统的未来增长奠定坚实的基础,并支持其持续发展。
问题分析
经历15年的发展及迭代,稿件业务作为B站核心功能之一,目前上下游共计承接三十余个主要业务方。随着业务增长与业务方数量增加时,在资源有限(计算资源、存储资源、人力资源等)的情况下,如何确保系统设计能够满足多方的需求面临巨大挑战。
为了服务于不同的业务方,平台需要在服务标准化和定制化之间找到平衡。标准化可以提高效率和可维护性,而定制化则可以满足特定业务的独特需求。
稿件的平台化建设是解决当前挑战的关键,由当前技术债重的业务系统快速向平台化演进,进行稿件业务体系平台化的全面建设。旨在通过平台化架构的设计,提升系统的灵活性、可扩展性和维护效率。
充电与短剧新业务接入稿件系统,以平台化建设为方向,从以下几个方面进行展开:系统架构模块化、业务领域明确划分、数据驱动精细化运营。
平台架构
稿件业务核心涉及到端到端的应用场景, 整个平台体系化的建设需要充分兼容通用场景,支撑好业务构建和关键能力建设。对整体业务进行分析与拆解,得到了如下这张业务架构图
随着业务的快速发展与迭代,在一年中稿件系统增加充电专属视频与短剧两个新的业务模块。利用平台化能力,以支持不同业务方的需求。在提供标准化服务以保证标准化与可维护性的同时,满足业务方独特定制化需求。
充电专属视频/短剧
平台能力
平台能力是平台化建设的重中之重,负责支撑稿件业务平台的所有核心能力,如UGC投稿、PUGC投稿等所有服务应用及能力输出。从业务领域考虑,将投稿中常用的功能进一步抽象核心能力,以稿件与视频维度将核心功能如合集、多P、试看等模块化为平台能力。为满足各类稿件(如普通视频稿件、短剧、互动视频、联合投稿等)支持充电,将充电模块也抽象为通用能力。抽象出以下平台化能力:
稿件维度平台能力
合集:合集是一系列稿件的聚合,支持稿件加入合集、合集管理、合集送审。
批量投稿:允许UP主一次性上传多个视频稿件,而不需要逐一提交。适合大量内容需要发布时的场景,如短剧、剧集等内容。
草稿:草稿管理能力,支持UP主创作过程中可以随时保存视频为草稿,保存投稿时各类内容,这样即使在创作过程中遇到中断(如设备故障、意外关闭等),也不会丢失已编辑的内容。
定时发布:允许UP主设置视频的发布时间,视频会在指定时间自动发布,这样UP主可以预先安排发布计划。
充电:允许将稿件设置为充电付费模式、用户需要付费后可观看完整视频,支持将不同类型稿件设置为充电专属视频,如普通视频稿件、短剧、互动视频、联合投稿。
...
视频维度平台能力
多P:包含多个视频的稿件,多P稿件生产流程比一般稿件复杂,需要等待所有P的视频内容完成审核与转码后才能开放。
转码调权:对不同稿件进行优先级分类,将高优稿件进行转码提权提速、将低质稿件进行转码降权减速,一种转码调度能力,有效地提升转码资源利用率。
试看:支持UP主将部分类别稿件设置试看的能力,允许设置自定义试看时长,转码调度中生成试看流。
转码时间预估:预估视频转码时间,并结合审核时间,综合预估整体稿件开放需要的时间。
水印处理:在视频上传或转码过程中自动添加水印,确保所有发布的内容都带有版权标识或品牌信息。
...
进一步抽象核心能力,全面构建平台化投稿能力,支撑复杂场景以及多用户不同形态的投稿需求。因此从0到1建设充电专属视频与短剧投稿功能时,运用平台化能力接入的思路,进行代码改造后以提升人效,实现项目的顺利落地并取得了可观的业务收益。
数据模型
一个稿件容器载体中主要包含视频、图文描述与互动数据三类信息。该数据载体支撑稿件系统的运转,包括稿件的状态管理、流量控制以及多媒体数据的处理等。
在这个生态系统中,主要有三个关键角色与稿件系统紧密相连:内容创作者(UP主)、审核人员和普通用户。每个角色都通过不同的系统功能与稿件进行互动,共同塑造和丰富着稿件的内容和形态。内容创作者负责产出和上传作品,审核人员确保内容的合规性,而用户的互动则为稿件增添了活力和参与度。这三者的互动确保了稿件系统的动态发展和内容的持续创新。
稿件属性是稿件容器的一部分,以属性位(bit位)方式区分不同类型的稿件以及稿件能力,稿件允许拥有多种属性。
属性位(bit) | 说明 | 备注 |
x | 是否360全景视频 | 生成360全景视频流,支持全景播放 |
... | ||
y | 是否是充电 | 充电属性,用户付费后允许观看全片 |
... | ||
z | 是否是短剧 | 短剧稿件,投稿短剧需对机构资质、短剧内容等资料做合规审核 |
... |
充电专属视频、短剧实体模型该如何设计,直接关系到稿件平台读写服务的基础能力、交互模型。结合领域模型进行了全面的分析,构建了以人、稿件、视频多维度下按领域划分的数据模型,稿件与视频信息属于稿件域中,稿件中充电相关设置信息(如付费模式、充电价格等)属于充电域,短剧机构与短剧备案管理属于短剧域。
一个稿件可以容纳多个视频,这种结构被称为“多P”稿件,其中“P”代表“Part”,即片段。为了适应未来可能出现的单个视频片段支持付费观看的需求,我们设计了充电机制,使其能够精确到单个视频层面,而非整个稿件。这样的设计允许观众为特定视频内容付费,提供了更灵活的商业模式,同时也为内容创作者带来了更多的收益机会。
稿件、充电、短剧数据模型图示如下:
交互模型
稿件系统采用领域驱动设计的方法进行模块化,确保了B端和C端稿件服务的高效协同。当创作者在B端完成投稿并进行必要的编辑处理后,内容生产平台会通过消息机制通知C端稿件服务,以便及时更新稿件数据并存储到数据库中。C端稿件服务作为中间层,为稿件消费应用服务和网关提供支持,这些服务包括搜索、推荐、个人空间、动态发布、收藏夹等,它们都是用户互动的核心部分。
在对数据模型进行了清晰的业务领域划分之后,我们进一步优化了新投稿场景的交互设计。在整体投稿流程中,特别为支持充电功能的专属视频投稿场景设计了一套流程,确保其与领域模型保持一致。创作者在创作端完成投稿后,系统会自动将包含充电信息的稿件(如付费模式、定价等)同步至充电B端服务,即充电创作者服务平台。这些充电相关信息将被存储在数据库中,并缓存起来,以便快速访问。
对于播放端的充电专属视频,播放权限的判断和用户充电鉴权由充电服务负责处理。这样的设计不仅提高了系统的响应速度,也为用户提供了更加流畅和安全的观看体验。通过这种方式,我们确保了整个投稿和播放流程的一致性和高效性。
短剧投稿的交互流程与充电专属视频的投稿体验相似,但在正式投稿短剧之前,创作者的账号必须经过一系列的资质审核。这包括机构的资质认证以及短剧内容的备案审核,以确保所有内容都符合平台的规范和法律法规。这些合规性审核是由短剧业务方负责发起并管理的,确保了内容的合法性和平台的健康发展。通过这样的审核机制,我们不仅保障了观众的观看体验,也为创作者提供了一个安全、有序的创作环境。
可观测性建设
一个良好的可观测性体系是提升系统透明度、加速故障诊断和增强整体系统稳定性的关键。在稿件管理系统中,我们已经实现了对投稿流程关键环节的实时监控,这包括:【投稿】、【转码】、【审核】以及【开放】。我们通过统计5分钟内的投稿成功量和转码成功量等关键指标,并与昨日同期及上周同期数据进行对比分析,以此来侦测任何业务上的异常情况。这种对比不仅帮助我们及时发现问题,还能够掌握线上服务的健康状况,确保服务的连续性和用户的满意度。
为了进一步提升监控系统的效能,我们采取了分类型监控的策略,特别关注那些关键的稿件类型。这包括对花火商单稿件、带货稿件等重点稿件进行细致的监控,确保能够迅速察觉到这些稿件的任何异常动态。在充电与短剧业务的整合过程中,我们也将这两种新型稿件纳入重点监控范围,通过增加数据埋点和看板,实现了对整个投稿流程的全面监控。这样的做法不仅增强了我们对投稿健康度的监控能力,也为及时发现和解决潜在问题提供了有力支持。通过这种全方位的监控策略,我们能够确保重点稿件的稳定运行,保障业务的顺畅进行。
合理的告警机制确保在第一时间感知异常,告警规则分为两个主要部分:首先是核心业务指标的实时监控,如投稿成功量、转码成功量等,一旦这些指标出现异常下降至零,系统将立即触发告警;其次是对核心业务指标进行同期对比分析,如果发现与昨日或上周同期相比差异超出预设的阈值,同样会触发告警。通过近一年的实践和优化,我们目前的告警规则已经证明了其在多次系统异常情况下的有效性,它们不仅提高了我们对问题的响应速度,也加强了系统的整体稳定性和可靠性。
稳定性建设
在确保整个投稿链路健康运行的基础上,我们特别关注对一些核心场景的深入治理和强化保障。在充电专属视频和短剧数据交互的过程中,维护数据的一致性至关重要。为了确保充电信息的同步既迅速又准确,我们采用了RPC接口进行数据同步,并通过重试机制和兜底策略来保障数据的完整性和一致性。
服务的稳定性更多是服务层面SLA(service-level agreement)的表现。在对服务进行治理的过程中,我们发现请求超时是影响用户体验和服务稳定性的主要异常情况。对此,我们根据接口的优先级,采取了具体问题具体分析的方法。针对数据库慢查询问题,我们通过优化SQL语句或增加缓存来提高效率;而对于上下游链路的超时问题,则通过与相关团队沟通和优化代码逻辑来解决。通过这一系列的治理措施,我们成功实现了核心场景和P0级接口的高可用性,从而显著提升了服务的整体稳定性。
展望
在早期稿件系统承受着沉重的历史技术债务和高系统耦合性的双重挑战。为了应对这些问题,我们实施了一系列的平台化改造措施,旨在提升系统的灵活性、可扩展性和可观测性,从而使系统能够更好地适应不断变化的业务需求。
在将充电、短剧等新业务接入稿件系统的过程中,我们在业务和技术两个层面都取得了显著的进展和阶段性成果。这些成功的实践不仅增强了系统的综合实力,也为其他业务方,如课堂、带货等,提供了宝贵的接入经验。展望未来,我们期望能够采用更高效、更优化的方案,进一步推动更多业务方接入我们的稿件平台,共同实现业务的多元化和平台的生态化发展。
-End-