读《MySQL 性能调优与架构设计》笔记
2014-06-09 更新看完上边后又在看《高性能 MySQL》第三版 2013 年初版的,美国人写的,这本是MySQL的经典之作,比上边那本更好吧。就是内容详细,啥都有。详细的基准测试方法、特性细节(原理)、架构考虑,这几年 MySQL 升级的特性(如分区等),讲述的 MySQ
2014-06-09 更新看完上边后又在看《高性能 MySQL》第三版 2013 年初版的,美国人写的,这本是MySQL的经典之作,比上边那本更好吧。就是内容详细,啥都有。详细的基准测试方法、特性细节(原理)、架构考虑,这几年 MySQL 升级的特性(如分区等),讲述的 MySQ
背景项目里编译打包客户端程序时经常出现问题,有环境不一致问题或者代码冲突问题。 之前了解过 Docker 可以应用环境作为一个一体化的服务来使用,所以想看看 Docker 是否能给我们客户端同学提供些方便。 主要关注点 Docker 能运行在哪些操作系统,Mac、Linux、
概念从酷客看的《需求变化与 IoC》,里边讲的东西挺形象的。 用户需求是一直变的,如果一直根据用户来做,程序员会累死。 控制反转的比较形象的例子:PC 机的架构都是设计好的,用户想要什么样的,再去组装配置。而不是用户说想要什么功能,每个用户去设计一套 PC 架构,这样厂商就会累
目标参考云风 skynet,实现 Go 版本的开源服务器引擎。 细节服务按服务来拆模块的好处不说了。只说 Go 来的实现方式。Go 里有 channel 和 goroutine。消息队列和轻量级线程都天然解决了。 服务间的通信同进程内的服务之间通信,直接往对方 channel
session 中间件里的 sessionID(以下简称sid)的算法为 24byte 的全随机。sid 重复的可能性比较小,但理论上还是有重复的可能。 session 中间件的 session 维护流程为: 新 session 的创建 将 option 里配的 sess
分析在看 Express 的插件 connect 源码,cookieSession(代码片段后边附上)里有个变量作用域问题很费解。 后边代码中变量 originalHash 的使用问题,一开始我还以为是个 Bug,以为根据它定义的位置,在它的那个块结束时就没作用了。 后来查了下
当向 Express 服务器 post 二进制流时,服务器需要自己加个扩展,自己缓存下 raw body,具体做法见这里。这里只是用 UTF-8 的 string 来拼接的 raw body 容易出现编码不一致的情况。咱们可以用 Buffer 来做。具体做法也可以参考下边的 Ag
怎么纠结上的近期在准备借鉴云风的 skynet 来完善我们的架构。这个 Cookie 研究是个插曲。 我这有个 HTTP Server 只做与数据库的代理接口用,同事那边有个 HTTP 的 Web Server,他的 Server 需要以 HTTP Client 身份来访问我的
开始应用《暗时间》里提到的理论,将 skynet 用自己的话来总结并写下来,这样能充分思考并转述为自己的记忆线索。 skynet 设计的理解单个 skynet 节点(1)愿景充分利用多核。最初想法是多进程。像咱们 Node.js 里多核就只能是多进程了,因为每个 Node.js
这是很基础的概念,之前没怎么弄过 HTTP。对于自己,算是做个笔记吧。 Socket 安全验证Socket 链接是握手之后就一直连着,所以这条链接在第一包验证之后,之后这条链接不需要再验证。“第一个包”可能描述不准确,因为有时候第一包不一定就验证,可能是做路由之类。这里就不管这