mixer
文章平均质量分 80
siddontang
hello go, let's go!
展开
-
mixer: mysql协议分析
综述要实现一个mysql proxy,首先需要做的就是理解并实现mysql通讯协议。这样才能通过proxy架起client到server之间的桥梁。mixer的mysql协议实现主要参考mysql官方的internal manual,并用Wireshark同时进行验证。在实现的过程中,当然踩了很多坑,这里记录一下,算是对协议分析的一个总结。需要注意的是,mixer并没有支持原创 2014-03-13 11:17:52 · 4860 阅读 · 0 评论 -
mixer: 一个用go实现的mysql proxy
介绍mixer是一个用go实现的mysql proxy,支持基本的mysql代理功能。mysql的中间件很多,对于市面上面现有的功能强大的proxy,我主要考察了如下几个:mysql-proxy,mysql官方的代理,使用起来并不友好,需要进行lua定制,而且本人对其稳定性和性能存疑。Cobar,阿里的东西,品质没的说,但对于我们项目,有点杀鸡用牛刀的感觉,另外我们都不会j原创 2014-03-10 09:40:20 · 5612 阅读 · 0 评论 -
mixer: sql词法分析器设计
介绍mixer希望在proxy这层就提供自定义路由,sql黑名单,防止sql注入攻击等功能,而这些的基石就在于将用户发上来的sql语句进行解析。也就是我最头大的词法分析和语法分析。到现在为止,我只是实现了一个比较简单的词法分析器,用以将sql语句分解成多个token。而对于从token在进行语法分析,构建sql的AST,我现在还真没啥经验(编译原理太差了),急需牛人帮忙。所原创 2014-03-23 16:38:42 · 3729 阅读 · 0 评论