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

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

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

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

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

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

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

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

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

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

深入理解 Netty FastThreadLocal

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

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

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

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

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

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

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

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

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

K8s 多集群实践思考和探索

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

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

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

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

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

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

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

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

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

高效构建 vivo 企业级网络流量分析系统

2023-08-04
阅读 5 分钟
726
随着网络规模的快速发展,网络状况的良好与否已经直接关系到了企业的日常收益,故障中的每一秒都会导致大量的用户流失与经济亏损。因此,如何快速发现网络问题与定位异常流量已经成为大型企业内必须优先解决的问题,诸多网络流量分析技术也同时应运而生。

AB实验遇到用户不均匀怎么办?—— vivo游戏中心业务实践经验分享

2023-08-03
阅读 5 分钟
1k
AB实验是业务不断迭代、更新时最高效的验证方法之一;但在进行AB实验效果评估时需要特别关注“用户不均匀”的问题,稍不注意,产出的研究结论就可能谬以千里,给业务决策带来极大风险。因此我们游戏业务针对该问题,借助霍金实验团队已经实现的分层抽样(协变量平衡算法)能力,探究出一套基于用户分层逻辑的“事前用户分层...

Android 架构模式如何选择

2023-07-31
阅读 25 分钟
828
Android架构模式飞速演进,目前已经有MVC、MVP、MVVM、MVI。到底哪一个才是自己业务场景最需要的,不深入理解的话是无法进行选择的。这篇文章就针对这些架构模式逐一解读。重点会介绍Compose为什么要结合MVI进行使用。希望知其然,然后找到适合自己业务的架构模式

HBase Compaction 原理与线上调优实践

2023-07-27
阅读 29 分钟
740
本文对 HBase Compaction 的原理、流程以及限流的策略进行了详细的介绍,列举了几个线上进行调优的案例,最后对 Compaction 的相关参数进行了总结。

Jedis 参数异常引发服务雪崩案例分析

2023-07-20
阅读 9 分钟
857
Redis 作为互联网业务首选的远程缓存工具而被大面积使用,作为访问客户端的 Jedis 同样被大面积使用。本文主要分析 Redis3.x 版本集群模式发生主从切换场景下 Jedis 的参数设置不合理引发服务雪崩的过程。

如何用Three.js + Blender打造一个web 3D展览馆

2023-07-14
阅读 12 分钟
2.3k
运营活动新玩法层出不穷,web 3D炙手可热,本文将一步步带大家了解如何利用Three.js和Blender来打造一个沉浸式web 3D展览馆。

深入解析Redis的LRU与LFU算法实现

2023-07-06
阅读 5 分钟
917
相对于磁盘的容量,内存的空间一般都是有限的,为了避免Redis耗尽宿主机的内存空间,Redis内部实现了一套复杂的缓存淘汰策略来管控内存使用量。

证书管理:从手工到平台化

2023-06-30
阅读 3 分钟
855
作者:vivo 互联网运维团队- Peng Jiahong本文介绍了vivo业务运维证书管理从手工到平台化的历程。一、背景以往,vivo 互联网业务的域名证书运维管理工作,严重依赖经验丰富的高级运维工程师个人专职管理,证书管理存在单点以及过于依赖的人的情况。随着业务规模的持续扩大,以及对证书管理质量标准的要求提升,加强全网...

vivo 自研鲁班分布式 ID 服务实践

2023-06-29
阅读 7 分钟
801
本文介绍了什么是分布式ID,分布式ID的业务场景以及9种分布式ID的实现方式,同时基于vivo内部IT的业务场景,介绍了自研鲁班分布式ID服务的实践。

浅析 Jetty 中的线程优化思路

2023-06-26
阅读 6 分钟
988
本文介绍了 Jetty 中 ManagedSelector 和 ExecutionStrategy 的设计实现,通过与原生 select 调用的对比揭示了 Jetty 的线程优化思路。Jetty 设计了一个自适应的线程执行策略(EatWhatYouKill),在不出现线程饥饿的情况下尽量用同一个线程侦测 I/O 事件和处理 I/O 事件,充分利用了 CPU 缓存并减少了线程切换的开销。这...

“事后达尔文”—— 游戏业务效果评估方法实践

2023-06-25
阅读 5 分钟
2.2k
本文介绍了互联网业务数据效果评估的几种常见问题及方法,并基于分层抽样的逻辑优化出一套可应用于解决用户不均匀的“事后达尔文"分析法,可适用于无法AB测试或人群不均匀的AB测试等场景下的效果评估中,本文会基于实际应用案例,来给大家仔细阐述相关方法模型的思考过程,实现原理,应用结果,希望能够帮助大家,如果能...

vivo 游戏黑产反作弊实践

2023-06-19
阅读 5 分钟
2.1k
游戏行业从端游开始一直是黑灰产活跃的重要场景。近年来,随着互联网的发展和手机市场的不断壮大,手游的用户规模不断增长,黑产在手游市场的活跃程度不断提升。

vivo 帐号服务稳定性建设之路-平台产品系列06

2023-06-16
阅读 10 分钟
1.1k
vivo帐号是用户畅享整个vivo生态服务的必备通行证,也是生态内各业务开展的基石。伴随公司业务快速增长,帐号系统目前服务的在网用户已达到2.7亿,日均调用量破百亿,作为一个典型的三高(高性能、高并发、高可用)属性的系统,帐号系统的稳定性显得尤为重要。而要保障系统的稳定性,我们需要综合考虑多方面因素。本文将...

纠删码技术在vivo存储系统的演进【上篇】

2023-06-09
阅读 30 分钟
1.4k
本文将学术界和工业界的纠删码技术的核心研究成果进行了相应的梳理,然后针对公司线上存储系统的纠删码进行分析,结合互联网企业通用的IDC资源、服务器资源、网络资源、业务特性进行分析对原有纠删码技术进行优化和微创新,提出了融合EC整体方案以及可落地的RS+LRC+中间结果优化+并行修复跨AZ带宽设计方案,为后续的工程...

前端开发如何更好的避免样式冲突?级联层(CSS@layer)

2023-05-29
阅读 10 分钟
1.2k
本文主要讲述了CSS中的级联层(CSS@layer),讨论了级联以及级联层的创建、嵌套、排序和浏览器支持情况。级联层可以用于避免样式冲突,提高代码可读性和可维护性。