TiKV Rust Client 迁移记 - Futures 0.1 至 0.3

2019-09-27
阅读 4 分钟
1.4k
作者介绍:Nick Cameron,PingCAP 研发工程师,Rust core team 成员,专注于分布式系统、数据库领域和 Rust 语言的进展。

我们是如何设计 Rust & 分布式存储教程的? | Talent Plan 背后的故事

2019-07-17
阅读 4 分钟
4.5k
许多人眼中的 PingCAP Talent Plan 可能就是 github.com/pingcap/talent-plan 这个项目,但从内容角度来说并不完整,这个 Repo 只是线上课程的内容,我们还有与其配套的线下课程。本文将从课程设计的角度和大家聊一聊 PingCAP Talent Plan(TiKV 方向)课程,包括课程设计的逻辑、课程设计中遇到的困难,以及大家在学习...

暑期特别企划 | 快来接收 PingCAP Talent Plan 的小惊喜!

2019-07-03
阅读 4 分钟
1.9k
PingCAP Talent Plan 学习通道自开通以来,收获了海内外小伙伴的密切关注,有 100 余名小伙伴参与到线上课程的学习中,第二期线下课程也于 5 月中旬圆满落幕。结合大家的意见,我们对 Talent Plan 的课程做了一些优化,并推出 Talent Plan 暑期特别企划,线上课程和线下课程都增加了一些新的元素~大家快来接收这一波“小...

TiKV 源码解析系列文章(八)grpc-rs 的封装与实现

2019-06-13
阅读 7 分钟
1.2k
上一篇《gRPC Server 的初始化和启动流程》为大家介绍了 gRPC Server 的初始化和启动流程,本篇将带大家深入到 grpc-rs 这个库里,查看 RPC 请求是如何被封装和派发的,以及它是怎么和 Rust Future 进行结合的。

RustCon Asia 实录 | Rust 在国内某视频网站的应用

2019-06-04
阅读 12 分钟
2.5k
作者介绍:hawkingrei(王维真),中间件高级开发工程师,开源爱好者,TiDB & TiKV Contributor。WaySLOG(雪松),Rust 铁粉一枚,专注中间件,bug creator。

TiKV 源码解析系列文章(七)gRPC Server 的初始化和启动流程

2019-05-16
阅读 4 分钟
1.3k
本篇 TiKV 源码解析将为大家介绍 TiKV 的另一周边组件—— grpc-rs。grpc-rs 是 PingCAP 实现的一个 gRPC 的 Rust 绑定,其 Server/Client 端的代码框架都基于 Future,事件驱动的 EventLoop 被隐藏在了库的内部,所以非常易于使用。本文将以一个简单的 gRPC 服务作为例子,展示 grpc-rs 会生成的服务端代码框架和需要服务...

RustCon Asia 实录 | Distributed Actor System in Rust

2019-05-14
阅读 9 分钟
2k
大家好,我今天分享的是我们团队在做的 Distributed Actor System。首先我想说一下这个 Talk 「不是」关于哪些内容的,因为很多人看到这个标题的时候可能会有一些误解。

首届 RustCon Asia 圆满落幕,Let's Rust the World!

2019-04-26
阅读 2 分钟
1.8k
4 月 23 日,为期 4 天的 RustCon Asia 在北京圆满落幕,300 余位来自中国、美国、加拿大、德国、俄罗斯、印度、澳大利亚等国家和地区的 Rust 爱好者参加了本次大会。作为 Rust 亚洲社区首次「大型网友面基 Party」,本届大会召集了 20 余位海内外顶尖 Rust 开发者讲师,为大家带来一天半节奏紧凑的分享和两天 Workshop ...

TiKV 源码解析(六)raft-rs 日志复制过程分析

2019-04-25
阅读 6 分钟
1.9k
RawNode::ready_since 从 Raft 节点中获取最近的更新,包括新近追加的日志、新近确认的日志,以及需要给其他节点发送的消息等;

终极讲师介绍:集齐 27 位讲师召唤亚洲首届 Rust 开发者大会!

2019-04-19
阅读 6 分钟
3k
RustCon Asia 进入倒计时!就在这个周六,将有 300+ 位开发者齐聚北京,参加亚洲最大的 Rust 语言开发者大会 RustCon Asia。此次大会几乎将聚集全部 Rust 中国社区的资深开发者和已在生产环境应用的中国本土的 Rust 项目,以及来自亚洲之外的欧洲、澳洲、北美的顶尖开发者们。大家都约好面基了吗?

