首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

TiDB 源码阅读系列文章(二)初识 TiDB 源码

本文为 TiDB 源码阅读系列文章的第二篇,第一篇文章介绍了 TiDB 整体的架构,知道 TiDB 有哪些模块,分别是做什么的,从哪里入手比较好,哪些可以忽略,哪些需要仔细阅读。...这篇文章是一篇入门文档,难度系数比较低,其中部分内容可能大家在其他渠道已经看过,不过为了内容完整性,我们还是会放在这里。...本篇文章会先介绍一些 TiDB 有哪些模块及其功能简要介绍,然后以这三点为线索,将这些模块串联起来。 代码简介 TiDB 源码完全托管在 Github 上,从项目主页可以看到所有信息。...各种数据类型的编解码 x-server X-Protocol 实现 从哪里入手 粗看一下 TiDB 有 80 个包,让人觉得无从下手,不过并不是所有的包都很重要,另外一些功能只会涉及到少量包,从哪里入手去看源码取决于看源码的目的...重要模块 在全部 80 个模块中,下面几个模块是最重要的,希望大家能仔细阅读,针对这些模块,我们也会用专门的文章来讲解,等所有的文章都 Ready 后,我将下面的表格中的 TODO 换成对应的文章连链接

2K110

Linux下源码安装PHP 卸载PHP

卸载原有PHP 查看PHP版本 php -v 下面命令删除php不干净但先删一遍 yum remove php 查看剩下的php软件包,其中会有依赖所以得有先后顺序删除 rpm -qa |...源码安装PHP: 首先进入php.net找到要下载的版本页面,复制到下载链接 wget https://www.php.net/distributions/php-7.2.31.tar.bz2 在此之前可以创建好自己的目录...,有条理一些,我创建到/home/work/study/softpackage,在softpackage目录下下载php源码,然后解压出现如下页面 ?...让php -v可以使用: 设置可以直接在任何目录使用php test.php执行命令,进行如下操作 进入到自己放置的php目录下,执行以下命令,然后将红圈的东西写上,就是你的PHP所在的目录 vim...将php.ini文件放在php中: 注意要将php.ini放到你的php目录下的lib目录下面:如此这样php源码安装就大功告成咯》》》》》 ?

6.6K20

TiDB 源码阅读系列文章(十七)DDL 源码解析

本文首先会介绍 TiDB DDL 组件的总体设计,介绍如何在分布式场景下支持无锁 shema 变更,描述这套算法的大致流程,然后详细介绍一些常见的 DDL 语句的源码实现,包括 create table...这里只是简单概述了 TiDB 的 DDL 设计,下两篇文章详细介绍了 TiDB DDL 的设计实现以及优化,推荐阅读: TiDB 的异步 schema 变更实现   TiDB 的异步 schema 变更优化...下图描述了一个 DDL 请求在 TiDB 中的简单处理流程: [TiDB 中 DDL SQL 的处理流程] TiDB 的 DDL 组件相关代码存放在源码目录的 ddl 目录下。...本文接下来按照 TiDB 源码的 origin/source-code 分支讲解,最新的 master 分支和 source-code 分支代码会稍有一些差异。...剩余其它类型的 DDL 源码实现读者可以自行阅读,流程和上述几种 DDL 类似。 作者:陈霜

1.4K40

MyBatis 源码分析系列文章合集

1.简介 我从七月份开始阅读MyBatis源码,并在随后的40天内陆续更新了7篇文章。起初,我只是打算通过博客的形式进行分享。但在写作的过程中,发现要分析的代码太多,以至于文章篇幅特别大。...在这7篇文章中,有4篇文章字数超过了1万,最长的一篇文章约有2.7万字(含代码)。考虑到超长文章对读者不太友好,以及拆分文章工作量也不小等问题。遂决定将博文整理成电子书,方便大家阅读。...经过两周紧张的排版,《一本小小的MyBatis源码分析书》诞生了。本书共7章,约300页。本书以电子书的形式发布,大家可自由的下载。...                  7.1.1 植入插件逻辑                   7.1.2 执行插件逻辑          7.2 实现一个分页插件          7.3 本章小结 附录 MyBatis源码分析系列文章列表...我在写MyBatis系列文章中,买了一本书作为参考,这本书是《MyBatis技术内幕》。这本书在我阅读源码的过程中,给予了不少的帮助,这里感谢该书的作者。同时,也向大家推荐这本书。

3.1K81

Laravel源码学习文章汇总

过去一年时间写了20多篇文章来探讨了我认为的Larave框架最核心部分的设计思路、代码实现。...通过更新文章自己在软件设计、文字表达方面都有所提高,在刚开始决定写Laravel源码分析地文章的时候我地期望是自己和读者通过学习Laravel核心的代码能在软件设计上带来提高,这些提高主要是指两方面:...这方面对你的收益应该是跳出Laravel框架和PHP语言层面的,当你需要切换到其他框架和语言时这些收益仍会反馈给你。...Laravel整个框架设计到的内容有很多,其他的组件我也就不再一一去写文章梳理了, 相信你在认真看完这个系列的文章后,假如你在使用其他组件过程中遇到了诡异的问题,或者好奇框架是怎么帮你实现功能的?...你完全有能力去梳理其他组件的源码实现来解决你的疑惑。 为了大家阅读方便,我把这些源码学习的文章汇总到这里,点击公众号下面的源码学习菜单项即可访问到。

94310

MyBatis 源码分析系列文章导读

1.本文速览 本篇文章是我为接下来的 MyBatis 源码分析系列文章写的一个导读文章。...4.1 单独使用 本节演示的场景是个人网站的作者和文章之间的关联场景。在一个网站中,一篇文章对应一名作者,一个作者对应多篇文章。...,分别用于存储文章和作者信息。...大家如果注意看前面贴的ArticleTypeEnum的源码,会发现每个枚举值有自己的编号定义。比如JAVA的编号为1,DUBBO的编号为2,SPRING的编号为8。...本篇文章的篇幅比较大,读起来应该比较辛苦。不过好在内容不难,理解起来应该没什么问题。本篇文章的篇幅超出了我之前的预期,文章太大,出错的概率也会随之上升。所以如果文章有错误的地方,希望大家能够指明。

89410

Eureka源码解析系列文章汇总

上方这个图是Eureka官方提供的架构图,整张图基本上把整个Eureka的核心功能给列出来了,当你要阅读Eureka的源码时可以参考着这个图和下方这些文章 EurekaServer EurekaServer...就是我们常说的服务端 Eureka服务端的启动可参考这篇文章EurekaServer自动装配及启动流程解析 它维护了一张服务注册表,在这个服务注册表中包含了所有的客户端信息 当服务端启动时会做这么几个事情...: 向集群中的其他服务端发起数据同步请求:Eureka应用注册与集群数据同步源码解析 开启清理过期租约的线程:Eureka客户端续约及服务端过期租约清理源码解析 EurekaClient EurekaClient...就是我们常说的客户端 Eureka客户端的启动可参考这篇文章:EurekaClient自动装配及启动流程解析 客户端是与应用程序绑定到一起的,某种意识上来说它是应用实例在注册中心的代言人 当客户端启动时会做这么几个事情...: 向服务端发起注册请求:Eureka应用注册与集群数据同步源码解析 开启续租的线程:Eureka客户端续约及服务端过期租约清理源码解析 先全量获取一次可用服务列表且开启一个定时增量获取的线程:Eureka

36420
领券