K8s 多集群实践思考和探索

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

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

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

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

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

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

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

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

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

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

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

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

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

Android 架构模式如何选择

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

HBase Compaction 原理与线上调优实践

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

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

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

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

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

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

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

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

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

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

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

浅析 Jetty 中的线程优化思路

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

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

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

vivo 游戏黑产反作弊实践

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

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

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

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

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

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

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

Kafka实时数据即席查询应用与实践

2023-05-26
阅读 10 分钟
519
Kafka中的实时数据是以Topic的概念进行分类存储,而Topic的数据是有一定时效性的,比如保存24小时、36小时、48小时等。而在定位一些实时数据的Case时,如果没有对实时数据进行历史归档,在排查问题时,没有日志追述,会很难定位是哪个环节的问题。

TLS 加速技术:Intel QuickAssist Technology(QAT)解决方案

2023-05-22
阅读 7 分钟
610
当前 TLS 已经成为了互联网安全的主要传输协议,TLS带来更高的安全性的同时,也带来了更多的性能开销。特别是在建连握手阶段,TLS的CPU开销,相对于TCP要大很多。

深入浅出 OkHttp 源码解析及应用实践

2023-05-18
阅读 8 分钟
527
本文首先从源代码入手简要分析了一个请求发起过程中的核心代码,接着通过流程图和架构图概括地介绍了OkHttp的整体结构,重点分析了拦截器的责任链模式设计,最后列举了OkHttp拦截器在项目中的实际应用。

使用doop识别最近commons text漏洞的污点信息流

2023-05-16
阅读 9 分钟
481
本文基于笔者对doop静态程序分析框架源代码和规则学习,并结合对目前漏洞公开技术细节的学习,修改增强doop app only模式下的分析规则后,实现通过doop工具识别commons text rce漏洞(CVE-2022-42889)。内容包含三部分,第一部分简单介绍doop分析框架,第二部分简单介绍commons text漏洞的原理和代码调用栈,第三部分重...

一种KV存储的GC优化实践

2023-05-12
阅读 9 分钟
618
从内部需求出发,我们基于TiKV设计了一款兼容Redis的KV存储。基于TiKV的数据存储机制,对于窗口数据的处理以及过期数据的GC问题却成为一个难题。本文希望基于从KV存储的设计开始讲解,到GC设计的逐层优化的过程,从问题的存在到不同层面的分析,可以给读者在类似的优化实践中提供一种参考思路。

vivo积分任务体系的架构演进-平台产品系列05

2023-05-04
阅读 6 分钟
1.1k
积分体系作为一种常见营销工具,几乎是每一家企业会员营销的必备功能之一,在生活中随处可见,随着vivo互联网业务发展,vivo积分体系的能力也随之得到飞速提升,本篇主要介绍vivo积分任务体系的系统建设历程。

vivo 推送系统的容灾建设与实践

2023-04-27
阅读 5 分钟
620
vivo推送平台是vivo公司向开发者提供的消息推送服务,通过在云端与客户端之间建立一条稳定、可靠的长连接,为开发者提供向客户端应用实时推送消息的服务,支持百亿级的通知/消息推送,秒级触达移动用户。

Tars-Cpp 协程实现分析

2023-04-24
阅读 8 分钟
623
Tars 是 Linux 基金会的开源项目([链接]),它是基于名字服务使用 Tars 协议的高性能 RPC 开发框架,配套一体化的运营管理平台,并通过伸缩调度,实现运维半托管服务。Tars 集可扩展协议编解码、高性能 RPC 通信框架、名字路由与发现、发布监控、日志统计、配置管理等于一体,通过它可以快速用微服务的方式构建自己的稳...

容易忽视的细节:Log4j 配置导致的零点接口严重超时

2023-04-21
阅读 9 分钟
747
本文详细的记录了一次0点接口严重超时的问题排查经历。本文以作者自身视角极具代入感的描绘了从问题定位到具体的问题排查过程,并通过根因分析并最终解决问题。整个过程需要清晰的问题排查思路和丰富的问题处理经验,也离不开公司强大的调用链、和全方位的系统监控等基础设施。

明修"栈"道——越过Android启动栈陷阱

2023-04-18
阅读 15 分钟
970
本文从一例业务中遇到的问题出发,以FLAG_ACTIVITY_NEW_TASK这一flag作为切入点,带大家探究Activity启动前的一项重要的工作——栈校验。