vivo 消息中间件测试环境项目多版本实践

3 月 28 日
阅读 6 分钟
21
在2022年8月份 vivo 互联网中间件团队完成了互联网在线业务的MQ引擎升级,从RabbitMQ 到 RocketMQ 的平滑升级替换。

Java 8 内存管理原理解析及内存故障排查实践

3 月 21 日
阅读 14 分钟
54
介绍Java8虚拟机的内存区域划分、内存垃圾回收工作原理解析、虚拟机内存分配配置,介绍各垃圾收集器优缺点及场景应用、实践内存故障场景排查诊断,方便读者面临内存故障时有一个明确的思路和方向。

vivo统一接入网关VUA转发性能优化实践

3 月 14 日
阅读 5 分钟
46
本文将探讨如何通过使用Intel QuickAssist Technology(QAT)来优化VUA的HTTPS转发性能。我们将介绍如何使用QAT通过硬件加速来提高HTTPS转发的性能,并探讨QAT在不同应用场景中的表现。最后,我们将讨论如何根据实际情况进行优化,以获得最佳转发性能。

Sharding-JDBC源码解析与vivo的定制开发

3 月 7 日
阅读 62 分钟
96
Sharding-JDBC是在JDBC层提供服务的数据库中间件,在分库分表场景具有广泛应用。本文对Sharding-JDBC的解析、路由、改写、执行、归并五大核心引擎进行了源码解析,并结合业务实践经验,总结了使用Sharding-JDBC的一些痛点问题并分享了对应的定制开发与改造方案。

vivo 在离线混部探索与实践

2 月 29 日
阅读 8 分钟
260
伴随 vivo 互联网业务的高速发展,数据中心的规模不断扩大,成本问题日益突出。在离线混部技术可以在保证服务质量的同时,极大的提升数据中心资源利用率,降低成本。混部技术涉及任务调度、资源隔离、运维观测等一系列技术难题,本文将介绍 vivo 在混部技术方面的实践和探索,为读者提供借鉴和参考

vivo 短视频体验与成本优化实践

2 月 22 日
阅读 9 分钟
563
在线点播场景,播放体验提升与成本优化是同等重要的两件事,并在部分场景体验优化与成本优化存在一定的互斥关系。vivo短视频深入分析播放链路的每个环节、并结合大数据统计,探索出了多种的体验优化策略;同时针对成本优化,上线了转码、PCDN、共享闲时带宽等多种策略用于降低带宽成本。基于技术优化和业务发展的要求,v...

vivo 海量基础数据计算架构应用实践

1 月 25 日
阅读 7 分钟
223
本文介绍了vivo在万亿级数据增长驱动下,基础数据架构建设的演进过程,在实时和离线计算过程中,如何基于业务发展,数据质量,计算成本等方面的挑战,构建稳定,可靠,低成本、高性能的双活计算架构。

vivo 智能活动中台 - 悟空系统建设之路

1 月 18 日
阅读 6 分钟
227
本文根据冯伟、姜野老师在“2023 vivo开发者大会"现场演讲内容整理而成。【vivo互联网技术】公众号回复【2023 VDC】获取互联网技术分会场议题相关资料。

vivo 海量微服务架构最新实践

1 月 11 日
阅读 10 分钟
246
vivo微服务平台为全球5亿+用户背后的全网十万级机器、万级微服务提供服务,在高效实践过程中,vivo中间件平台团队输出了一套业务适用的微服务架构最佳实践--架构能力矩阵、高效的开源中间件组件全生命周期管理策略,走出了一条从开源到开源+自研的技术演进路径,通过微服务引擎升级和统一平台建设较好解决了面临的问题与...

Spring 七种事务传播性介绍

1 月 4 日
阅读 6 分钟
285
作者:vivo 互联网服务器团队 - Zhou Shaobin本文主要介绍了Spring事务传播性的相关知识。Spring中定义了7种事务传播性:PROPAGATION_REQUIRED PROPAGATION_SUPPORTSPROPAGATION_MANDATORYPROPAGATION_REQUIRES_NEWPROPAGATION_NOT_SUPPORTEDPROPAGATION_NEVERPROPAGATION_NESTED在Spring环境中,含有事务的方法嵌套调用...