在 RustCon Asia 开启之前,聊聊 Rust 中国社区那些事

2019-04-15
阅读 3 分钟
2.9k
亚洲首届 RustCon Asia 将在 4 月 20 日于北京开启(也就是下周六啦~),大会为期 4 天,包括 20 日全天和 21 日上午的主题演讲以及 22-23 日的多个主题 workshop 环节。随着大会渐渐临近,很多小伙伴已经兴奋的搓搓手了,不如今天来聊聊 Rust 中国社区的成长史,再打一波鸡血?

与顶尖 Rust 开发者面基指南(一) | RustCon Asia

2019-04-04
阅读 4 分钟
3.1k
距离 4 月 20 日 RustCon Asia 大会  开启只剩下约两周的时间了,你准备好了吗?此次 RustCon Asia 是首次在亚洲举办的 Rust 语言开发者大会,也是目前亚洲地区规格最高,参与人数规模最大的 Rust 语言大会。不仅有来自亚洲社区的大神,还有从欧洲、澳洲、北美远道而来的顶尖开发者。现场特地配备了中英双语同声传译,以...

TiKV 源码解析(五)fail-rs 介绍

2019-04-01
阅读 5 分钟
2.3k
fail-rs 的设计启发于 FreeBSD 的 failpoints,由 Rust 实现。通过代码或者环境变量,其允许程序在特定的地方动态地注入错误或者其他行为。在 TiKV 中通常在测试中使用 fail point 来构建异常的情况,是一个非常方便的测试工具。

RustCon Asia 讲师和议程公布!

2019-03-22
阅读 3 分钟
1.8k
RustCon Asia 上线 CFP(Call For Proposals)接受议题提交的两周时间里,我们共计收到了中英文议题 50 份!内容非常丰富并且比我们预期的更加多元,在此特别感谢关注此次大会并提交议题的潜在讲师们!

TiKV 源码解析系列文章(四)Prometheus(下)

2019-03-14
阅读 9 分钟
1.4k
本文为 TiKV 源码解析系列的第四篇,接上篇继续为大家介绍 [rust-prometheus]。上篇 主要介绍了基础知识以及最基本的几个指标的内部工作机制,本篇会进一步介绍更多高级功能的实现原理。

亚洲第一届 Rust 大会将于 4 月 20 日在 [北京] 开启

2019-02-22
阅读 2 分钟
2k
RustCon Asia 来了!由秘猿科技与 PingCAP 联合主办,亚洲第一届 Rust 大会将于 4 月 20 日在中国北京开启。大会为期 4 天,包括 20 日全天和 21 日上午的主题演讲以及 22-23 日的多个主题 workshop 环节。其中主题演讲讲师来自于国内外资深 Rust 开发者和社区活跃贡献者;workshop 主题将覆盖到 Rust 开发入门和成熟技...

TiKV 源码解析系列文章(二)raft-rs proposal 示例情景分析

2019-02-15
阅读 4 分钟
1.9k
本文为 TiKV 源码解析系列的第二篇,按照计划首先将为大家介绍 TiKV 依赖的周边库 raft-rs 。raft-rs 是 Raft 算法的 Rust 语言实现。Raft 是分布式领域中应用非常广泛的一种共识算法,相比于此类算法的鼻祖 Paxos,具有更简单、更容易理解和实现的特点。

TiKV 源码解析系列文章(一)序

2019-01-28
阅读 3 分钟
3k
TiKV 是一个支持事务的分布式 Key-Value 数据库,有很多社区开发者基于 TiKV 来开发自己的应用,譬如 titan、tidis。尤其是在 TiKV 成为 CNCF 的 Sandbox 项目之后,吸引了越来越多开发者的目光,很多同学都想参与到 TiKV 的研发中来。这时候,就会遇到两个比较大的拦路虎:

演讲实录|唐刘:Rust in TiKV

2017-05-31
阅读 10 分钟
2.8k
Before we begin, let me introduce myself. My name is TangLiu, the Chief Architect of PingCAP. Before I joined PingCAP, I had worked at Kingsoft and Tencent. I love open source and have developed some projects like LedisDB, go-mysql, etc…

十分钟成为 TiDB Contributor | 添加內建函数

2017-03-15
阅读 4 分钟
3.8k
最近我们对 TiDB 代码做了些改进,大幅度简化了添加內建函数的流程,这篇教程为大家分享如何为 TiDB 新增 builtin 函数。首先介绍一些必需的背景知识,然后介绍增加 builtin 函数的流程,最后会以一个函数作为示例。

