边看MHA源码边学Perl语言之一开篇
边看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语言之一开篇的更多相关文章
- MHA源码分析——环境部署
为了更好地了解MHA的原理,计划对MHA源码进行详细的阅读,本文主要为部署源码阅读环境. 一.概述 mha是由perl语言开发,这里想通过eclipse+perl组件来阅读其源码,所以我们环境需要安装 ...
- Redux 源码解读 —— 从源码开始学 Redux
已经快一年没有碰过 React 全家桶了,最近换了个项目组要用到 React 技术栈,所以最近又复习了一下:捡起旧知识的同时又有了一些新的收获,在这里作文以记之. 在阅读文章之前,最好已经知道如何使用 ...
- 一点一点看JDK源码(一)Collection体系概览
一点一点看JDK源码(一)Collection体系概览 liuyuhang原创,未经允许进制转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 Collection为集 ...
- 【实习记】2014-08-15文档太少看着源码用cgicc+stl库之模板谓词函数对象
总结1: 今天找到了昨天scanf的问题答案,scanf与printf一样的神奇而复杂,稍不留神,就会被坑.scanf函数在读入非空白符分割的多个字符串的解决方法是这个:/* 以 | 分割 * ...
- 带着萌新看springboot源码8(spring ioc源码 完)
上一节说到实例化了所有的单实例Bean,后面还有一步遍历 12.完成容器刷新(finishRefresh();) 那个和生命周期有关的后置处理器类型是LifecycleProcessor:监听器原理我 ...
- 一点一点看JDK源码(〇)
一点一点看JDK源码(〇) liuyuhang原创,未经允许进制转载 写在前面: 几乎所有的大神都会强调看源码,也强调源码的重要性: 但是如何看源码,源码看什么?看了什么用?看了怎么用? 困扰很多人, ...
- 一点一点看JDK源码(二)java.util.List
一点一点看JDK源码(二)java.util.List liuyuhang原创,未经允许进制转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 List译为表,一览表, ...
- 一点一点看JDK源码(三)java.util.ArrayList 前偏
一点一点看JDK源码(三)java.util.ArrayList liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 ArrayLi ...
- 一点一点看JDK源码(四)java.util.ArrayList 中篇
一点一点看JDK源码(四)java.util.ArrayList 中篇 liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 在前篇中 ...
随机推荐
- [学习笔记] Splay Tree 从入门到放弃
前几天由于出行计划没有更博QwQ (其实是因为调试死活调不出来了TAT我好菜啊) 伸展树 伸展树(英语:Splay Tree)是一种二叉查找树,它能在O(log n)内完成插入.查找和删除操作.它是由 ...
- gdb命令中查看地址之x命令
可以使用examine命令(简写是x)来查看内存地址中的值.x命令的语法如下所示: x/<n/f/u> <addr> n.f.u是可选的参数. n是一个正整数,表示需要显示的内 ...
- 27. leetcode 401. Binary Watch
A binary watch has 4 LEDs on the top which represent the hours (0-11), and the 6 LEDs on the bottom ...
- 找不到包含 OwinStartupAttribute 的程序集。 - 找不到包含 Startup 或 [AssemblyName].Startup 类的程序集。
打开web.config添加 <add key="owin:appStartup" value="false" /> <add key=&qu ...
- hdu--1018--Big Number(斯特林公式)
Big Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- Python实现使用tkinter弹出输入框输入数字, 具有确定输入和清除功能
Python3.6中用tkinter, 弹出可以输入数字的输入框. # Copyright (c) 2017-7-21 ZhengPeng All rights reserved. def pop_u ...
- python之----------字符编码具体原理
1.内存和硬盘都是用来存储的. CPU:速度快 硬盘:永久保存 2.文本编辑器存取文件的原理(nodepad++,pycharm,word) 打开编辑器就可以启动一个进程,是在内存中的,所以在编辑器编 ...
- window响应拖拽文件操作
window响应拖拽文件操作 1.首先调用DragAcceptFiles,让控件或者窗体支持文件拖动操作函数功能:用来为拖放文件作初始化.函数原型: void DragAcceptFiles( HWN ...
- 总结一些php的面试题
1.PHP语言的一大优势是跨平台,什么是跨平台?一.PHP基础: PHP的运行环境最优搭配为Apache+MySQL+PHP,此运行环境可以在不同操作系统(例如windows.Linux等)上配置,不 ...
- .net core 2.0学习笔记(四):迁移.net framework 工程到.net core
在迁移.net core的过程中,第一步就是要把.net framework 工程的目标框架改为.net core2.0,但是官网却没有提供转换工具,需要我们自己动手完成了..net framewor ...