边看MHA源码边学Perl语言之一开篇

自我简介

先简单介绍一下自己,到目前为此我已经做了7年左右的JAVA和3年左右php开发与管理,做java时主要开发物流行业的相关软件,对台湾快递,国际快递,国际空运,国际海运,仓储等很熟悉;目前用php语言为主,主要负责开发和维护公司一个10多年历史的,php开发的,跨境电商ERP系统,做得最多的工作就是分析别人的代码,给出更好的方案,不断地解决BUG,也不断地制造BUG,日复一日~~

MYSQL及”知数堂“之缘

前几年用JAVA + ORACLE开发的物流项目,很多核心的业务,都是用储存过程,触发器,函数来进行实现的,后来从乙方转到甲方,由于甲方的开发是用php + mysql,所以之后一年基本把原来的某套系统换了一个构架重新翻了一遍,那个时还是用的mysql 5.6 开发版,因为5.5当时不支持单表多个相同类型触发器,很不习惯,所以当时果断用mysql 5.6,不过当时对mysql了解并不多,所以高性能和高可用这些概念基本上是零。再后来,又从甲方到了甲方的甲方(甲方的投资方),开始接触电子商务平台的开发与维护,慢慢才开始关注到mysql性能(指非schema方面的性能)和高可用,在此期间,萌生了自己要转DBA的想法,不过自己的工作性质注定没有很多的业余时间来系统的学习,所以就加入”知数堂“的圈子,一方面可以汲取吴老师和叶老师的”宝贵经验“,另一方面也可以赚取大量”人脉关系“,用最短的时间来获得最好的收获。

博客的初衷

在加入”知数堂“后,确实学到了很多,也让我更明确了自己的方向:业务分析和开发是我的强项,所以我会朝着这个方向去准备下一份正式的DBA工作。目前网上已经有很多的mysql的环境搭建的教程,但源码分析或二次开发方面的内容还是很欠缺的,所有我的博客会以MYSQL周边开发项目为主,来分享自己的DBA之路的点点滴滴。

为什么会是Perl?

虽然Perl语言早有(write-only)的"美誉",很不推荐初学者用以“首门”语言来进行学习。但是MHA,pt-tools等非常的工具都是以Perl来写的,而对于我个人而言,MHA是我首个要“剖析”的项目,所以去了解这门语言还是非常有价值的,本系列文章的目的是可以让我们以后能很轻松的看懂别的Perl代码以及可以做一些简单的定制化开发,而不是要完全撑握Perl语言的方方面面。

# Linux 也有很多用 Perl 实现的命令:

find /usr/bin -type f | xargs file |grep Perl |wc -l
30

Python会是更好的选择

在本系列文章之后,我个人也会系统的学习和撑握Python这门语言,到时候也会先找一些有代表性开源项目来详细展开。

