Arganzheng's Blog

stay hungry, stay foolish

记一个诡异的C++问题

昨天联通一直遇到一个诡异的问题:服务某个接口一接受到请求就core dump了。用gdb查看core文件,也没有看出个所以然: 最后实在没有办法,只能采用排除法,把可疑的代码逐行注释掉,检查是不是还有core。因为是一跑就core,所以其实还是很快就定位到问题代码: class StrategyData { public: StrategyData(); inline s...

互联网广告系统学习笔记

广告变现方式 计费方式 结算方式 适用场景 CPT 品牌广告 CPM 有受众选择需求的品牌广告 CPC 竞价广告 CPS/CPA/ROI 效果类广告联盟/DSP...

Kerberos学习笔记

互联网的开放环境中是一个危险的地方,用户可以被模仿,Server也可以被伪造,而且在通信过程中还时刻存在数据被窃听,篡改和重放。在这样的环境下如何安全可靠的识别用户身份,如何提供业务访问授权? Kerberos,是一个基于票据的计算机网络认证协议。它的认证过程的实现不依赖于主机操作系统的认证,无需基于主机地址的信任,不要求网络上所有主机的物理安全,并假定网络上传送的数据包可以被任意地读取、...

使用logstash收集nginx访问日志

首先安装logstash,这个非常简单,不赘述。建议把所有插件都安装上,省心。 然后要配置一下logstash for nginx。logstash基本原理:input => filter => output。在我们这里input就是nginx的access日志,output就是ElasticSearch。filter则是用来解析和过滤日志用。一般我们要把message结构化再...

Kafka实战

背景 最近要把原来在BB做的那套集中式日志监控系统迁移到Mobojoy这边,原来的实现方案是: Log Agent => Log Server => ElasticSearch => Kibana,其中Log Agent和Log Server之间走的是Thrift RPC,自己实现了一个简单的负载均衡(WRB)。 原来的方案其实运行的挺好的,异步化Agent对应用性能基...

安装RabbitMQ

1. 安装erlang erlang的安装比想象中要麻烦的多,试验了好几种,总是出现依赖错误。。最后还是通过kerl脚本安装搞定了。。具体参见:Installing Erlang。 [work@study.arganzheng.me downloads]$ ./kerl list releases Getting the available releases from erlang.or...

大数据平台学习笔记

数据接入 主要负责数据的收集,分发,预处理以及管理工作 Scribe/Flume, Kafka 离线计算平台 Hadoop 批处理 三种任务(Job) Map-Reduce Job Hive Job Pig J...

RAID学习

最近申请到两台机器,RMS系统上显示的配置信息如下: CPU: INTEL Xeon E5-2620 V2 6C 2.1GHZ:2 内存: HUAWEI PC3L-10600 16G:6 硬盘: HUAWEI SATA 500G 7.2K:2 Flash: SSD 480G MLC:5 可以看到有5块480G的SSD盘。我们知道使用合适的RAID可以提到读性能,增加数据的安全性。那么五...

自动化部署平台设计

我们一般通过jenkins做持续构建,在代码提交之后自动构建maven任务,输出jar包或者war包。但是我们还需要把jar/war包发布到线上机器。这个操作能不能自动化呢? 要实现自动化部署,我们需要解决下面三个问题: WHAT to deploy: jar/war/zip, etc. 如果要支持js/css/html,甚至class文件,还需要支持文件发布。 WHERE t...

keepalived实战

理论介绍 Keepalived uses the IP Virtual Server (IPVS) kernel module to provide transport layer (Layer 4) load balancing, redirecting requests for network-based services to individual members of a serv...