网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Rustnom实现的mysqlbinlog解析工具怎么用

Rust nom实现的MySQL binlog解析工具怎么用,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

成都网站建设哪家好,找成都创新互联!专注于网页设计、重庆网站建设、微信开发、小程序开发、集团企业网站设计等服务项目。核心团队均拥有互联网行业多年经验,服务众多知名企业客户;涵盖的客户类型包括:成都玻璃贴膜等众多领域,积累了大量丰富的经验,同时也获得了客户的一致称赞!

说实话, 用 nom 解析二进制文件比解析文本还要简单, 因为套路和工具都非常清楚,让项目进展缓慢的原因是 MySQL binlog 的文档有点坑, 某些说明和 mysqlbinglog 工具解析出来的不一致,我只能尝试找别的已实现的 MySQL binlog 项目参考, 具体到某个字段时这些项目都不是很完整。迫不得已,只能去查看 mysql-server 的源码, 凭借我 hello world 级别的 c++ 连蒙带猜地尝试把所有字段都解析出来。但某些字段过于复杂或不是很重要, 我就暂时把它们放在一边。

这里不得不吐槽下,为了实现这个项目我看过 c++,c,Java,Go,Python 这五个语言的类似实现, c++一堆符号,但还是能看懂意思;c因为表现力不够,代码有些繁琐;Java 是真啰嗦, 一个方法里只写一行,那一行还是掉别的函数~;Go 看都不想看;Python 表现能力不错,但可能是作者的问题,代码有些乱。
当然,我的代码也没好到哪里去:(,为了快就用了一个大enum表示所有事件,可能很快就要重构一次,但这是人的问题,论表现能力,Rust是静态语言里独一档的。
因为时间有限,所以测试用例还不是很完善,如果测试时遇到问题可以给我提Issue,最好能附上当时的binlog文件,帮助我丰富测试用例。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。


分享标题:Rustnom实现的mysqlbinlog解析工具怎么用
文章URL:http://bjjierui.cn/article/pojijh.html

其他资讯