codesun 发布的文章

使用docker-compose部署站点

比较早接触docker,也翻译过一些相关的文章,但坦白说平日里用的真心不多。

自2014年博客启用至今,出于对成本和性能的平衡,我已经对网站做了近20次的迁移。期间主要面临的问题是服务商提供的Linux发行版比较有限,且并未在所有平台(例如Xen)成功实施在线的发行版替换工作,由于平台的制约,运行环境无可避免地会出现不一致的情况,细节部分自然也难以统一,为此出过不少差错。

一般情况下,我是比较懒的,除非真正想要折腾,否则能拖就拖。而这次做出了docker化的决定,出于以下2点原因:

  1. 想折腾了,期望能够在部署、备份等环节尽可能实现自动化,最好能够实现闭环,这一切自然需要实践
  2. 近期有在规划重写整个站点将其转成一个SPA,采用MicroService彻底分离前后端,并使其跑在自己的server和framework之上

阅读剩余部分

find用法汇总

去年猪厂内推机试中看到了关于find命令的考题,find命令还是很常用的,但无奈用法太丰富,一直记得不全,索性趁假日休息,汇总一下。

本文是4月的开胃小菜,也是第一次写命令的使用,有不恰之处,望指正。

阅读剩余部分

在线替换Linux系统

由于某些原因,我一直想在自己的一台VPS上使用尽可能新的kernel。

然而,绝大多数供应商提供的镜像均相对保守,像ArchLinux基本不会在他们的可选范围之内。

因此,问题就来了,既然官方不提供比较新的镜像,而你又迫切想要使用,应该怎么办?本文会提供一种方案来实现在线的Linux系统替换,目前只在DO上成功过,如果各位想要尝试,可以在提供网页console的平台上尝试。

注意:目前本人仅在Debian7和CentOS7上实验成功,基本可以确定本文对于CentOS6.5并不适用。以下操作存在未知的风险,请事先备份数据,谨慎处理。

阅读剩余部分

谈谈writev的问题

POSIX提供了一个比write函数更加高级的writev,在很多场景下,它相对于write有一定的优势。

APUE一书将writev的介绍放在了Advanced I/O部分,个人拙见,它和write应该是属于同层次的IO,谈不上Advanced。

最近,我在重写HTTP解析器的时候用到了writev,发现它并不如想象中的方便,甚至相当坑,有必要记录一下,或许对大家有所帮助。

阅读剩余部分

C++ 虚函数表及调用规范

很久没写博客了,最近实验室项目赶进度,有点忙不过来,先把之前的坑填上。

在支付工具想做社交,即时通讯工具想做app市场,英语字典想做新闻社交的今天,创造这些怪象的公司要求程序员懂得更多几乎是理所当然的,毕竟现在大家什么都想做。这不,正值招聘季,实验室的几位学长也是一直在讨论各种问题,发现对于C++而言,问的最多的还是虚函数表和STL。

STL的考点至少是实用的,哪怕要求你读过源码,也并不过分,毕竟知根知底才能更好地应用。但要求程序员掌握对象模型着实拎不清,因为这几乎用不到,远没有在设计模式上投入时间实在,或许它们最希望的是拿批发价招语言专家。。。

阅读剩余部分