Realtime DB技术详解

2021-07-20
阅读 3 分钟
4k
基于 MongoDB 的 NoSQL 数据 库,因此具有不同于关系型数据库的优化方向和 功能特点。服务端 API 的设计只支持可以快速执行 的操作,因此需要用户认真考虑存储的数据结构。

下一代人工智能:逻辑理解?物理理解?

2021-07-13
阅读 2 分钟
1.5k
近日,由开放原子开源基金会与 Linux 基金会联合开源中国共同举办的首届“GOTC 全球开源技术峰会”在上海世博中心圆满落幕。作为LF AI & Data子基金会的理事会成员之一,OPPO数智工程系统资深技术专家Liam Zheng在GOTC「AI大数据与数字经济」分论坛发表了名为《下一代人工智能:逻辑理解?物理理解?》的演讲。本文通...
封面图

10分钟掌握Java性能分析诀窍

2021-07-12
阅读 5 分钟
2.8k
Java性能分析是一门艺术和科学。科学指的是性能分析一般都包括大量的数字、测量和分析;艺术指的是知识、经验和直觉的使用。性能分析的工具或者手段各有千秋,但性能的分析的过程却都大相径庭。本文就已知适用的Java性能分析窍门进行一些分享,帮助用户更好的理解和运用。

云原生Web服务框架ESA Restlight

2021-07-06
阅读 23 分钟
3.5k
ESA Stack(Elastic Service Architecture) 是OPPO云计算中心孵化的技术品牌,致力于微服务相关技术栈,帮助用户快速构建高性能,高可用的云原生微服务。产品包含高性能Web服务框架、RPC框架、服务治理框架、注册中心、配置中心、调用链追踪系统,Service Mesh、Serverless等各类产品及研究方向。
封面图

如何识别并解决复杂的dcache问题

2021-06-29
阅读 17 分钟
2.5k
背景:这个是在centos7.6的环境上复现的,但该问题其实在很多内核版本上都有,如何做好对linux一些缓存的监控和控制,一直是云计算方向的热点,但这些热点属于细分场景,很难合入到linux主基线,随着ebpf的逐渐稳定,对通用linux内核编程,观测,可能会有新的收获。本文将分享我们是怎么排查并解决这个问题的。一、故障...
封面图

OPPO加入LF AI & Data基金会,持续推动可持续生态建设

2021-06-23
阅读 2 分钟
2.7k
2021年6月22日,OPPO正式以理事会白金会员身份加入LF AI & Data基金会。未来,OPPO将与其他高级成员一道,致力于构建领先的全球人工智能与数据开源开放社区,加速人工智能与数据技术的创新发展与实际应用。
封面图

统一预估引擎的设计与实现

2021-06-17
阅读 5 分钟
3k
随着互联网的快速发展,互联网上出现了各种海量的信息。怎么样为用户推荐感兴趣的信息是个很大的挑战?各种各样的推荐算法、系统都涌现出来。而预估引擎可以说是推荐系统中比较重要的一环,预估引擎效果的好坏严重影响了算法效果。结合oppo的业务场景,我们的预估引擎需要解决几个问题:
封面图

oCPX简介——广告界的“无人驾驶”技术

2021-06-08
阅读 5 分钟
8.3k
互联网广告最早出现的时候会让广告主按时间长度去买断一个展示位置的广告,或者按广告展现次数去投放广告。这种方式与传统电视广告投放方式比较类似。我们现在看到的一些网站的Banner和大部分App的开屏广告都属于这种广告投放方式,而这些广告主都是以品牌推广为目的进行广告投放的。
封面图

关于java单线程经常占用cpu 100%的分析

