Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >服务亿级图片压缩那些事

服务亿级图片压缩那些事

原创
作者头像
腾讯架构师
修改于 2017-11-14 03:09:40
修改于 2017-11-14 03:09:40
2.2K0
举报

作者:王小飞

导语:图片压缩原本是2.4w台物理设备支撑,当前弹性平台仅用6k台容器为每天百亿次的压缩提供了可持续的计算力,除了图片压缩业务,平台还服务了视频转码业务,spark计算以及AI围棋和王者荣耀计算业务。复用现网低负载资源总核数达70W核,全天平均CPU使用率高达56%。

背景

QQ相册、微信传图和朋友圈每天近百亿张图片活跃于用户的手机、平板和电脑屏幕中,为大家带来生活趣味的同时,也给图片压缩带来了百亿级/天的计算量,当前每一个压缩计算都跑在架平TCS-弹性计算平台上,下面我们就来聊聊平台是如何服务海量压缩计算的。

可行性

图片压缩迁移弹性计算平台之前,采用压缩程序混部存储机器的策略,虽然节省计算资源的设备成本,但混部的运营面临如下几个问题,并增加了人力的运营成本:

1、资源利用率低

采用静态资源设备混部的方式,图片压缩业务在规划资源时,以业务高峰规划资源,设备量需几万台;而QQ和微信等社交类互联网业务,存在明显的波峰波谷效应,便意味着:非高峰期压缩设备的计算力被浪费了。

2、运维成本增加

随着QQ和微信业务快速发展,压缩资源的需求量不断增加,运维的同事每季度或者每月都需上架设备,投入人力运营;尤其业务突发时,资源量不能满足业务增长量,触发业务架构的柔性策略,对用户的体验有损。

3、业务相互干扰

图片业务与存储程序混合部署,未做资源物理隔离和程序侧性能隔离,存在cpu、内存等资源的竞争,业务高峰触发竞争加剧,导致互伤。

而TCS-弹性计算平台独有的资源物理隔离,服务量自动伸缩,服务权重动态可调等策略,契合的解决了业务的痛点。

平台那些事

  • 资源隔离 压缩存储程序混部时,业务高峰期,随着请求量的增长,cpu时间片的竞争加剧,尤其对绑核的程序影响较大,现网运营中遇到过存储程序获取cpu时间片断崖式下降的场景。针对资源潜伏的恶性竞争,弹性平台在复用docker在cpu、内存隔离的基础上,并沿用了cgroup中quota、share、period的配置限制策略,但此类技术仅对资源管控,并不能灵活应对程序对cpu时间片的毛刺,对此,弹性平台创新的提出动态捆绑cpu策略,监控cpu核负载的前提下,调度容器跑在负载低的cpu上,cpu调度后效果。
  • 名字化服务 图片压缩业务原本使用master管理compress资源列表,具体到每个压缩池、每个地域都需要一个独立master模块,造成master设备资源浪费,而且管理接口不统一,新介入的开发者上手耗时久;尤其对于业务突发场景,部署资源后,需要人工增添到master,运营不友好。面对业务的如上痛点,弹性计算平台提供了名字化服务,业务侧接入后,获取一个可访问的名字,平台将资源挂到名字下输出计算力,并在名字服务的基础上,打包提供了负载均衡,异常点删除策略保障业务的正常运行,解放运维人力;而且业务侧无需理解资源调度,开发者上手快;资源的伸缩通过名字透明化,运维同事只需关注业务状况。
  • 自动调度 压缩计算的静态资源规划需按业务高峰评估,低峰cpu 空闲浪费而且资源应对业务突发的能力弱,架构上柔性但有损用户体验。针对业务需求量与资源使用量的矛盾,平台从资源调度的角度完美解决:资源按需供应,盘活资源的整体使用,通过对容器上报的cpu、内存、磁盘io及占用量和网络io等数据的分析,构建业务的负载监控,并在引入InfluxDB后,监控告警间隔缩短到秒级;平台自动调度分为动态扩缩、异常调度和感知调度。

1、动态调度

平台最基础的调度方式,根据监控的容器负载信息做调度,以平台配合业务侧做的资源模型为依据,配置了负载高低阈值。当负载高于阈值,平台秒级扩容资源;负载低于阈值下限,平台分钟级缩容下架,保障业务稳定。

2、异常调度

平台基于cpu时钟指令分配策略,微创新的提出用CPI(Cycles Per Instruction)指标监控业务的运行状态,通过对业务cpi建模,将模型跑出的cpi数据作为基准值,当业务的cpi方差值偏离模型值时,平台执行剔除或者替换操作。

3、感知调度

