08/10
2021

缓存问题

整理了一下面试过可能会问到的一些缓存问题,以及解决方案

缓存问题 https://raw.githubusercontent.com/blurty/markdownphotos/master/design/%E7%BC%93%E5%AD%98%E9%97%AE%E9%A2%98.png

redis交互模式

redis交互模式 https://raw.githubusercontent.com/blurty/markdownphotos/master/design/redis%E4%BA%A4%E4%BA%92%E6%A8%A1%E5%BC%8F.png

08/09
2021

谈谈权限问题

经历过几家公司,小公司就不用说了,代码权限什么的控也没有控的价值,而且因为预算问题,也没有能力去建设安全部和各种工具来防范风险。

主要还是来说一下大公司的权限政策。比如某滴、某团、某度。

08/05
2021

谈谈事故和复盘

最近团队内一个小伙伴因为上线导致了一个事故,影响面还比较大。就产生了一些感慨和想法。

事故起因是因为上线导致了容器内某个路径下的配置文件被覆盖,从而引发了雪崩,导致其他的系统受到了影响。当然本质上这次上线修改的代码跟这个配置文件没有任何关系。

然后小同学在上线中没有去回归一下系统功能,咵咵咵的就点完了上线。

团队内的老同事都认为事故完全是因为该小伙伴上线不规范造成的,没有在预览机上观察。

08/04
2021

为git page博客添加搜索功能

很多程序员朋友是在github上搞的自己的博客网站,省心省力。但毕竟github pages支持的是静态网站,很多动态功能都不太好支持。

这里我们找到了一种为博客添加搜索功能的方法。

依赖的是开源组件Simple-jekyll-search

  1. 这里我们首先把这个组件下载下来

git clone https://github.com/christian-fei/Simple-Jekyll-Search.git

08/04
2021

git多用户配置

工作、公司在同一台mac上配置不同的git

https://zhuanlan.zhihu.com/p/62071906

08/03
2021

php程序是怎么运行起来的

国内头部的一些互联网公司,大多有相当一部分代码是php。即使现在都是在往go方向转,但如果要想胜任这个工作,还是需要对php有一定的了解的,这样才能将老代码进行理解,进而重构到go生态中。

php作为一个静态的解释型脚本语言,没有常驻后台的进程,我们写完php代码之后,推到线上直接就生效了,也不需要像其他语言,比如go、python、java、c等等去重启一下进程。

所以我一直都很困惑于当客户端/业务方的一个http请求到来时,服务端是如何进行处理的,怎么就将我们的php代码给运行起来了。于是,查了很多文献,都语焉不详,花费了好多时间才搞明白。

首先,一个请求到后端的时候,处理路径如下:

  1. web server接受请求,web server可以是apache、nginx、tomcat等
  2. web server将请求以fast-cgi协议描述的数据格式,将请求数据通过套接字发送到php-fpm
  3. php-fpm调度php脚本运行,获得运行结果
  4. php-fpm将运行结果再以fast-cgi协议的格式传送回web server
  5. web server响应客户端
08/02
2021

golang之defer性能测试

在golang编码中,各种规范都在告诉我们在释放资源的时候要使用defer,尽量的在申请完资源,立马defer资源。经典的比如lock的使用。

今天看了一个开源库的实现,发现在使用lock的时候,并没有用defer unlock,而是在每一个分支处理完成之后独立的去unlock。这样无疑比较容易出bug,但同时又让我产生了一丝好奇,使用defer和不使用defer的性能差距到底有多大呢。

07/27
2021

《大数据之路》读后感

大数据处理以前没有接触过,需要弥补一下这块短板。

然后在看阿里巴巴数据技术和产品部推出的《大数据之路》。这本书可能是不再出版了,所以市面上出售的仅剩一些库存,官方售价79元,京东卖300~400元。

这本书更多的像是阿里数据产品的一个宣讲会,不涉及各种数据工具的底层实现原理,就是站在应用方的角度告诉你我们都有什么样的一个功能。

另一个感觉就是造词大师,各种互联网黑话。对于一个数据新人来说,还是值得一看的,起码能让你在接触到数据方时,或者跟数据部门协同时,知道他们在说什么,而不是很懵逼的不知道他们在讲什么。。什么ODS、什么DWS、什么多流关联等等。

毕竟是阿里数据部门的书,更多还是参考的阿里的电商场景的具体实现,比如双11的大屏显示。

当然也有别的一些优点:

  1. 毕竟是技术部门写的文档,可以学习如何写文档,有哪些高逼格的名词。看多了,你也能写出高逼格的文档和材料
  2. 在维度设计和事实表设计章节总结了一些方法论
  3. 大数据研发中所涉及到的方方面面的技术点

总体来看,本书的前半部分在将阿里的大数据平台多么多么牛逼,整体的架构是什么样的。但可能是基于安全性的要求,并没有深入,所以都只是一个看起来高大上的名词,比如MaxCompute,读者也只能知道这儿有一个大数据计算引擎,也不知道具体怎么实现的;本书的中间两个章节:维度设计、事实表设计。这个地方就不涉及安全性的要求了,跟具体的技术实现没有太大关系,更多的还是设计理念,所以还是讲了一些方法论的。

最后,本书作为一个入门书籍显然是不合适的,但用来了解一下大数据的生态还是可以的。适合什么人看呢,适合度从上到下排列

  1. 阿里的大数据从业人员
  2. 阿里的大数据产品使用方
  3. 非阿里的大数据从业者
  4. 对大数据感兴趣的业余爱好者
07/24
2021

时隔三年多,又准备开始写博客了。

三年时间不短,事情很多,想表达的内容也不少。

我在滴滴的三年

机遇是留给有准备的人的

去滴滴之前,一直在小公司厮混,小公司的狗屁倒灶的事情是真的多。其实一直想到一家大公司工作,待遇会好一些,也能更多的将心力放在工作上。

于是,刷题、看书、写博客,尽量的去提高自己的认知水平和技术能力,以期能够进一家大厂。

然后在17年底的时候,滴滴hr不知道从什么地方薅到了我的简历,主动约我去面试,我抱着试一试的想法就去了,面了一下午,从14点到18点,居然面上了,当场就承诺了Offer。

犹记得当天晚上从湾流大厦出来的时候,内心是很激动的。跟爱人、跟朋友表达了自己的兴奋之情。

07/24
2021

reflect性能测试

本节来测试一下golang中的reflect常见方法的性能,以及对比断言的性能

interface断言

interface断言在很多时候都不太好看,主要对于后期维护上来说确实是相当困难。因为你不得不判断异常情况,否则会panic。

我们来对比一下基础类型、复合类型map、结构类型struct、指针类型分别耗时情况如何

本站总访问量 本站访客数人次 本文总阅读量