2021-05-13
阅读 8 分钟
4.9k
容器内就获取个cpu利用率,怎么就占用单核100%了呢背景:这个是在centos7 + lxcfs 和jdk11 的环境上复现的。下面列一下我们是怎么排查并解这个问题。一、故障现象OPPO内核团队接到jvm的兄弟甘兄发来的一个案例,现象是java的热点一直是如下函数,占比很高。 {代码...} 我们授权后登陆oppo云宿主,发现top显示如下: {代...

数据库查询性能优化指南

2021-05-12
阅读 5 分钟
2k
query执行的速度和我们的硬件息息相关,当前用的什么样的CPU,有多少核多少线程, 内存有多大都直接影响了运算速度, 磁盘是SSD还是HDD,网卡什么速率都直接影响了我们数据读取的时延

揭秘QUIC的性能与安全

2021-01-06
阅读 8 分钟
6.8k
在当代网络通讯中,高速且安全的网络接入服务已为互联网厂商的共同追求。针对传统的TCP + TLS的安全互联网服务,在各大头部互联网厂商中反响激烈,如google有提出各种升级和补丁方案,例如TCP fastopen, TLS1.3等,而基于TCP的传统体系已经有运行几十年,形成了固化甚至僵化的网络基础设施,导致补丁升级或者新方案融入...

深入理解Flutter的图形图像绘制原理——图形库skia剖析

2021-01-05
阅读 7 分钟
14k
Flutter是目前流行的高性能跨平台UI框架,图形库skia是其跨平台的基石。本文将深入分析skia的图形、字体、图片的渲染原理,如何挖掘硬件特性,为UI性能优化提供思路。

OPPO互联网业务多活架构演进和实践

2020-12-18
阅读 5 分钟
2.2k
OPPO 虽然是一家手机公司,但是其互联网业务的规模非常庞大,月活用户数超过 3 亿,既有内容业务、分发业务,也有商业广告、金融等业务。整体上,用户的使用非常高频,来自客户端的请求和数据量非常庞大,并且这几年一直在持续高速发展。

docker的衰落与kubernetes的兴起

2020-12-09
阅读 3 分钟
3.3k
kubernetes 1.20中对于docker的弃用,引发的讨论很多,关于docker衰亡的话题又热了起来。对这一事件,我们找了OPPO一位工程师大佬,从技术人员的角度说说这个事。他本人2014年开始从事容器化相关工作,目前负责OPPO云平台的编排与调度方向的工作。

qiankun 微前端原理与实践

2020-12-07
阅读 17 分钟
5.5k
微前端是指存在于浏览器中的微服务,通常由许多组件组成,并使用类似于 React、Vue 和 Angular 等框架来渲染组件,每个微前端可以由不同的团队进行管理,并可以自主选择框架。

基于Kubernetes和OpenKruise的可变基础设施实践

2020-11-26
阅读 5 分钟
1.8k
在云原生逐渐盛行的现在,不可变基础设施的理念已经逐渐深入人心。不可变基础设施最早是由Chad Fowler于2013年提出的,其核心思想为任何基础设施的实例一旦创建之后变成为只读状态,如需要修改和升级,则使用新的实例进行替换。这一理念的指导下,实现了运行实例的一致,因此在提升发布效率、弹性伸缩、升级回滚方面体现...

关于numa loadbance的死锁分析

2020-11-23
阅读 14 分钟
3.9k
hardlock一般是由于关中断时间过长,从堆栈看,上面的"migration/1" 进程在抢spinlock,由于_raw_spin_lock_irqsave 会先调用 arch_local_irq_disable,然后再去拿锁,而arch_local_irq_disable 是常见的关中断函数,下面分析这个进程想要拿的锁被谁拿着。

如何用 CI (持续集成) 保证研发质量

2020-11-13
阅读 14 分钟
2.8k
分布式技术的发展深刻地改变了我们编程的模式和思考软件的模式。分布式很好的解决性能扩展,可靠性,组件可用性等问题,但是单机转变成分布式却加大了系统的复杂性,对于组件的开发,测试,部署,发布都提出更高的要求。那么,针对复杂的分布式系统怎么保证软件质量和系统的稳定性?首先看下,传统软件产品活动的大致流...

如何设计并实现存储QoS?

2020-11-09
阅读 11 分钟
2.1k
随着存储架构的调整,众多应用服务会运行在同一资源池中,对外提供统一的存储能力。资源池内部可能存在多种流量类型,如上层业务的IO流量、存储内部的数据迁移、修复、压缩等,不同的流量通过竞争的方式确定下发到硬件的IO顺序,因此无法确保某种流量IO服务质量,比如内部数据迁移流量可能占用过多的带宽影响业务流量读...

Docker hung住问题解析系列(一):pipe容量不够

2020-11-05
阅读 9 分钟
3.2k
本文来自OPPO互联网基础技术团队,转载请注名作者。同时欢迎关注我们的公众号:OPPO_tech,与你分享OPPO前沿互联网技术及活动。背景:这个是之前遇到的老问题,最近docker社区里面其他人报了这问题暂时还没解决。issue的链接是:[链接]下面列一下我们是怎么排查并解这个问题的。一、故障现象Oppo云智能监控发现lxcfs 服...

MongoDB特定场景性能数十倍提升优化实践(记一次MongoDB核心集群雪崩故障)

2020-10-10
阅读 11 分钟
2.8k
某核心JAVA长连接服务使用MongoDB作为主要存储,客户端数百台机器连接同一MongoDB集群,短期内出现多次性能抖动问题,此外,还出现一次“雪崩”故障,同时流量瞬间跌零,无法自动恢复。本文分析这两次故障的根本原因,包括客户端配置使用不合理、MongoDB内核链接认证不合理、代理配置不全等一系列问题,最终经过多方努力确...

前端插件化架构的探索和实践

2020-09-21
阅读 7 分钟
12.4k
babel插件、webpack插件、vue-cli插件,为啥这么多的优秀框架都是使用插件系统?插件化架构是什么?带来了什么好处?可以应用到什么场景呢?

OPPO云原生Service Mesh探索与实践

2020-09-10
阅读 10 分钟
2.7k
随着互联网业务不断发展, 业务服务以及服务实例呈快速增长的趋势,然而传统微服务架构虽然能在一些场景满足服务高性能, 高可用, 可治理等需求,但同时也面临着耦合性高,灵活性差,管理复杂,可运维性低,缺乏多语言支持等问题。而如今云原生场景下,Service Mesh则越来越成为热议的话题。

Dubbo协议解析与OPPO自研ESA RPC框架实践

2020-08-10
阅读 8 分钟
4.1k
Dubbo是一款高性能、轻量级的开源Java RPC框架,诞生于2012年,2015年停止研发,后来重启并发布了2.7及连续多个版本。Dubbo自开源以来,许多大公司都以此为微服务架构基石,甚至在官方停止维护的几年中,热度依然不减。

推荐系统中不得不说的DSSM双塔模型

2020-05-25
阅读 6 分钟
8.8k
本文主要介绍项目中用于商业兴趣建模的DSSM双塔模型。作为推荐领域中大火的双塔模型,因为效果不错并且对工业界十分友好,所以被各大厂广泛应用于推荐系统中。

YARN的介绍及实践探索

2020-05-09
阅读 8 分钟
3.8k
Apache Hadoop YARN 是一种新的Hadoop资源管理器。它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。也就是说YARN在Hadoop集群中充当资源管理和任务调度的框架。

OPPO基于Kubernetes的云平台存储容器化实践

2020-05-06
阅读 5 分钟
3.2k
本文根据OPPO云平台高级后端工程师蔡逸煌在DBAplus的线上分享整理而成,主要讲述OPPO云平台存储容器化的实践。关于作者:蔡逸煌,OPPO云平台高级后端工程师,主要从事云平台开发工作,擅长K8S、容器网络、存储等领域。

机器学习项目实操指南

2020-04-26
阅读 8 分钟
2.7k
有的人可以徒手推导机器学习算法公式,可以深入源码了解算法的实现,又或者在Kaggle比赛中获得不错的名次,但在实际的项目中却走得“步履蹒跚”,究其根本原因是机器学习知识体系还不完善。

荐书 | OPPO互联网技术团队的书单(内含赠书福利)

2020-04-24
阅读 5 分钟
2.9k
读书是为了看见不一样的世界。 各位朋友,4月23日是世界读书日,你最近在读什么书?有没有哪些书是你爱不释手,迫不及待会向朋友推荐的呢? 我们邀请了OPPO互联网技术团队的几位工程师,推荐他们最近读过的印象深刻且有启发的书。 他们关注的领域不同,兴趣各异,推荐的书也不都与技术相关,希望有你感兴趣的。 重点是:...

详解BERT模型中分类器源码

2020-04-13
阅读 11 分钟
3.7k
BERT是近几年NLP领域中具有里程碑意义的存在。因为效果好和应用范围广所以被广泛应用于科学研究和工程项目中。本篇从源码的角度,从整体到局部分析BERT模型中分类器部分的源码。