作者归档:hsiaoxychen

开启 PIE 编译选项导致的一个诡异问题

上周在工作中遇到一个诡异的问题:代码完全没动过,加了一些编译选项之后,编译正常,二进制也能运行,业务流程却失败了。经过一些排查之后,发现是 PIE 与 ld 链接资源文件的机制产生了冲突,很值得在此做一下记录,顺便复习下链接相关的知识。

继续阅读
nginx -s reload header image

Nginx debug 日志分析:reload 过程发生了什么

最近在研究 Nginx 源码。我把 Nginx 的 debug 日志给开了,看一看 reload 流程产生的日志都有哪些,并对源码进行简单阅读,以期对 Nginx 的 reload 流程产生一个感性认知。

继续阅读
Python工匠——案例、技巧与工程实践

《Python工匠》阅读笔记

前言

从刚发售那会,就看到有几位推友在推荐。刚开始还没特别感兴趣,第一眼印象:这不就是与 Fluent Python 类似的题材嘛,Fluent Python 都那么厚了,还能整出什么花来吗?我就没有买。

但是几天后,萝莉老师突然艾特我,“小圆,强推这本书啊”。按捺不住安利,仔细一看,原来是蓝鲸的大佬写的(离职前我刚好一度想活水到蓝鲸,最后还是没鼓起勇气去勾搭),看着目录好像也挺有东西,就迅速入了一本。后来公司的项目赶进度,也就每天中午午休的时间翻一翻,就这么零零散散地看了三个月,整本书翻了两遍,最近终于看完了。

继续阅读

用 Unity 做了一个 2048 游戏

我觉得我大学四年一直都陷在一个怪圈里:一直在学习东西,但总觉得还学得不够火候以实操起来,又因为没有用起来而学完就忘,最终导致又觉得自己火候不够。最近认识到这个问题之后,就趁着最近毕设做完,还没回公司,抓紧把学的 Unity 用起来,做点小游戏练练手。经过一些调查,我选择像素级模仿 2048 原作做一款练手的游戏。

继续阅读

GAMES101第八课笔记 - Blinn-Phong 反射模型(下)、着色频率、渲染管线

这是本系列的第六篇笔记,涉及原课程第八课的内容(课程视频课件)。这节课主要讲解了 Blinn-Phong 反射模型的高光、环境光部分,以及着色频率、实时渲染管线等。

继续阅读

SPF 格式与语法一览

SPF 是什么

目前广泛使用的发信协议 SMTP 中,发信方可以任意设定发件人的邮箱地址,任何人都可以假冒自己是 boss@your-corp.com 向其他人发送邮件。因此,SPF (Sender Policy Framework) 机制被提出来,用以校验电子邮件发送方(邮件传输代理,MTA),只有被 your-corp.com 所认可的服务器才可以发送以 boss@your-corp.com 作为发件人的邮件。邮件接收方会借助 SPF 记录与 IP 地址来识别发件服务器是否合法,并根据 SPF 记录的指示判断同意接收邮件或者拒收。

继续阅读

GAMES101第七课笔记 - Blinn-Phong 反射模型(上)

这是本系列的第五篇笔记,涉及原课程第七课的内容(课程视频课件)。这节课主要讲解了 Z-buffer(整理在了上篇笔记)、着色的概念与 Blinn-Phong 反射模型。

继续阅读