vivo 数据库备份恢复系统演化

1 月 2 日
阅读 11 分钟
170
vivo互联网领域拥有的数据库组件分别为 MySQL、MongoDB、TiDB 等,其中MySQL集群占比绝大部分,  MongoDB 集群占比小部分, TiDB 集群占比更小。为了介绍方便,本文把改造前的数据库备份恢复系统称为旧备份恢复系统,改造后的数据库备份恢复系统称为新备份恢复系统。我们将从旧的架构系统开始,发现其不足,慢慢的优化形...

前端 JS 安全对抗原理与实践

2023-12-22
阅读 8 分钟
428
如今这个时代,数据已经变得越来越重要,网页和APP是主流的数据载体,如果获取数据的接口没有设置任何的保护措施的话,数据就会被轻易地窃取或篡改。

vivo 容器平台资源运营实践

2023-12-21
阅读 6 分钟
277
作者:vivo 互联网服务器团队 - Chen Han容器平台针对业务资源申请值偏大的运营问题,通过静态超卖和动态超卖两种技术方案,使业务资源申请值趋于合理化,提高平台资源装箱率和资源利用率。一、背景在Kubernetes中,容器申请资源有request和limit概念来描述资源请求的最小值和最大值。requests值在容器调度时会结合节点...

Hudi 在 vivo 湖仓一体的落地实践

2023-12-14
阅读 6 分钟
269
在增效降本的大背景下,vivo大数据基础团队引入Hudi组件为公司业务部门湖仓加速的场景进行赋能。主要应用在流批同源、实时链路优化及宽表拼接等业务场景。

RocksDB 在 vivo 消息推送系统中的实践

2023-12-08
阅读 15 分钟
274
本文主要介绍了 RocksDB 的基础原理,并阐述了 RocksDB 在vivo消息推送系统中的一些实践,通过分享一些对 RocksDB 原生能力的探索,希望可以给使用RocksDB的读者带来启发。

线上ES集群参数配置引起的业务异常案例分析

2023-11-23
阅读 8 分钟
346
作者:vivo 互联网数据库团队- Liu Huang本文介绍了一次排查Elasticsearch node_concurrent_recoveries 引发的性能问题的过程。一、故障描述1.1 故障现象1. 业务反馈业务部分读请求抛出请求超时的错误。2. 故障定位信息获取故障开始时间19:30左右开始故障抛出异常日志错误日志抛出timeout错误。故障之前的几个小时业务是...

BI 数据可视化平台建设(2)—筛选器组件升级实践

2023-11-16
阅读 6 分钟
531
本文主要介绍了BI数据可视化平台建设中比较核心的筛选器组件, 涉及组件分类、组件库开发等升级实践经验,通过分享一些对交互和业务耦合度高的组件开发迭代的思考,希望可以给正在做组件重构解耦的读者带来启发。

BI 数据可视化平台建设(1)—交叉表组件演变实战

2023-11-09
阅读 8 分钟
225
作者:vivo 互联网大数据团队 - Zhu Jianchen本文是vivo互联网大数据团队《BI数据可视化平台建设》系列文章第1篇 - 交叉表组件。交叉表在数据分析里应用广泛,通过本文,你将了解到:交叉表的基本概念,以及BI可视化平台常见术语。我们的表格类组件的演化过程,以及如何通过技术调研和优化实现大数据量下渲染性能,一步...

vivo 网络端口安全建设技术实践

2023-11-03
阅读 10 分钟
1.4k
随着互联网业务的快速发展,网络攻击的频率和威胁性也在不断增加,端口是应用通信中的门户,它是数据进出应用的必经之路,因此端口安全也逐渐成为了企业内网的重要防线之一,然而网络端口因其数量庞大、端口开放和关闭的影响评估难度大,业务影响程度高、以及异常识别技术复杂度高等特点给网络端口安全治理带来了一定挑...

Dubbo 路由及负载均衡性能优化

2023-10-26
阅读 15 分钟
131
本文主要介绍在vivo内部针对Dubbo路由模块及负载均衡的一些优化手段,主要是异步化+缓存,可减少在RPC调用过程中路由及负载均衡的CPU消耗,极大提升调用效率。

