云音乐预估系统建设与实践

2022-06-15
阅读 9 分钟
2k
    预估系统的核心任务是完成模型计算,可以认为模型就是一个函数(举例:f(x1, x2)= ax1 + bx2 +c)。其中参数a、b、c是通过模型训练得出的权重值,自变量x1与x2就是特征,模型计算就是使用自变量x1与x2求解的过程。    因此预估框架需要做的是:构造函数输入(特征),计算...
封面图

直播活动系统:基于消息总线的组合能力

2022-06-08
阅读 8 分钟
2.3k
所谓组装,就离不开老生常谈的复用,我们可以对大部分认为比较共性的场景做好系统级别的封装,封装成一个个复用度较高的服务,然后通过接口和扩展点的方式进行一部分的能力开放,但是有一种场景是解决不了的,就是当一个功能级别的代码执行结束后,希望触发到另外一个功能,同时希望这个功能是可以通过配置去解决的,并...
封面图

systrace 统计方法耗时

2022-06-07
阅读 6 分钟
3.1k
Android是单线程模型,用户的按键事件、屏幕触摸及 UI 绘制都在 UI 线程中处理。单线程意味着串行执行,如果某一个操作耗时了就会导致后续的操作都得等待,这个时候用户的第一感知就是卡了。所以在排查卡顿的时候有一个最简单的办法就是找出耗时长的方法。
封面图

云音乐低代码:基于 CodeSandbox 的沙箱性能优化

2022-05-27
阅读 11 分钟
3.6k
距离发布如何私有化部署 CodeSandbox 沙箱的文章《搭建一个属于自己的在线 IDE》 已经过了一年多的时间,最开始是为了在区块复用平台上能够实时构建前端代码并预览效果。不过在去年云音乐内部启动的基于源码的低代码平台项目中,同样有在线实时构建前端应用的需求,最初是采用从零开发沙箱的方式,不过自研沙箱存在以下...
封面图

服务启动过程性能波动的分析与解决方案

2022-05-26
阅读 6 分钟
2.2k
本文仅分享自己在工作中遇到的问题时的解决方案和思路,以及排查的过程。重点还是分享排查的思路,知识点其实已经挺老了。如有疑问或描述不妥,欢迎赐教。
封面图

NUMA架构下的预估系统性能优化

2022-05-19
阅读 3 分钟
2.4k
在推荐业务中,经典的分层逻辑为三层:召回、精排、重排,其中精排层无疑又是最复杂、最具挑战性的一个环节,预估系统主要是为精排业务提供在线推理的服务。
封面图

React 组件库 CSS 样式方案分析

2022-05-13
阅读 7 分钟
4.3k
随着业务的发展,一些代码逻辑可能同时在多个项目中使用,为了避免每次使用和更新都要复制粘贴代码,构造一个组件库就十分有必要了。构建组件库有很多需要考虑的方面,本文主要讨论在 React 生态下,如何选择一种适合组件库的 CSS 样式方案。
封面图

Disruptor在云音乐特征服务中的应用

2022-05-11
阅读 12 分钟
1.8k
我们的线上特征数据服务DataService,为了解决使用线程池模型导致机器cpu利用率不高,长尾请求延迟不线性(p99、p999出现J型曲线)的问题。在利用Disruptor替换线程池之后取得不错的性能结果。本文主要是简单的介绍一下对Disruptor的个人理解以及落地的结果。
封面图

Chrome插件:云音乐听歌识曲

2022-05-05
阅读 5 分钟
4.8k
当你用网页在视频网站刷视频的时候,有没有碰到过一个 BGM 激起你内心的波澜,而你却不知道它的名字。此时只能打开手机进行听歌识曲,而通过一个浏览器的插件却更容易解决这个问题。不需要繁琐的掏出手机,也不会因为需要外放而干扰他人,更不会因为环境噪音而识别困难。
封面图

App 出海 —— Google 结算系统面面观

2022-04-28
阅读 6 分钟
4.2k
近年来中国移动应用出海势头良好。对于涉及到交易业务的出海应用来说,Google 应用内支付是必不可少的支付渠道。不同于国内相对完善的移动支付体系,即使官方文档中对如何接入 Google 应用内支付做了基本阐述,但是在接入的过程中,还是会遇到很多问题。本文将介绍交易的重点流程和核心技术要点,以及需要注意的问题。
封面图

Chrome DevTools Inspector 扩展实践

2022-04-22
阅读 10 分钟
3.1k
云音乐 app 内有很多使用 react native 开发的应用,例如云贝中心、云音乐商城、会员中心等。为了更好地提升开发效率,改善调试体验,团队决定开发 react native 调试工具,通过为 react native debugger 增加一些扩展功能,实现业务信息的展示和调试能力,例如:跨端通信信息展示、网络信息展示等。
封面图

