圖片來自:https://bz.zzzmh.cn/ 本文作者: cgt 背景: 如何解耦大前端與服務端的適配層依賴 談到 BFF,相信大家都不會太陌生,過去在雲音樂,前後端的協作架構一直維持比較傳統的前後端協作模式。各個端所需要的接口完全依賴服務端提供,服務端同學除了需要完成微服務的業務邏輯外,還需要針對前端頁面調度各個領域的微服務,根據前端的數據訴求進行一定程度的組裝和適配。 在年初
作者:BoBoooooo 前言 談及 Babel,必然離不開 AST。有關 AST 這個知識點其實是很重要的,但由於涉及到代碼編譯階段,大多情況都是由各個框架內置相關處理,所以作為開發(使用)者本身,往往會忽視這個過程。希望通過這篇文章,帶各位同學走進 AST,藉助 AST 發揮更多的想象力。 AST 概述 想必大家總是聽到 AST 這個概念,那麼到底什麼是 AST? AST 全稱是是 Abs
本文作者:QHC 前言: 長久以來,傳統前端的工作大多時候在與DOM打交道,近年來,瀏覽器廠商也在不斷努力提高DOM渲染性能,以提高用户體驗。但是更多複雜場景的出現,例如近幾年隨着在線直播、社交娛樂、各種小遊戲的火爆,前端性能的關注度持續提高。特別是遊戲場景,而我們團隊也面臨着一大波h5遊戲化場景,那麼這個系列文章,將帶讀者朋友們一起了解,雲音樂社交直播業務的遊戲化場景解決方案的整體思路與落地案例
本文作者:邵東風 在貴州機房遷移項目中,面臨着大量的組件升級,雲音樂服務端通過自動化升級平台建設,節省約500人日,實現升級效率約83%的提升。此文介紹其在大規模自動化升級上的實踐。 一、背景 1. 痛點 在服務端推進升級是一件比較困難的事情,面臨的困難點包含但不限於: 穩定性風險:組件自身兼容性的問題或不正確升級帶來的兼容性問題,可能帶來線上穩定性風險。 升級投入成本:組件升級至少需要研發
本文作者:邵東風 貴州機房遷移是雲音樂歷史上規模最大、人員最多、難度最高的技術項目,此文對總體方案進行回顧。 一、背景 2023年確定要將雲音樂整體服務搬遷至貴州機房,項目需要在各種限制條件下,保障2000+應用、100w+QPS的服務穩定遷移,是雲音樂歷史上規模最大、人員最多、難度最高的技術項目。在此過程中,解決了大量歷史技術債務,同時化解了大量新增系統性風險。以下為總體方案回顧。 二、項目難點
本文作者:huangleilei02 業務背景 投放廣告買量,不管是拉新還是促活場景,都是互聯網用户增長的重要手段。RTA(Real Time API),是廣告投放領域非常重要的一種投放方式,用於滿足廣告主實時個性化的投放需求。顧名思義,RTA指的是API接口實時調用,將直投的廣告主的流量選擇權交給廣告主,媒體傳入設備號調用RTA問詢接口,進行用户投放的篩選,讓廣告主在廣告曝光前進行投放策略的判斷
本文作者:[帝青] 在實際業務需求背景下,TangoFlow 尋求構建組裝式架構,整合雲音樂服務端技術棧,提供基礎邏輯編排功能,以某種方式(網關API、統一SDK等)暴露編排結果;從長遠來看,作為研發全鏈路低代碼化中的一環,構建符合雲音樂現狀及長遠願景的服務端低代碼平台;今天我們一起來聊下TangoFlow 的產生背景以及平台化建設實踐; 背景及訴求 1、BFF場景下靈活編排訴求 目前雲音樂的前後
本文作者:張琪 Metrics是服務監控的重要部分,網易雲音樂中間件團隊基於VictoriaMetrics構建了服務端Metrics監控體系,旨在提供易用、高效的監控解決方案,本文介紹了建設中遇到的問題、方案與成果。 一、背景介紹 Trace、Metrics、Log是APM系統(Application Performance Management,應用性能管理)的三大支柱。過去雲音樂使用的Metr
本文作者:伍佰(周斯航) 雲音樂曲庫緩存經過多年的實踐和改善,形成了一套自有的緩存使用體系,並取得了很好的效果。本文將以實戰為主,介紹曲庫緩存設計的動機和思路,幫助讀者瞭解背後的原因,並在其他場景中借鑑相似的思路。 背景知識 緩存基礎介紹 緩存是系統設計中,用於提升底層系統訪問能力的一種技術手段,它同樣作用於雲音樂的各個系統中,一種常用的緩存使用調用鏈路如下: 轉化為時序圖,如下圖所示: 整個
本文作者:胡亦萍 業界有非常多優秀的API文檔管理方案,大多都是基於IDE插件或maven插件的方式做集成。本文主要介紹雲音樂自研的基於代碼關係、中心化、自動化的API文檔管理方案。 背景 隨着微服務的發展,在前後端基於API協作的研發模式下,業界涌現了一批優秀的API文檔管理工具,如網易自研的NEI、swagger、yapi、smart-docs等等,這些工具通過圍繞API文檔構建了一系列的能力
本文作者:斷空(王鬆鬆) 在典型的微服務架構中,RPC框架扮演着連接各個服務、組件的關鍵角色。作為雲音樂的基礎組件之一,本文將分享我們在RPC穩定性建設過程中的經驗和實踐。 背景 在典型的微服務架構的架構中,RPC框架扮演着連接各個服務、組件的關鍵角色。作為雲音樂的最基礎組件之一,支撐了用户、會員、廣告、數據平台等各個業務的平穩運行。然而隨着當前雲原生理念的快速發展落地,在當前整體降本增效的大背景
本文作者:吳榮軍 雲音樂設計研發了 FinOps 一站式平台,滿足對成本洞察、優化和運營的需求,協同業務獲得最大的投入產出比。 背景 當前互聯網增長紅利消失,要實現 "正循環中,做大用户規模",就需要關注企業經營毛利和利潤,除去內容成本,技術側 IT 成本是非常大的一塊,過去一年(2022 年),雲音樂開始了技術側降本增效,其中雲原生、容器化主要做的事情包含: Horizon 一站式平台(雲音
本文作者:碧海(蔣星韜) 雲音樂服務監控系統(代號:Pylon APM)為業務提供服務監控,鏈路追蹤,治理分析,問題診斷等能力,本文介紹了平台建設中的一些實踐經驗。 一、背景介紹 雲音樂服務端原有的服務端應用監控體系,存在很多痛點和問題,導致出現線上問題時,定位的效率不太理想。服務端應用監控體系主要存在以下幾個問題: Trace鏈路完整性問題:老的trace是通過組件sd
本文作者:E、T、F 最近碎片時間有在看黑客與畫家,看的過程中,有一個問題突然冒了出來,一個程序員到底應該具有哪些思維,哪些精神才算領悟了真諦? 除了程序員,生活在我們這個時代的每一個人又是否有借鑑之處呢?這裏我們先撇去技術層面的知識不談,更宏觀地看下這個問題。 陸奇曾在演講中提到,動手去創造性地解決問題,代表了創造者一系列的核心行為和思想狀態。 首先,一定是要動手去做。在當今這個大數據消費時代,
本文作者:有內鬼 背景介紹 1.2021年開始,社交直播活動中台因為需要支持的產品越來越多,優化過程中發現對於很多讀場景來説中心緩存的讀取已經成為了性能瓶頸,所以大量業務場景 開始採取二級緩存方案,將原來的中心 memcache 作為二級緩存,採用 guava、local memcache 作為一級緩存,來減少網絡 IO、提升鏈路性能。 2.活動中台在發展過程中,因為需要支持多個產品,產品業
本文作者:kiloson 近些年隨着微服務、kubernetes 等技術的發展,越來越多的廠商將單體架構的項目進行微服務化。但是隨着原有項目的不斷拆分,微服務的數量越來越多,部署的頻率也越來越高,傳統手工運維的劣勢越發明顯,效率低、部署質量沒有保證。在雲原生時代,是否有一種更加高效、穩定的部署方式,可以幫助我們改進部署和管理流程呢? 隨着我們對運維方法的調研,我們發現 GitOps 能夠很好的解決
本文作者:木心 背景 目前很多互聯網公司都告別了過去流量和業務迅猛增長的時期,進入了一個相對穩定發展的新階段,業務增長可預期,成本控制成為了一個重要的議題。 在典型的互聯網公司的成本組成中,IT 成本佔比並不低,技術成本與人力成本的比例差不多在 1:2 ~ 1:2.5 左右, 降低 IT 成本顯然能帶來立竿見影的效果。 10 年來雲計算、雲原生、容器、Kubernetes、DevOps 等技術的高
本文作者:入雲 前言 説起 IM,大家應該都或多或少了解過一些,一般被熟知是在一些聊天場景裏應用的比較多;而一般情況下我們常接觸的業務中大多是做一些接口的查詢提交之類的操作,用正常的 Ajax 請求就足以滿足需求,比較難接觸到 IM 這種方案。 但如果涉及到一些需要頻繁更新數據的業務場景,使用常規接口查詢難免會給服務端造成比較大的性能開銷,並且數據更新的延遲也會很大;嘗試使用 IM 則可以讓我們在
本文作者:錢鴻昌(閃火) 一、我們為什麼使用svg 和高清png來做個對比 繼續對比 同樣高清的質地,矢量圖不畏懼放大,體積小。這裏要説明一點就是,因為 SVG 中保存的是點、線、面的信息,與分辨率和圖形大小無關,只是跟圖像的複雜程度有關,所以圖像文件所佔的存儲空間通常會比 png 小。 優化 SEO 和無障礙的利器,因為 SVG