- 博客(171)
- 资源 (1)
- 收藏
- 关注

原创 基于可靠消息方案的分布式事务:Lottor介绍
前言:笔者最近实现了基于可靠消息方案的分布式事务:Lottor。本文将会介绍Lottor的概况,在后续系列文章介绍具体的实现,欢迎关注。分布式事务 分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。首先,解释下事务的概念:一组操作要么都完成之后提交,要么全部回滚。分布式事务特指在分布式环境下,一次事务设计多个服务进程,说...
2018-05-06 15:29:49
806
原创 Go 语言入门系列:数组的使用
前文回顾前面的文章主要介绍了 Go 基于语法中的分支和循环控制结构。其中涉及到的 If 、Switch 和 for 等关键字,是我们日常编码所常用的。当我们在程序中操作大量同类型变量时,为...
2021-07-01 17:13:00
518
原创 Go 语言入门系列:Go 语言中的常量别名与控制结构
前文回顾前面一篇文章主要介绍了 Go 语言中的指针基本概念与相关用法。Go 语言限制了指针类型的偏移和运算能力,使得指针类型具备了指针高效访问的特性,但又不会发生指针偏移,避免了非法修改敏...
2021-06-25 19:24:12
535
转载 基础回顾:10W+ 字 C 语言入门教程(上)
目录计算机常识什么是计算机程序?什么是计算机语言 ?常见的计算机语言类型有哪些?什么是C语言?C语言历史C语言标准C语言现状为什么要学习C语言?如何学好C语言工欲善其事必先利其器编写C语言...
2021-06-24 09:00:00
1943
转载 6种分布式事务最终一致性解决方案,一次性说清了!
分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,尤其在微服务架构中,几乎可以说是无法避免,因此也常常被认为是微服务落地的最大阻碍。随着系统的服务拓扑...
2021-06-24 09:00:00
730
原创 Go 语言入门系列:指针的基本应用
前文概览前面文章介绍了 Go 语言原生数据类型。Golang 中具备丰富的数据类型,基本类型有整型、浮点数、布尔型、字符串型等,除此之外,还有切片、结构体、指针、通道、map、数组等其他类...
2021-06-22 17:38:00
337
原创 Go 语言入门系列:原生数据类型
前面一篇文章介绍了 Go 基本语法,变量的声明与初始化。本文将会具体介绍 Go 原生数据类型。Go 语言中具备丰富的数据类型,基本类型有整型、浮点数、布尔型、字符串型等,除此之外,还有切片...
2021-06-17 17:30:00
416
转载 再见了微服务!全面拥抱 DDD 思想真正的价值!
前段时间,参加了一场闭门技术交流会,讨论的热点是微服务,话题集中在微服务架构拆分到底应该拆多细。有微服务的地方就有 DDD(领域驱动设计),不过即便是专业的技术交流会,也没人能给 DDD ...
2021-06-15 09:00:00
349
原创 Go 语言入门系列:基本语法介绍之变量的声明与初始化
各位同学端午安康!前文回顾前面的文章介绍了 Go 相关的特性与入门案例,对于一门编程语言,变量和语法是我们首先需要掌握的。Go 在语法上与 C 语言有很多相似支持,但是比 C 语言更加简约...
2021-06-14 14:26:24
350
原创 Go 语言入门系列:第一个 Go 程序
端午假期,各位同学端午安康。前文回顾上一篇文章,我们介绍了 Go 语言的一些特性以及环境的安装。具体可以参见:https://juejin.cn/user/3491704659786455...
2021-06-12 07:54:01
265
原创 Go 语言入门系列:Go 语言:环境安装
「最近将会更新 Go 语言入门的系列文章,非常基础。适合小白入门或者零基础的同学,已有相关 Go 基础的同学可以略过。」❝可爱的 Golang 吉祥物,出自 Golang 设计者之一 Ro...
2021-06-10 09:38:24
267
原创 如何在 Go-kit 和 Service Mesh 中进行服务注册与发现?
Service Mesh 作为下一代的微服务架构,它将服务间的通信从基础设施中抽离出来,达到交付更可靠的应用请求、监控和控制流量的目的。Service Mesh一般与应用程序一同部署,作为...
2021-05-29 11:26:42
635
原创 如何实现可伸缩的 etcd API?
etcd 中如何实现可伸缩的 etcd API?使得 etcd 能够屏蔽内部集群的信息。本文将会介绍 etcd 中的 gRPC proxy 相关概念和使用分析。gRPC proxy 是在 ...
2021-05-14 12:37:22
431
原创 还不会使用分布式锁?从零开始基于 etcd 实现分布式锁
为什么需要分布式锁?在单进程的系统中,当存在多个线程可以同时改变某个变量时,就需要对变量或代码块做同步,使其在修改这种变量时能够线性执行消除并发修改变量。而同步本质上通过锁来实现。为了实现...
2021-05-06 23:01:42
464
1
转载 ElasticSearch 如何使用 ik 进行中文分词?
大家好,我是历小冰。在《为什么 ElasticSearch 比 MySQL 更适合复杂条件搜索》 一文中,我们讲解了 ElasticSearch 如何在数据存储方面支持全文搜索和复杂条件查...
2021-04-26 17:40:00
546
原创 高性能消息中间件 NSQ 解析-窥探 nsq 设计思路(一)
我们在前面介绍了 nsq 的相关概念以及 nsq 的安装与应用以及 nsqd 的实现原理、nsqlookupd 的实现细节。本文将会介绍 nsq 在设计方面的一些思路。设计概述从源码可以看...
2021-04-21 21:22:50
578
原创 高性能消息中间件 NSQ 解析-nsqlookupd 实现细节介绍
我们在前面介绍了 nsq 的相关概念以及 nsq 的安装与应用以及 nsqd 的实现原理。你可以翻看前面的文章熟悉 nsq 相关的基础知识。从本篇将会结合源码介绍 nsqlookupd 的...
2021-04-05 08:50:00
499
原创 高性能消息中间件 NSQ 解析-nsqd 的实现介绍
我们在前面介绍了 nsq 的相关概念以及 nsq 的安装与应用。从本篇开始将会结合源码介绍 nsq 的实现细节。nsq 中单个 nsqd 可以有多个 topic,每个 topic 可以有多...
2021-03-25 17:43:41
911
转载 MySQL读写分离,写完读不到问题如何解决
点击上方"程序员历小冰",选择“置顶或者星标” 你的关注意义重大!大家好,我是历小冰。今天我们来详细了解一下主从同步延迟时读写分离发生写后读不到的问题,依次讲解问题出现...
2021-03-15 09:00:00
1678
原创 高性能消息中间件 NSQ 解析-应用实践
Nsq 是用 Go 语言开发的轻量级的分布式消息队列,适合小型项目使用、用来学习消息队列实现原理,对于学习 Go channel的原理和用法,以及如何用 Go 语言来写分布式是一个很不错的...
2021-03-14 11:44:03
504
1
转载 一文带你解密 Go 语言之通道 channel
Go 语言中的一大利器那就是能够非常方便的使用 go 关键字来进行各种并发,而并发后又必然会涉及通信。Channel 自然而然就成为了 Go 语言开发者中必须要明白明了的一个 “东西” 了...
2021-03-04 18:00:00
2094
1
原创 高性能消息中间件 nsq 解析-介绍
随着互联网技术在各行各业的应用高速普及与发展,各层应用之间调用关系越来越复杂,架构、开发、运维成本越来越高,高内聚、低耦合、可扩展、高可用已成为了行业需求。一提到消息队列 MQ(Messa...
2021-03-03 18:02:24
509
1
原创 如何使用 Go 更好地开发并发程序,纯干货!
Go 语言的并发特性是其一大亮点,今天我们来带着大家一起看看如何使用 Go 更好地开发并发程序?我们都知道计算机的核心为 CPU,它是计算机的运算和控制核心,承载了所有的计算任务。最近半个...
2021-02-25 19:39:23
303
原创 今岁今宵尽,明年明日催
❝今岁今宵尽,明年明日催。❞今天是庚子鼠年的最后一天,为岁末的最后一天夜晚,亦称除夕。农历的春节对于我们来说更加的具有意义,也更为隆重。这一年是不平凡且充满挑战的。又到了一年到底回首复盘与...
2021-02-11 16:36:41
340
原创 程序人生 | 韭菜的股市沉浮
好几天没发文章了,上周我在拉勾教育上新了一个 etcd 的课程,前前后后准备,也是比较忙。今天和各位同学闲扯无关技术的一些话题。今天和各位聊得是我个人的股市故事。对投资理财感兴趣的读者,...
2021-02-03 00:03:21
285
转载 高手都是怎么用好 MyBatis 框架的?
如何访问数据库?这是做 Java 开发一定会遇到的问题,用实现对象模型、关系型数据库之间无感知映射的 ORM 框架,这都得手到擒来。相比执行JDBC ,它降低了代码重复性,也降低了对开发...
2021-01-26 08:50:39
233
原创 几款符合 OpenTracing 规范的分布式链路追踪组件介绍与选型
分布式链路追踪组件是在分布式架构中很重要的组件,用于排查分布式系统所遇到的问题。市面上有多款流行的分布式链路追踪组件,包括 Zipkin、Jaeger、Pinpoint 和 Skywal...
2021-01-24 16:44:20
1363
2
转载 MySQL的死锁系列- 锁的类型以及加锁原理
疫情期间在家工作时,同事使用了 insert into on duplicate key update 语句进行插入去重,但是在测试过程中发生了死锁现象:ERROR 1213 (4000...
2021-01-20 09:02:00
367
转载 万字长文 | 从实践到原理,带你参透 gRPC
gRPC 在 Go 语言中大放异彩,越来越多的小伙伴在使用,最近也在公司安利了一波,希望这一篇文章能带你一览 gRPC 的巧妙之处,本文篇幅比较长,请做好阅读准备。本文目录如下:简述gR...
2021-01-18 17:32:05
423
1
转载 先睹为快,Go2 Error 的挣扎之路
大家好,我是煎鱼。自从 Go 语言在国内火热以来,除去泛型,其次最具槽点的就是 Go 对错误的处理方式,一句经典的 if err != nil 暗号就能认出你是一个 Go 语言爱好者。...
2021-01-05 08:15:00
426
原创 2021 新一年的期望!谈谈数学期望在生活中的应用
2021 年到来了,有时会感叹时间过得真快。在 2020 年,对于大部分人来说都增加了两个额外的东西:口罩和健康码。一些事情的发生,悄然改变了我们的生活,推动着我们向前。本来是打算在这几...
2021-01-03 20:10:51
874
原创 正确规避常见的 Go 并发陷阱
作为一门并发性能优越的语言,Go虽然降低了协程并发开发的难度,但也存在一些「并发陷阱」,这就需要我们在开发时额外注意。我们再来介绍与Go 并发相关的几个小技巧,帮助你规避 Go 并发开发...
2020-12-23 18:20:23
309
2
转载 熬夜整理:Web 安全攻防笔记
最近,PDD 被爆出玩“全额返现”的文字游戏欺骗消费者,起初我以为是产生 Bug 而找的借口,后来一看有点“海参炒面”的意思。突然想到去年年初,PDD 被薅羊毛的 bug,用户可以随意领...
2020-12-17 17:10:00
347
原创 没有 try-catch,该如何处理 Go 错误异常?
错误处理是软件开发中不可回避的问题,「Go 中主要通过 error 和 panic 分别表示错误和异常」,并提供了较为简洁的错误异常处理机制。本文我们就来介绍 Go 中的一些错误处理机制...
2020-12-16 18:56:50
3469
3
原创 如何使用 Prometheus 和 Grafana 监控预警服务集群?
本文作者:历小冰「监控和预警平台」是互联网公司较为重要的后端架构组成之一,是整个运维乃至整个产品生命周期中最重要的一环,它能够事前及时预警发现故障,事后提供详实的数据用于追查定位问题。...
2020-12-10 17:19:36
700
转载 内卷严重?给程序员的几条建议
前几天有个后端程序员的朋友跟我吐槽说,年初立志:今年升职加薪,进阶架构师。结果,疫情之下工作差点没保住。今年大部分的时间也一直在重复着「增删改查」,回顾这一年基本没啥进步,内卷严重啊。...
2020-12-09 17:15:00
1926
转载 一万字详解 Redis Cluster Gossip 协议
今天来讲一下 Reids Cluster 的 Gossip 协议和集群操作,文章的思维导图如下所示。集群模式和 Gossip 简介对于数据存储领域,当数据量或者请求流量大到一定程度后,就...
2020-12-07 09:00:00
628
原创 还不了解 etcd?一文带你快速入门(万字长文)
2018年12月 etcd 作为孵化项目 CNCF(云原生计算基金会),几天前 CNCF 宣布 etcd 正式毕业,成为 CNCF 顶级项目。CNCF 官方表示 etcd 项目的采用率持...
2020-11-27 17:05:07
1202
原创 周末漫谈 | 什么是 Serverless 架构
Serverless 是什么Serverless 架构是不是就不要服务器了?回答这个问题,我们需要了解下 Serverless 是什么。Serverless 架构近几年频繁出现在一些技术...
2020-11-21 09:16:46
985
转载 MySQL 的 join 功能弱爆了?
点击上方"程序员历小冰",选择“置顶或者星标” 你的关注意义重大!大家好,我是历小冰,今天我们来学习和吐槽一下 MySQL 的 Join 功能。关于MySQL 的 j...
2020-11-21 09:16:46
237
vagrant_2.2.7_x86_64.rpm
2020-04-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人