从跨模态和上升通道谈富媒体内容的冷启动

2022-04-20
阅读 3 分钟
2.2k
富媒体内容(Rich Media Content,简称富内容),是指具有视频、声音、文字等多种载体的综合性信息形式,主要包括短视频、直播等等。相比于传统的文章、图片、音乐等单一载体的内容,在“注意力经济”的时代,富内容是能够最大限度传递信息、吸引消费者注意力的内容形式。并且因其丰富的呈现形式(图文声并茂,可搭配各种...
封面图

冷启动算法系列-云音乐歌曲冷启动初探

2022-04-13
阅读 5 分钟
3.3k
在推荐系统中,存在着成千上万的用户,也存在着成千上万的物品,推荐系统的本质任务是为用户推荐其感兴趣的物品。在这里面,用户和物品都是不断更新的,如何给新用户推荐其感兴趣的物品,如何把新物品推荐给对其感兴趣的用户,就是推荐系统的冷启动问题。 所以,推荐系统的冷启动问题,主要包括用户冷启动、物品冷启动两...

打造轻量级 WebIDE,看这一篇文章就够啦

2022-04-11
阅读 13 分钟
8.1k
目前团队正在着手搭建低代码平台,该平台将支持 LowCode/ProCode 双模式在线开发,而 ProCode 场景便需要一个功能相对完备的运行在浏览器的 WebIDE。同时考虑到未来可能的一些区块代码平台的需求,将 WebIDE 模块单独抽离,以便应对后期更多的个性化需求。
封面图

数据分析在生活中的应用- 女人的衣柜里为什么总是少一件衣服

2022-04-06
阅读 6 分钟
2.8k
每天早上醒来,眼睛一睁开就面临一个难题:今天穿什么?这时候脑海里往往会冒出很多选项,却都不能令我满意,纠结中经常想着想着就又睡着了。20分钟后发现睡过了惊醒,抓起文化衫和短裤套上就走,匆忙中身上还滴上了牙膏。
封面图

云音乐隐性关系链的探索与实践

2022-03-30
阅读 8 分钟
3.3k
图片来源:[链接]作者:左冯翊一、项目背景云音乐依托音乐主站业务,衍生了不少创新业务。不管是音乐、直播还是播客等业务,都面临着如下两个冷启动的问题:如何为新用户(或不活跃用户)分发内容如何将新内容(或冷门内容)分发给用户每个业务都沉淀了一些解决冷启动的方法,比较常见的一种方法是引入用户在其他场景的...
封面图

手把手带你走进Babel的编译世界

2022-03-24
阅读 13 分钟
4.5k
谈及 Babel,必然离不开 AST。有关 AST 这个知识点其实是很重要的,但由于涉及到代码编译阶段,大多情况都是由各个框架内置相关处理,所以作为开发(使用)者本身,往往会忽视这个过程。希望通过这篇文章,带各位同学走进 AST,借助 AST 发挥更多的想象力。
封面图

自研磁盘型特征存储引擎RDB在云音乐的实践

2022-03-16
阅读 6 分钟
1.6k
云音乐推荐和搜索业务有大量的算法特征数据,需要以key-value的形式存储,提供在线的读写服务。这些特征主要从大数据平台上spark或者flink的任务产出,比如歌曲的特征、用户的特征等。它们的特点是数据量大,每天定时全量更新或者实时增量更新,而且对查询的性能要求高。这些算法特征数据,有的存储在redis/tair内存型存...
封面图

网易云音乐低代码体系建设思考与实践

2022-03-14
阅读 4 分钟
4k
本文主要谈一谈网易云音乐大前端团队在面向模式化研发场景的低代码体系的建设思考和实践。本文将会从当前我们所面临的业务研发问题出发,谈一谈我们对于构建低代码研发体系的思考,进而介绍我们正在构建的同时支持 LowCode 和 ProCode 在线研发的在线快速研发能力。
封面图

实时增量学习在云音乐直播推荐系统中的实践

2022-03-09
阅读 10 分钟
4.1k
直播推荐业务是嵌入在云音乐 APP 中各个地方,其中就包括最大的几个场景歌曲播放页的直播模块、混合在评论中的评论页直播以及云音乐首页的首页六卡直播。 如下图所示,图 1.1 即为播放页上的直播模块;图 1.2 是云音乐首页中首页六卡直播模块;图 1.3 是歌曲评论页中的直播模块。
封面图

云音乐曙光埋点:还原数据理想国

2022-03-08
阅读 8 分钟
2.6k
进入移动互联网的下半场,以用户行为数据分析驱动的算法个性化推荐和人工精细化运营已成为各个产品必不可缺的配置,数据成为各产品的核心竞争力之一,各厂均开始致力于建设自己的数据仓库和数据中台。其中埋点作为互联网产品的主要数据来源起着至关重要的作用,从下图可见是整个数据链路的起源,决定了整个数据体系的质...
封面图

如何让云音乐iOS包体积减少87MB

2022-03-07
阅读 9 分钟
8.5k
  云音乐iOS客户端是自2013年开始的老项目,经历近十年的业务滚动发展,从单体音乐APP发展至今,多种业务加持,俨然已经成为类似于平台级的巨型APP,并且包体积也随着业务的发展越来越臃肿,影响用户的实际体验,甚至是品牌的口碑,在笔者开始优化之前云音乐在AppStore显示的包体积已经达到了420MB之多,在这...
封面图

云音乐预案平台实践

2022-03-04
阅读 5 分钟
2.3k
随着服务化的大面积推开,服务稳定性越来越被重视起来,云音乐从2018年开始进行稳定性能力建设,到最后建设成通用能力,云音乐大概经历了以下几个主要阶段,从2018年无稳定性保障能力的裸奔阶段,到稳定性能力的搭建,再到提升易用性、效率的平台一体化建设,到包括近期做的预案管理平台化建设,每一次的演进,都能为云...
封面图

React Native原理之跨端通信机制

2022-02-28
阅读 8 分钟
4.8k
在移动端开发场景中,能使用一份代码就能同时在安卓和 iOS 系统上运行 APP 的方案,熟称为跨端方案。而 Webview ,React Native 都是云音乐大前端团队用的比较多的跨端方案,这些方案虽然能提高开发效率,但它们不能像原生语言一样直接调用系统的能力,于是在做 HTML5(以下简称 H5) 或者 React Native(以下简称 RN) ...
封面图

React hooks 状态管理方案解析

2022-02-18
阅读 8 分钟
4.2k
React v16.8 之后,Function Component 成为主流,React 状态管理的方案也发生巨大的转变。Redux 一直作为主流的 React 状态管理方案,虽然提供了一套规范的状态管理流程,但却有着让人饱受诟病的问题:概念太多、上手成本高、重复的样板代码、需要结合中间件使用等。
封面图

动手打造一款 canvas 排版引擎

2022-02-08
阅读 12 分钟
4.4k
图片来源:[链接]本文作者:飞扬背景在线示例Demo作为前端开发尤其是偏 c 端的前端开发者(如微信小程序),相信大家都碰到过分享活动图片、分享海报图类似的功能一般这种需求的解决方案大体上可以分为以下几种:依赖服务端,比如写一个 node 服务,用 puppeteer 访问提前写好的网页来截图。直接使用 CanvasRenderingCon...
封面图

结构化文本处理利器 unified 生态介绍

2022-01-24
阅读 4 分钟
3.9k
unified 是一套文本处理相关的生态体系,结合其生态上的相关插件,能够处理 Markdown、HTML、自然语言等。而 unified 库本身又作为一个统一的执行接口,担任执行器的角色,调用其生态上相关的插件完成处理任务。
封面图

从浏览器渲染原理谈动画性能优化

2022-01-17
阅读 13 分钟
4.2k
在越来越多的业务中,前端页面除了展示数据和提供用户操作的 UI,也需要带给用户更丰富的交互体验。动画作为承载,已经成为日常前端开发,尤其是 C 端开发的必选项。设备硬件性能的提升、浏览器内核的升级也给在页面端实现流畅动画提供了可能。目前,常规设备的刷新频率通常是 60HZ,也就是说,如果要让用户感受不到明显...
封面图

rrweb 带你还原问题现场

2022-01-06
阅读 9 分钟
4.4k
云音乐内部有许多内容管理系统 (Content Management System,CMS),用来支撑业务的运营配置等工作,运营同学在使用过程中遇到问题时,期望开发人员可以及时给予反馈并解决问题;痛点是开发人员没有问题现场,很难去快速定位到问题,通常的场景是:
封面图

浏览器渲染魔法之合成层

2021-12-29
阅读 6 分钟
6.7k
浏览器与前端开发的关系不言而喻,而了解浏览器的渲染原理,可以帮助我们提升页面性能,解决一些渲染上的问题。最近在开发一个移动端 H5 页面的时候,就遇到一个奇怪的问题,有一个榜单页面在最新版本 IOS 手机上切换 tab 的时候,左上角的倒计时出现闪烁,我们来看一些效果。
封面图