logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

linux mount命令

概要该命令用来挂在(虚拟)文件系统命令mount -t type [-o options] device dir参数解释device指定要挂载的设备,比如磁盘、光驱等dir指定把文件系统挂载到哪个目录type指定挂载的文件系统类型,一般不用指定,mount 命令能够自行判断options

#linux#bash#运维
微服务系统错误码设计

目标那么错误码能为我们带来什么?首先,通过错误码我们能识别出系统到底出了什么问题?其次,通过错误码我们应当能识别出哪个系统出了问题?再次,通过错误码需要知道对应的定位问题和解决问题的方法。最后,通过错误码我们可以决策出该给客户显示出了什么问题?(前端)使用方PaaS集成商,负责运维我们的服务;SaaS应用层服务;地平线部署人员、客服人员;错误码分类...

Zookeeper对于事务性的支持

Zookeeper滴功能还是蛮强大的。它对于事务性的支持主要依赖于四个函数,zoo_create_op_init,zoo_delete_op_init,zoo_set_op_init以及zoo_check_op_init。每一个函数都会在客户端初始化一个operation,客户端程序有义务保留这些operations。当准备好一个事务中的所有操作后,可以使用zoo_multi来提

#zookeeper
kafka内部设计解读

概要本文主要介绍一些kafka内部原理概念,包括controller,Coordinator,patition,storage,produce和consume。PatitionsPatition是kafka实际的存储单元,topic只是Patition的一个逻辑集合。Patition分为leader和followers,它们是由controller进行的分配。Patition又分为isr(in-s

#kafka#分布式
kafka-go源码解析二(Consumer Group)

概要Consumer group主要处理协调消费的问题。为了应对变化,消费时按照时间段被切分成不同的generation,在同一时刻所有的group中的clients对应同一个generation,同一时刻只会有一个generation,新的generation需要所有旧generation产生的goroutine结束后才会创建(后面代码分析会做解释)。使用generation的另一个好处是防止旧

#kafka
kafka-go源码解析一(Dialer)

概要git 地址 --GitHub - segmentio/kafka-go: Kafka library in GoDialer类型的主要作用是创建与kafka集群的连接。通过分析它的行为,可知它是建立在底层socket之上的,同时它也是作为上层api reader的一个基础组件。物理连接上,它考虑了超时控制,安全连接tls,认证sasl,域名转换,重试机制等。它的另一个重要作用是建立与指定to

#kafka#分布式
kafka-go源码解析四(Writer)

概要kafka-go区分同步写与异步写。同步写能严格确保写入的顺序,因为在写成功之前它会block住应用程序,同时返回错误信息。有三种控制写入完成的时机,1是消息发送完成即返回,2是leader收到后即返回,3是isr收到后即返回,越往后数据的可靠性更高,它们均是通过配置参数来控制。异步写不用等返回结果,而是传入一个回调函数来接收处理返回结果(同步写也支持返回前回调)。异步写的性能更优异,而且在很

#kafka#分布式
gochat源码解析

目录概要源码分析api模块Router.go文件Hander文件夹Rpc.go文件logic模块Logic.go文件publish.go文件Rpc.go文件概要源码地址:https://github.com/LockGit/gochatgochat是一个golang编写的开源im系统,虽然功能并不复制,但实现了最核心的点对点的消息发送(用户对用户)和点对面的消息发送(用户在房间里发送消息)goch

mysql中table schema的基本操作

我们通常对数据库进行的增删插检操作,是针对数据库中的文件。mysql数据库中还有一些表(是view,只能做select操作)记录了现有表的meta data,比如某个column的名字,它的定义是什么等等。1. 列出test数据库中所有的表名,类型(普通表还是view)和使用的引擎  select table_name, table_type, engine  FROM informa

到底了