深入理解 Netty FastThreadLocal

2023-10-23
阅读 14 分钟
208
本文以线上诡异问题为切入点,通过对比JDK ThreadLocal和Netty FastThreadLocal实现逻辑以及优缺点,并深入解读源码,由浅入深理解Netty FastThreadLocal。

记一次Redis Cluster Pipeline导致的死锁问题

2023-10-12
阅读 10 分钟
305
本文介绍了一次排查Dubbo线程池耗尽问题的过程。通过查看Dubbo线程状态、分析Jedis连接池获取连接的源码、排查死锁条件等方面,最终确认是因为使用了cluster pipeline模式且没有设置超时时间导致死锁问题。

MySQL到TiDB:Hive Metastore横向扩展之路

2023-09-28
阅读 10 分钟
431
本文介绍了vivo在大数据元数据服务横向扩展道路上的探索历程,由实际面临的问题出发,对当前主流的横向扩展方案进行了调研及对比测试,通过多方面对比数据择优选择TiDB方案。其次分享了整个扩展方案流程、实施遇到的问题及解决方案,对于在大数据元数据性能上面临同样困境的开发者本篇文章具有非常高的参考借鉴价值。

开源框架中的责任链模式实践

2023-09-21
阅读 21 分钟
482
在GoF 的《设计模式》一书中对责任链模定义的:将请求的发送和接收解耦,让多个接收对象都有机会处理这个请求。将这些接收对象串成一条链,并沿着这条链传递这个请求,直到链上的某个接收对象能够处理它为止或者所有接收对象处理一遍。

vivo数据中心网络链路质量监测的探索实践

2023-09-14
阅读 4 分钟
214
网络质量监测中心是一个用于数据中心网络延迟测量和分析的大型系统。通过部署在服务器上的Agent发起5次ICMP Ping以获取端到端之间的网络延迟和丢包率并推送到存储与分析模块进行聚合和分析与存储。控制器负责分发PingList并通过数据中心内部消息通道将PingList下发至每台服务器上的Agent,而PingList就是每个Agent需要发...

K8s 多集群实践思考和探索

2023-09-07
阅读 9 分钟
520
本文主要讲述了一些对于K8s多集群管理的思考,包括为什么需要多集群、多集群的优势以及现有的一些基于Kubernetes衍生出的多集群管理架构实践。

JVM 内存大对象监控和优化实践

2023-08-28
阅读 8 分钟
500
服务器内存问题是影响应用程序性能和稳定性的重要因素之一,需要及时排查和优化。本文介绍了某核心服务内存问题排查与解决过程。首先在JVM与大对象优化上进行了有效的实践,其次在故障转移与大对象监控上提出了可靠的落地方案。最后,总结了内存优化需要考虑的其他问题。

联邦学习:对“数据隐私保护”和“数据孤岛”困境的破局

2023-08-24
阅读 7 分钟
608
随着计算力、算法和数据量的巨大发展,人工智能迎来第3次发展高潮,开始了各行业的落地探索。然而,在“大数据”兴起的同时,更多行业应用领域中是“小数据”或者质量很差的数据。“数据孤岛”现象广泛存在,例如在信息安全领域的应用中,虽然多家企业推出了基于人工智能技术的内容安全审核、入侵检测等安全服务,但出于用户隐...

vivo 容器集群监控系统优化之道

2023-08-17
阅读 9 分钟
648
本文介绍了vivo容器团队基于 Prometheus等云原生监控生态来构建的容器集群监控体系,在业务接入容器监控的过程中遇到的挑战、困难,并分享了相应的应对策略和优化方案。

vivo 场景下的 H5无障碍适配实践

2023-08-10
阅读 12 分钟
449
随着信息无障碍的建设越来越受重视,开发人员在无障碍适配中也遇到了越来越多的挑战。本文是笔者在vivo开发H5项目做无障碍适配的实践总结。本文主要介绍了在前端项目中常用的无障碍手势和无障碍属性,并且结合具体的开发案例为开发者真实展示了适配要点,提供组件适配思路。希望本文能为前端开发者带来更多的参考和帮助。