平台在运营压缩业务中发现:在压缩程序自身的过载保护或者其他策略作用下,会出现cpu/cpi无明显变化,但压缩的延时、失败率升高的现象,针对资源指标正常,业务异常的矛盾,业务侧配合平台做了感知调度,即业务侧感知到时延或者失败率升高的压缩设备并反馈弹性平台,平台对此类资源做降权或者替换操作。

下面的两个图是压缩容器量和cpu负载图,全天cpu使用率几乎稳定在一条直线。

  • 负载均衡 弹性平台可调度资源多种多样,母机CPU的型号也并不统一,对此平台使用benchmark程序,在各种CPU类型的机器上跑测试,为每个CPU类型计算一个性能系数(系数的范围是0.x~ 1.x),计算资源权重时,基于cpu的性能系数做主调,业务现网的延时、失败率等负载做微调,下图是动态调整后,cpu负载分布图。

总结与展望

图片压缩原本是2.4w台物理设备支撑,当前弹性平台仅用6k台容器为每天百亿次的压缩提供了可持续的计算力,除了图片压缩业务,平台还服务了视频转码业务,spark计算以及AI围棋和王者荣耀计算业务。复用现网低负载资源总核数达70W核,全天平均CPU使用率高达56%。 年底弹性平台预计可调度的计算力可到100w核,深挖平台资源的计算力、使用率,为业务提供源源不断的低成本计算,在公司发力AI,倡导成本优化的大背影下,实现业务、平台、部门的多方共赢。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
TCS 弹性计算平台:像工匠一样耕耘云计算
TCS弹性计算平台:像工匠一样耕耘云计算,让计算力随时待命,服务在线业务,支持弹性可调度,提升资源使用效率,降低业务部署成本,推动研发运维效率,助力业务高速发展。
腾讯架构师
2017/08/31
4.1K0
TCS 弹性计算平台:像工匠一样耕耘云计算
人类全基因组分析提速10倍的背后:TCS 服务垂直行业的探索
本文介绍了基因测序技术的原理、应用和腾讯云在基因计算领域的解决方案,包括弹性计算、异构加速、算法优化等方面,旨在推动基因测序技术在医疗、农业、遗传等领域的广泛应用。
腾讯技术工程官方号
2018/01/02
1.3K0
人类全基因组分析提速10倍的背后:TCS 服务垂直行业的探索
Caelus—全场景在离线混部解决方案
引言:集群管理的一个重要目标是提高资源利用率,随着集群规模的扩大,基础设施成本上涨,资源利用率问题逐步突显,为降低成本,混部技术应运而生。本篇文章结合腾讯技术团队在混部方面的落地和实战经验,来介绍各类场景下在线离线混部的相关概念、面临的问题及混部技术方案,抛砖引玉,供大家交流。 混部背景 各大厂商都有自己的集群管理平台,典型的是以k8s(kubernetes)为代表的容器云平台,集群管理的一个重要目标便是提高资源利用率,随着集群规模的扩大,机器成本增加,资源利用率问题开始变得越来越重要。造成集群利用率低的
腾讯大数据
2020/12/14
9.3K4
集群 CPU 利用率均值达 45% ,揭秘小红书规模化混部技术实践
根据 Gartner 预测数据显示:2024 年全球 IT 支出预计将达到 5.1 万亿美元,比 2023 年增长 8 %。然而,该机构的另一项调查数据显示:全球数据中心服务器平均 CPU 利用率普遍低于 20%,存在巨大的资源浪费。据测算,以数百万核 CPU 规模的数据中心为例,每提升 1 个百分点的整体资源利用率,每年将节省数千万元的成本。由此可见,提高资源利用率对于降低企业运营成本具有显著的效果。
架构狂人
2023/11/29
8330
集群 CPU 利用率均值达 45% ,揭秘小红书规模化混部技术实践
京东技术系统的一些备战日常优化(1)
“技术的创新始终是要服务于商业模式的创新,最有价值的技术创新是工程化的应用技术,如何真正做出通用化的技术,将其规模化非常关键。”
京东技术
2018/12/21
7830
京东技术系统的一些备战日常优化(1)
一文看懂业界在离线混部技术
刚刚过去的 2021 年,在全球经济增长放缓、疫情时起时伏、中美关系摩擦不断、国家平台监管趋严等宏观趋势叠加影响下,很多互联网厂商都遭遇了明显的市值下滑以及亏损加大,裁员消息时有耳闻,所以在 2022 年,降本增效无疑将进一步成为业界大势所趋。
深度学习与Python
2022/03/22
1.4K0
一文看懂业界在离线混部技术
企业云上架构设计全攻略:安全、成本与架构的深度解析
上云已成为企业数字化转型的必由之路,而腾讯云凭借其丰富的产品矩阵和成熟的技术实践,为企业提供了全面的上云解决方案。本文将基于腾讯云产品体系,从云上安全、云上成本和云上架构设计三个关键维度,深入剖析企业上云的架构设计方法论,帮助企业构建安全可靠、经济高效且技术先进的云上业务体系。
徐关山
2025/07/04
1540
基于空闲资源的弹性计算实践
本文介绍了腾讯弹性计算平台在提升资源利用率、减少能源浪费方面的实践和成果。通过多种虚拟化技术、资源调度算法、智能优化策略等,实现了弹性资源的精细化管理和调度,降低了资源浪费,提高了资源利用率,并降低了碳排放和能源成本。
腾讯架构师
2017/09/01
3.8K0
基于空闲资源的弹性计算实践
AI 异常计算点的监控调度
本文介绍了如何监控调度异常点,通过弹性计算平台实现异常点检测、业务建模、调度、冲突检测、跨机调度等功能。
腾讯架构师
2017/09/20
2K0
AI 异常计算点的监控调度
SDCC 2017 深圳站应用架构及大数据双峰会
前言 6月10-11日,2017年SDCC峰会在深圳举行。为期两天的会议邀请业内顶尖的架构师和数据技术专家分享干货实料。来自腾讯TEG架构平台部的Jerome以及数据平台部的Boyce作为演讲嘉宾,分别发表主题为“基于空闲资源的弹性计算实践”以及“StreamSQL实时计算平台的挑战及解决方案”的演讲。本文为演讲者现场PPT及演讲稿整理编辑。 大会介绍 SDCC 2017·深圳站,拥有互联网应用架构实战峰会、大数据技术实战峰会两大峰会,秉承干货实料的内容原则,邀请业内顶尖的架构师和数据技术专家,共话高可用
腾讯技术工程官方号
2018/01/30
8150
SDCC 2017 深圳站应用架构及大数据双峰会
用户案例 | 腾讯小视频&转码平台云原生容器化之路
李汇波,腾讯业务运维高级工程师,目前就职于TEG 云架构平台部 技术运营与质量中心,现负责微信、QQ社交类业务的视频转码运维。 摘要 随着短视频兴起和快速发展,对于视频转码处理的需求也越来越多。低码率高清晰,4K、超清、高清、标清适配不同终端和不同网络环境来提升用户体验,以及水印、logo、裁剪、截图等多样化的用户需求。 对于资源的多样化需求和弹性扩缩容也需要快速响应,而随着公司自研上云项目的推进,设备的稳定性和多样性可提供更多选择,来满足像朋友圈、视频号、广告、公众号等转码业务快速、稳定、抗突发的资源需
腾讯云原生
2021/11/17
1.4K0
如何治理资源浪费?百度云原生成本优化最佳实践
作者 | 百度云原生团队 根据 Gartner 的调查数据,到 2022 年底,全球企业在云计算基础设施方面的支出约为 3330 亿美元。麦肯锡在调查报告中指出,2020 年,由于缺乏成本优化手段,80% 企业的云资源成本大幅超出预算;同时,45% 的企业由于缺乏优化措施,在直接迁移上云的过程中会超买 55% 的资源,并且在上云的头 18 个月会多花 70% 的费用。 随着全球经济持续下行,企业应该如何做好精细化运营和降本增效,如何优化云资源的分配、使用和管理成为了当下必须要考虑的问题。 本文将会具体介绍百
深度学习与Python
2023/03/29
1.7K0
如何治理资源浪费?百度云原生成本优化最佳实践
看腾讯运维应对“18岁照片全民怀旧”事件的方案,你一定不后悔!
本文主要讲述了腾讯SNG在社交网络事业群中,在运维领域的探索和实践。通过不断演进的运维技术,提高了运维效率和成本效益,保障了业务的高可用性。同时,运维团队贯彻“养兵千日用兵一时”的理念,通过标准化、流程化、自动化的运维体系建设,确保在突发事件中能够快速响应和处置。通过不断实践和优化,最终实现了在相册、直播、点播、微信、手Q、应用宝、游戏、新闻、微云、企鹅影业、腾讯云等多个业务领域的运维支撑。
织云平台团队
2018/01/04
1.4K0
看腾讯运维应对“18岁照片全民怀旧”事件的方案,你一定不后悔!
Katalyst开源方案实践:字节如何实现全天高水平集群资源利用效率
导读:互联网应用通常以天为单位,尤其在线业务的资源使用情况往往会随着访问数量的波动而变化,具备明显的潮汐特性;为充分实现集群资源的削峰填谷,字节从 2019 年就开始进行在离线混合部署的探索,经过多年持续迭代,最终提炼出了一套 Kubernetes Native 的资源管控系统 Katalyst 并实现正式开源。在 QCon 全球软件开发大会(广州站)2023 中,抖音高级研发工程师邵伟围绕 Katalyst 系统,介绍了字节跳动多年来在大规模业务云原生化场景中资源管理能力的经验和总结,帮助听众梳理资源管理落地实践过程中的核心要点,实现降本增效。本文由此整理。
深度学习与Python
2023/09/08
7310
Katalyst开源方案实践:字节如何实现全天高水平集群资源利用效率
从容器调度到降本增效
前一篇中介绍了大规模容器平台的资源预算、精算、核算,本篇围绕容器调度开展。容器调度旨在有效地协调和管理系统中的有限资源,在保障服务 SLO 的前提下,满足任务和服务的需求。对于从事过容器调度相关工作的朋友来说,对超卖一定不陌生。容器平台一般都会对运行在其中的服务做一定程度的超卖,来达成平台本身的盈利目标。
李鹤
2023/12/12
3630
从容器调度到降本增效
最佳实践 | 作业帮云原生成本优化实践
董晓聪,作业帮基础架构负责人,主要负责架构研发、运维、DBA、安全等工作。基于开源的力量,和云厂商一起完成作业帮技术体系的云原生重塑。 项目背景 作业帮教育科技(北京)有限公司成立于2015年,一直致力于用科技手段助力教育普惠,运用人工智能、大数据等前沿技术,为学生提供更高效的学习解决方案。随着业务需求的发展,作业帮的 IT 系统面临巨大挑战,现有基础平台架构已经无法满足快速增长的业务需求。业务对快速迭代、急速弹性、调用链追踪、统一的监控日志平台、提升计算资源利用率等需求迫在眉睫。 2019年下半年,作业
腾讯云原生
2021/11/24
9890
腾讯云Serverless容器混部实战(如何提升集群利用率至65%)
在云计算成本日益成为企业核心关注点的今天,闲置的集群资源如同静默燃烧的经费。传统Kubernetes集群的平均利用率常年在15%-30%低位徘徊,巨大的资源空洞与业务快速增长的需求形成尖锐矛盾。本文将深入剖析腾讯云团队如何借助Serverless容器技术与深度混部策略,在保障核心业务SLA的前提下,将生产集群利用率稳定提升至65%以上,并分享实战中沉淀的关键技术与踩坑经验。
大熊计算机
2025/07/08
990
Crane如何做到利用率提升3倍稳定性还不受损?
陈凯悦,腾讯云高级开发工程师,Crane和SuperEdge项目核心开发。专注于大规模离在线混部和资源调度,目前负责Crane离在线混部和调度相关工作。 颜卫,腾讯高级开发工程师,Crane项目核心开发。专注于Kubernetes大规模集群管理和成本优化,丰富的超大规模集群管理和混部经验。目前负责Crane离在线混部和资源优化相关工作。 作为云平台用户,我们都希望购买的服务器物尽其用,能够达到最大利用率。然而要达到理论上的节点负载目标是很难的,计算节点总是存在一些装箱碎片和低负载导致的闲置资源。下图展示了
腾讯云原生
2022/12/08
1.1K0
Crane如何做到利用率提升3倍稳定性还不受损?
小红书的降本增效之路
作者 | 孙晓飞 整理 | 马可薇 策划 | 孙瑞瑞、丁晓昀 本文由 InfoQ 整理自小红书基础技术部后端开发 孙晓飞 在 QCon 全球软件开发大会(北京站)2022 上的演讲《小红书的降本增效之路》。 大家好,我是孙晓飞,目前就职于小红书容器架构组,负责团队内调度系统整体工作,拥有 6 年云原生相关开发设计经验,是 Kubernetes 和 Volcano member。本文将分享过去一年中,容器架构团队为小红书和整体容器服务在降本增效方面所采用的方案措施。 小红书与云原生 小红书早
深度学习与Python
2023/04/21
9080
小红书的降本增效之路
谷歌每年节省上亿美金,资源利用率高达60%,用的技术有多厉害!
田奇,腾讯高级工程师,专注大规模在离线混部,分布式资源管理调度,熟悉Kubernetes,关注云原生大数据、AI。 导语 什么是在离线混部 随着微服务、大数据、人工智能的不断发展,为了满足业务需求,企业的 IT 环境通常运行两大类服务,一类是在线服务,一类是离线作业。 在线服务:往往长时间运行,服务流量存在周期特性,整体资源使用率不高,但是对服务 SLA 却有着极高的要求,如网页搜索服务、电商交易服务等。 离线作业:往往是资源密集型服务,但其可以容忍较高的时延、失败任务重启,如大数据分析服务、机器学习训
腾讯云原生
2021/08/27
2.3K0
推荐阅读
相关推荐
TCS 弹性计算平台:像工匠一样耕耘云计算
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档