边看MHA源码边学Perl语言之一开篇的更多相关文章

  1. MHA源码分析——环境部署

    为了更好地了解MHA的原理,计划对MHA源码进行详细的阅读,本文主要为部署源码阅读环境. 一.概述 mha是由perl语言开发,这里想通过eclipse+perl组件来阅读其源码,所以我们环境需要安装 ...

  2. Redux 源码解读 —— 从源码开始学 Redux

    已经快一年没有碰过 React 全家桶了,最近换了个项目组要用到 React 技术栈,所以最近又复习了一下:捡起旧知识的同时又有了一些新的收获,在这里作文以记之. 在阅读文章之前,最好已经知道如何使用 ...

  3. 一点一点看JDK源码(一)Collection体系概览

    一点一点看JDK源码(一)Collection体系概览 liuyuhang原创,未经允许进制转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 Collection为集 ...

  4. 【实习记】2014-08-15文档太少看着源码用cgicc+stl库之模板谓词函数对象

        总结1: 今天找到了昨天scanf的问题答案,scanf与printf一样的神奇而复杂,稍不留神,就会被坑.scanf函数在读入非空白符分割的多个字符串的解决方法是这个:/* 以 | 分割 * ...

  5. 带着萌新看springboot源码8(spring ioc源码 完)

    上一节说到实例化了所有的单实例Bean,后面还有一步遍历 12.完成容器刷新(finishRefresh();) 那个和生命周期有关的后置处理器类型是LifecycleProcessor:监听器原理我 ...

  6. 一点一点看JDK源码(〇)

    一点一点看JDK源码(〇) liuyuhang原创,未经允许进制转载 写在前面: 几乎所有的大神都会强调看源码,也强调源码的重要性: 但是如何看源码,源码看什么?看了什么用?看了怎么用? 困扰很多人, ...

  7. 一点一点看JDK源码(二)java.util.List

    一点一点看JDK源码(二)java.util.List liuyuhang原创,未经允许进制转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 List译为表,一览表, ...

  8. 一点一点看JDK源码(三)java.util.ArrayList 前偏

    一点一点看JDK源码(三)java.util.ArrayList liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 ArrayLi ...

  9. 一点一点看JDK源码(四)java.util.ArrayList 中篇

    一点一点看JDK源码(四)java.util.ArrayList 中篇 liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 在前篇中 ...

随机推荐

  1. Infer - 文件说明

    Infer - 文件说明 Infer - bin目录下的文件 主要命令 文件名 意义 infer 运行infer,python脚本.可以看详细的说明文档了解使用细节 inferTest 执行测试,sh ...

  2. 说一说Jquery中的empty()与remove()的区别和用法

    今天在改一个新人写的代码,好吧,我承认改代码比自己写代码要来的痛苦. 主要是在测试一个table.table中有一列是删除操作.我的删除功能是 这样的,当点击删除的时候,判断这个table中的tr行是 ...

  3. LayUI分页,LayUI动态分页,LayUI laypage分页,LayUI laypage刷新当前页

    LayUI分页,LayUI动态分页,LayUI laypage分页,LayUI laypage刷新当前页 >>>>>>>>>>>> ...

  4. Redis架构设计--客户端请求RedisServer时,server端持久化的部分操作

  5. 用Python做大批量请求发送

    大批量请求发送需要考虑的几个因素: 1. 服务器承载能力(网络带宽/硬件配置); 2. 客户端IO情况, 客户端带宽, 硬件配置; 方案: 1. 方案都是相对的; 2. 因为这里我的情况是客户机只有一 ...

  6. 解决UIViewController中添加子控制器viewWillAppear不调用问题

    问题描述: 我在UICollectionViewController中添加子控制器数组, 并在cellForItem中把子控制器数组中对应的控制器对应的view添加到了UICollectionView ...

  7. [入门向选讲] 插头DP:从零概念到入门 (例题:HDU1693 COGS1283 BZOJ2310 BZOJ2331)

    转载请注明原文地址:http://www.cnblogs.com/LadyLex/p/7326874.html 最近搞了一下插头DP的基础知识……这真的是一种很锻炼人的题型…… 每一道题的状态都不一样 ...

  8. 设计模式-前摄器模式(Proactor)

    本周要进行boost asio库的学习,在学习之前发现最好需要先了解一下前摄器模式,这样对asio库的理解很有帮助,故写下此文 我之前写的随笔XShell的模拟实现中的链接方式可以说是同步的(服务器阻 ...

  9. MySQL多字节字符集造成主从数据不一致问题

    MySQL多字节字符集造成主从数据不一致问题 来自江羽   2013-04-27 16:03:56|  分类: 默认分类|举报|字号 订阅 转载: http://backend.blog.163.co ...

  10. ORACLE索引监控的简单使用

    --ORACLE索引监控的简单使用-------------------------2013/11/20 说明:     应用程序在开发时,可能会建立众多索引,但是这些索引的使用到底怎么样,是否有些索 ...