TiKV 源码解析系列 - Raft 的优化

2017-03-13
阅读 3 分钟
4.5k
摘要: 本系列文章主要面向 TiKV 社区开发者,重点介绍 TiKV 的系统架构,源码结构,流程解析。目的是使得开发者阅读之后,能对 TiKV 项目有一个初步了解,更好的参与进入 TiKV 的开发中。本文是本系列文章的第六章节。重点介绍 TiKV 中 Raft 的优化。(作者:唐刘)

TiDB 的正确使用姿势

2017-03-10
阅读 4 分钟
41k
最近这几个月,特别是 TiDB RC1 发布后,越来越多的用户已经开始测试起来,也有很多朋友已经在生产环境中使用,我们这边也陆续的收到了很多用户的测试和使用反馈。非常感谢各位小伙伴和早期用户的厚爱,而且看了这么多场景后,也总结出了一些 TiDB 的使用实践 (其实 Spanner 的最佳实践大部分在 TiDB 中也是适用的,MySQ...

TiKV 源码解析系列 - Lease Read

2017-02-22
阅读 4 分钟
2.3k
本系列文章主要面向 TiKV 社区开发者,重点介绍 TiKV 的系统架构,源码结构,流程解析。目的是使得开发者阅读之后,能对 TiKV 项目有一个初步了解,更好的参与进入 TiKV 的开发中。本文是本系列文章的第五章节。作者:唐刘

TiDB 架构的演进和开发哲学

2017-02-08
阅读 6 分钟
9.7k
本文来自 CSDN《程序员》2017 年 2 月的封面报道。对于一个从零开始的数据库来说:选择什么语言,整体架构怎么做,要不要开源,如何去测试…太多的问题需要去考量。

TiDB 源码初探

2017-01-11
阅读 7 分钟
7.6k
本文档面向 TiDB 社区开发者,主要介绍 TiDB 的系统架构、代码结构以及执行流程。 目的是使得开发者阅读文档后,可以对 TiDB 项目有一个整体的了解,更好的参与进来。首先会介绍一下大体的结构以及 Golang 包的结构,然后会介绍内部的执行流程,最后会对优化器、执行器这两个最重要的组件做一些说明。

TiDB 优化器实现的基础:统计信息的收集

2017-01-10
阅读 4 分钟
4.5k
收集统计信息的意义一个 SQL 数据库里,优化器实现的好坏对性能的影响是决定性的。一个未经优化的执行计划和经过充分优化后的执行计划,执行时间的差别往往是成千上万倍。而对一个 SQL 优化器来说,统计信息是必不可少的条件,只有依赖统计信息提供的数据,优化器才可以正确估算不同的执行计划的执行代价,以选择最优的...

TiKV 源码解析系列 ——Placement Driver

2017-01-10
阅读 7 分钟
8.3k
本系列文章主要面向 TiKV 社区开发者,重点介绍 TiKV 的系统架构,源码结构,流程解析。目的是使得开发者阅读之后,能对 TiKV 项目有一个初步了解,更好的参与进入 TiKV 的开发中。

TiKV 源码解析系列——multi-raft 设计与实现

2017-01-04
阅读 9 分钟
14.2k
本系列文章主要面向 TiKV 社区开发者,重点介绍 TiKV 的系统架构,源码结构,流程解析。目的是使得开发者阅读之后,能对 TiKV 项目有一个初步了解,更好的参与进入 TiKV 的开发中。需要注意,TiKV 使用 Rust 语言编写,用户需要对 Rust 语言有一个大概的了解。另外,本系列文章并不会涉及到 TiKV 中心控制服务 Placement...

TiKV 源码解析系列——如何使用 Raft

2017-01-04
阅读 5 分钟
6.1k
本系列文章主要面向 TiKV 社区开发者,重点介绍 TiKV 的系统架构,源码结构,流程解析。目的是使得开发者阅读之后,能对 TiKV 项目有一个初步了解,更好的参与进入 TiKV 的开发中。需要注意,TiKV 使用 Rust 语言编写,用户需要对 Rust 语言有一个大概的了解。另外,本系列文章并不会涉及到 TiKV 中心控制服务 Placement...

分布式系统测试那些事儿——信心的毁灭与重建

2017-01-03
阅读 6 分钟
5k
本话题系列文章整理自 PingCAP NewSQL Meetup 第 26 期刘奇分享的《深度探索分布式系统测试》议题现场实录。文章较长,为方便大家阅读,会分为上中下三篇,本文为下篇。