
问题解析
文章平均质量分 89
WanderingScorpion
DoIT.
展开
-
关于分布式架构的底层思考
在讨论架构时,首先要说明为什么会出现架构。我们说的架构更确切的指的是“分布式架构”,即以RPC为基础构建的服务独立部署的系统架构。原创 2022-10-07 12:39:04 · 1152 阅读 · 0 评论 -
广告业务机器资源成本优化思路及建议
广告业务机器资源成本优化思路及建议原创 2022-06-19 15:06:28 · 1134 阅读 · 0 评论 -
高性能kv存储设计 之 cacheline对齐
最近在设计高读性能的kv存储,为了尽可能保证cache的命中,应尽可能将"同时读取"的数据放到一起,以此来保证数据大概率同时出现在高速cache中。当前大部分计算机的cacheline size为64字节对齐,即当读取地址0x403140(64的整数倍 + 0)的时候,会将0x403140 ~ 0x40317F(64的整数倍 + 63)中的内容都加载进缓存。以此为参考依据来设计数据结构的大小可以加强数据访问速率,在极端场景下获得较大收益。测试程序#include <stdio.h>#inc原创 2020-11-24 20:00:10 · 1078 阅读 · 0 评论 -
pageblock_pfn_to_page性能热点问题排查
一 问题背景在一次广告检索内核的迁移过程中,偶然发现迁移新内核后的检索服务在一定条件下会触发rt毛刺问题。rt毛刺现象出现的条件如下,任何一条均可复现:使用超高压力将服务压至崩溃状态,然后将压力恢复正常压力状态,毛刺现象复现使用正常压力长时间对服务加压,持续30分钟左右之后,毛刺现象复现通过性能埋点监控发现,在rt毛刺点,rt的增长主要集中在多线程并行使用内存池申请内存的代码部分;通过p...原创 2018-12-17 14:25:37 · 980 阅读 · 1 评论 -
精准广告业务中的关键问题分析
1 召回阶段度量的选择广告和推荐最大的区别就在于广告引入了广告主出价的维度,这让数据具有很强的实时性,给工程技术带来了很大的挑战。在全库检索的定向召回阶段,是否要将广告doc的出价也考虑进去是一个关键问题。若不考虑出价,本质上召回阶段是按照相关性召回(也可以简单地理解为ctr),若考虑price则对应的是按照ecpm进行召回。特别的,在cpm广告场景中ecpm等于出价。 在计算广告中,平台起...原创 2018-04-26 16:00:25 · 1487 阅读 · 0 评论 -
广告系统索引应用HugePage调研
一 背景在广告系统中,在投广告的信息作为核心数据,具有改动频繁、实时性要求高的特点。为了设计并实现一个满足业务需求的广告系统,目前业界比较常见的解决方案是在广告检索集群每一台服务器的内存中存放索引数据,并通过mmap技术进行持久化(也可以直接使用tmpfs,不进行磁盘级别的持久化)。 众所周知,为了方便内存管理,提高内存使用效率,操作系统对内存进行了分段分页处理,其中分段管理的粒度较粗,分页...原创 2018-03-27 20:45:21 · 481 阅读 · 1 评论 -
致命的巧合:一次结算异常排查总结
一 异常现象.1、2018-04-02 16:00左右,实验田的两台机器手动部署基线、拉取索引、追消息并接流。 2、第二天接到大量广告主投诉,投诉内容是广告的结算价格远大于自己的出价 3、通过pv日志查询,发现存在大量pv的orgprice值(广告主出价)被错误地写成score值(广告海选质量分),而score在数值上通常是orgprice的几百倍 4、所有出问题的流量(后简称异常流量)...原创 2019-07-27 20:15:36 · 158 阅读 · 1 评论 -
计算广告实时结算超投问题解决方案的分析
计算广告实时结算超投问题解决方案的分析1、超投问题应对方案大流量高并发的实时结算系统会有一个令人十分头疼的问题,就是超投。在广告系统中,结算环节会实时计算各个广告主账户内的余额,如余额为0,既要立刻停止投放。所谓超投,就是指在结算系统发出停止投放的指令到系统实际将广告下线的这段时间内,投放系统错误的将下线广告投放出去。这部分被错误投放的广告是不能向广告主收钱的,也就造成了平台的损失。由原创 2018-01-16 14:53:01 · 3195 阅读 · 0 评论 -
C++左移操作的陷阱
发现的过程十分曲折,在这里不做赘述。为了说明问题直接上代码。#include int main() { int off = 3; int64_t a = (1 << off); off = 35; int64_t b = (1 << off); if (a == b) { std::cout "There is a bug.\n"; } return 0;原创 2018-01-11 21:41:06 · 1324 阅读 · 0 评论 -
[问题解析] 记一次__do_global_ctors_aux导致的coredump
一次__do_global_ctors_aux导致的coredump原创 2017-03-10 15:19:08 · 1924 阅读 · 2 评论