摘要: 下面列了我读过的一些编程相关的书籍,写了一些对书的印象,都是个人观点。书名后是我个人对书的推荐强烈度打的分(10分满分),都是拍脑袋打的。 我比较习惯读纸质书,买书也比较谨慎,踩的坑少(围笑),分打得可能比较高一些。 操作系统 《Linux内核设计与实现》10分:全书都在讲 Linux 内核的设计思阅读全文
posted @ 2018-01-07 19:55 枕边书 阅读(55) 评论(0) 编辑
摘要: 介绍: 本人普通后端开发,目前就职于某渣,熟悉 PHP,正在学习 Go 并持续学习 C,对 网络编程 和 Unix 系统编程有浓厚兴趣。 博客全部原创,持续更新中,欢迎交流关注。 (常见的小知识都放私人笔记,有需要共享的可以联系我)。 博客目录为了方便查看,欢迎交流关注。 // 个人网站:枕边书:阅读全文
posted @ 2017-03-01 19:30 枕边书 阅读(884) 评论(0) 编辑
摘要: 接之前的文章对 PostgreSQL 的查询效果和效率进行优化,从使用 B树索引优化查询效果,到使用子查询优化查询效率,最后又使用分词替换掉 B树索引,见招拆招,达成优化目标。阅读全文
posted @ 2018-01-09 19:34 枕边书 阅读(278) 评论(2) 编辑
摘要: 下面列了我读过的一些编程相关的书籍,写了一些对书的印象,都是个人观点。书名后是我个人对书的推荐强烈度打的分(10分满分),都是拍脑袋打的。 我比较习惯读纸质书,买书也比较谨慎,踩的坑少(围笑),分打得可能比较高一些。 操作系统 《Linux内核设计与实现》10分:全书都在讲 Linux 内核的设计思阅读全文
posted @ 2018-01-07 19:55 枕边书 阅读(55) 评论(0) 编辑
摘要: 红黑树是非常经典且实用的数据结构,本文通过它的等同——2-3-4树,避开颜色因素的影响,以一种更简单的方式介绍了红黑树插入删除操作的实现。文章附带 PHP 和 Java 版红黑树源码。阅读全文
posted @ 2018-01-03 19:39 枕边书 阅读(334) 评论(1) 编辑
摘要: 本文介绍了如何使用 Nginx 路由重写功能搭配 Linux 链接,再加上项目内部路由达到代码的渐进式迁移,在新旧项目之间实现无缝切换。阅读全文
posted @ 2017-12-25 20:05 枕边书 阅读(159) 评论(0) 编辑
摘要: 恰当地使用多线程能够大大提升程序效率,本文对比多进程介绍了下多线程的优势和适用场景,提出了一种巧用方案,并使用 PHP 代码实现了多线程的常见用法。阅读全文
posted @ 2017-12-04 20:23 枕边书 阅读(1140) 评论(1) 编辑
摘要: cron 在单机上应用很方便,可是在多台机器、任务繁多的情况下,想把任务管理得井井有条就不是一件简单的事了。我来安利一个自己用 Go 实现的 cron plus,文章主要介绍实现思想和各功能的技术要点。阅读全文
posted @ 2017-11-27 19:26 枕边书 阅读(3634) 评论(13) 编辑
摘要: 全文检索应该算是一个挺普遍的需求了,虽然有 ES 这种搜索引擎,但为了数据的灵活性,关系型数据库更为适合。本文记录了 PostgreSQL 进行全文搜索时的配置步骤,总结了几个优化点,同时填了几个经常遇到的坑。阅读全文
posted @ 2017-11-06 21:35 枕边书 阅读(1039) 评论(0) 编辑
摘要: 项目迁移过程中,项目代码结构的确认是头等大事,本文聊聊我在进行老项目重构时进行代码结构设计中的问题和思考。阅读全文
posted @ 2017-11-02 19:31 枕边书 阅读(778) 评论(5) 编辑
摘要: 在“求佛保佑服务器不宕机”、“杀程序员祭天”的环境下,程序员每天可谓是战战兢兢,接到电话和短信都吓得瑟瑟发抖,为了我们的安全,及时发现服务器运行问题已不仅仅是运维的问题了。本文总结了常见的服务器监控指标,希望各位开发人员都搞一个脚本运行着以保障自己的生命安全。阅读全文
posted @ 2017-10-17 19:37 枕边书 阅读(852) 评论(1) 编辑
摘要: 随着业务发展和数据积累,你的 Redis 服务器变得越来越臃肿了,甚至内存爆满影响了业务,那么它是如何一步一步走到这个地步,又如何解决呢?希望本文能帮助到你。阅读全文
posted @ 2017-10-09 19:48 枕边书 阅读(1651) 评论(8) 编辑
摘要: 文章通过用Go语言实现的设计模式,总结了各模式的特点和使用场景,并配以现实生活中的实例,帮助理解设计模式。本篇包括:责任链模式、蝇量模式、解释器模式、中介者模式、备忘录模式、原型模式和访问者模式;阅读全文
posted @ 2017-09-11 19:30 枕边书 阅读(464) 评论(0) 编辑
摘要: 前言 前几天,从 DBA 手里接到一个 Redis RDB 文件,里面是 15G 约 660万 的 Redis 键值对数据,想通过这些数据提取出当前 Redis 的 Key 和这些 Key 的类型。其文件的每行结构类似于: KEY: IAmATestKey || TYPE: STRING || ex阅读全文
posted @ 2017-09-06 19:30 枕边书 阅读(1050) 评论(4) 编辑
摘要: 文章通过用Go语言实现的设计模式,总结了各模式的特点和使用场景,并配以现实生活中的实例,帮助理解设计模式。本篇包括:模板模式、迭代器模式、组合模式、状态模式、代理模式、桥接模式和建造者模式;阅读全文
posted @ 2017-08-29 19:19 枕边书 阅读(539) 评论(2) 编辑
摘要: PHP程序员阅读Java语言实现设计模式的书,然后用Go语言实现。配以现实生活中的实例,帮助理解设计模式。本篇包括:策略、观察者、装饰者、工厂、单例、命令、适配器、外观。阅读全文
posted @ 2017-08-21 20:46 枕边书 阅读(539) 评论(2) 编辑
摘要: 本文通过 PHP 调用 Go 服务的实例的实现,介绍一种不同语言进程间通信的方式:Unix Domain Sockets,它可以快速高效地实现进程间的数据、信息交互,而且不需要锁等复杂操作,可谓是进程间通信的利器。阅读全文
posted @ 2017-07-31 20:29 枕边书 阅读(1718) 评论(9) 编辑
摘要: 60万 条短消息记录,5万 关键词,看我如何一步步地将耗时 10小时 的作业优化到 10分钟 以内。优化过程中的心得、坑和结论方法,希望能大家一些启发。阅读全文
posted @ 2017-07-17 20:29 枕边书 阅读(11137) 评论(59) 编辑
摘要: 常在 linux 下玩耍的开发者肯定会经常遇到需要对进程调度的情况,也会遇到一些其中的小状况,本文介绍了几个可以在 linux 方便安稳运行后台程序的命令、常用的作业调度命令及 Daemon 进程的特点及创建,也解决了几个常见的小问题。阅读全文
posted @ 2017-07-11 20:22 枕边书 阅读(5960) 评论(25) 编辑
摘要: 本文通过C语言的四叉树实例,介绍了四叉树的实现过程(主要是插入和查询),另外介绍了四叉树的边界点问题及解决方案,并将四叉树和GeoHash在实现空间索引的原理上做了对比。阅读全文
posted @ 2017-06-21 20:31 枕边书 阅读(2251) 评论(4) 编辑
摘要: 本文主要通过 C 服务器 CGI 协议的实现,讲解了 CGI 协议的一般内容,顺便还补充了一些PHP的SAPI和PHP-FPM的知识。阅读全文
posted @ 2017-06-07 22:52 枕边书 阅读(739) 评论(2) 编辑
摘要: 本文介绍了空间索引之 GeoHash 索引的原理,并参考 Redis GEO 系列函数的实现,使用sorted set 优化了 GeoHash 的效率和精度,并附上PHP实现。阅读全文
posted @ 2017-05-16 20:13 枕边书 阅读(1403) 评论(4) 编辑