06 2021 档案

摘要:我们用GO玩一下验证码 嗨,我是小魔童哪吒,咱们上次分享的GO 中 defer 的实现原理,再来回顾一下吧 分享了defer是什么 简单示意了栈和队列 defer的数据结构和实现原理,具体的源码展示 GO 中defer的 3 条规则 要是对 GO 中 defer 实现原理还有点兴趣的话,欢迎查看文章 阅读全文
posted @ 2021-06-21 23:16 阿兵云原生 阅读(157) 评论(0) 推荐(0)
摘要:GO 中 defer的实现原理 我们来回顾一下上次的分享,分享了关于 通道的一些知识点 分享了 GO 中通道是什么 通道的底层数据结构详细解析 通道在GO源码中是如何实现的 Chan 读写的基本原理 关闭通道会出现哪些异常,panic select 的简单应用 要是对 chan 通道还有点兴趣的话, 阅读全文
posted @ 2021-06-20 10:03 阿兵云原生 阅读(201) 评论(0) 推荐(0)
摘要:GO 中 Chan 实现原理分享 嗨,我是小魔童哪吒,还记得咱们之前分享过GO 通道 和sync包的使用吗?咱们来回顾一下 分享了通道是什么,通道的种类 无缓冲,有缓冲,单向通道具体对应什么 对于通道的具体实践 分享了关于通道的异常情况整理 简单分享了sync包的使用 要是对上述内容还有点兴趣的话, 阅读全文
posted @ 2021-06-19 22:07 阿兵云原生 阅读(302) 评论(0) 推荐(0)
摘要:GO 中 map 的实现原理 嗨,我是小魔童哪吒,我们来回顾一下上一次分享的内容 分享了切片是什么 切片和数组的区别 切片的数据结构 切片的扩容原理 空切片 和 nil 切片的区别 要是对 GO 的slice 原理还有点兴趣的话,欢迎查看文章 GO 中 slice 的实现原理 map 是什么? 是 阅读全文
posted @ 2021-06-19 22:05 阿兵云原生 阅读(617) 评论(0) 推荐(0)
摘要:GO 中 slice 的实现原理 上次我们分享的字符串相关的内容咱回顾一下 分享了字符串具体是啥 GO 中字符串的特性,为什么不能被修改 字符串 GO 源码是如何构建的 ,源码文件在 src/runtime/ 下的 string.go 字符串 和 []byte 的由来和应用场景 字符串与 []byt 阅读全文
posted @ 2021-06-19 22:03 阿兵云原生 阅读(137) 评论(0) 推荐(0)
摘要:GO 中 string 的实现原理 上次我们分享的内容咱回顾一下 分享了ETCD的简单单点部署,ETCD 使用到的包安装,以及会遇到的问题 ETCD 的设置 和 获取KEY ETCD 的WATCH 监控 KEY的简化 ETCD 的租约 和保活机制 ETCD 的分布式锁的简单实现 要是对GO 对 ET 阅读全文
posted @ 2021-06-19 22:01 阿兵云原生 阅读(270) 评论(0) 推荐(0)
摘要:GO 中 ETCD 的编码案例分享 我们来回顾一下上次我们说到的 服务注册和发现 分享了服务注册和发现是什么 CAP 定理是什么 ETCD 是什么,以及ETCD 和 Zookeeper的对比 ETCD 的分布式锁实现的简单原理 要是对 服务注册与发现,ETCD 还有点兴趣的话,欢迎查看文章 服务注册 阅读全文
posted @ 2021-06-19 21:59 阿兵云原生 阅读(212) 评论(0) 推荐(0)
摘要:服务注册与发现之ETCD 我们一起来回顾一下上次的分享: 通道是什么,通道的种类 无缓冲,有缓冲,单向通道具体对应什么 对于通道的具体实践 分享了关于通道的异常情况整理 简单分享了sync包的使用 要是对上述 GO 的通道 和 sync 包有点兴趣的话,欢迎查看文章 GO通道和 sync 包的分享 阅读全文
posted @ 2021-06-14 09:47 阿兵云原生 阅读(355) 评论(0) 推荐(0)
摘要:GO通道和 sync 包的分享 我们一起回顾一下上次分享的内容: GO协程同步若不做限制的话,会产生数据竞态的问题 我们用锁的方式来解决如上问题,根据使用场景选择使用互斥锁 和 读写锁 比使用锁更好的方式是原子操作,但是使用go的 sync/atomic需要小心使用,因为涉及内存 要是对GO的锁和原 阅读全文
posted @ 2021-06-13 11:19 阿兵云原生 阅读(132) 评论(0) 推荐(0)
摘要:GO的锁和原子操作分享 上次我们说到协程,我们再来回顾一下: 协程类似线程,是一种更为轻量级的调度单位 线程是系统级实现的,常见的调度方法是时间片轮转法 协程是应用软件级实现,原理与线程类似 协程的调度基于 GPM 模型实现 要是对协程的使用感兴趣的话,可以看看这篇文章简单了解一下瞅一眼就会使用GO 阅读全文
posted @ 2021-06-12 18:11 阿兵云原生 阅读(258) 评论(0) 推荐(0)
摘要:GO的并发编程分享 之前我们分享了网络编程,今天我们来看看GO的并发编程分享,我们先来看看他是个啥 啥是并发编程呢? 指在一台处理器上同时处理多个任务 此处说的同时,可不是同一个时间一起手拉手做同一件事情 并发是在同一实体上的多个事件,而这个事件在同一时间间隔发生的,同一个时间段,有多个任务执行,可 阅读全文
posted @ 2021-06-11 23:00 阿兵云原生 阅读(138) 评论(0) 推荐(0)
摘要:千万不要错过的后端【纯干货】面试知识点整理 I I c++内存管理 上次分享整理的面试知识点 I , 今天我们来继续分享面试知识点整理 II linux kernel 内核空间、内存管理、进程管理设备、驱动虚拟文件系统(vfs) 内核空间是受保护的,用户不能对内核空间读写,否则会出现段错误 环境变量 阅读全文
posted @ 2021-06-10 23:35 阿兵云原生 阅读(258) 评论(0) 推荐(0)
摘要:GO 中如何设置 HTTPS 分享 先回顾一下上次说到关于HTTP相关的知识点 HTTP 属于网络模型中的应用层协议 , 应用层的作用就是规定应用程序使用的用语规范 HTTP 的建立过程涉及客户端和服务端,需要详细了解的可以查看文章:互联网协议知多少 、来我们一起探究一下net/http 的代码流程 阅读全文
posted @ 2021-06-09 22:57 阿兵云原生 阅读(430) 评论(0) 推荐(0)
摘要:C++面试题 语言相关基础题 对象复用的了解,零拷贝的了解 对象复用 指得是设计模式,对象可以采用不同的设计模式达到复用的目的,最常见的就是继承和组合模式了。 零拷贝: 零拷贝主要的任务就是避免CPU将数据从一块存储拷贝到另外一块存储,主要就是利用各种零拷贝技术,避免让CPU做大量的数据拷贝任务,减 阅读全文
posted @ 2021-06-08 23:10 阿兵云原生 阅读(124) 评论(0) 推荐(0)
摘要:这是我参与更文挑战的第 7 天,活动详情查看: 更文挑战 GO的网络编程分享 回顾一下我们上次分享的网络协议5层模型 物理层 数据链路层 网络层 传输层 应用层 每一层有每一层的独立功能,大多数网络都采用分层的体系结构,每一层都建立在它的下层之上,向它的上一层提供一定的服务,而把如何实现这一服务的细 阅读全文
posted @ 2021-06-07 23:42 阿兵云原生 阅读(289) 评论(0) 推荐(1)
摘要:互联网协议知多少 互联网协议是啥呢? 在解释这个问题前,我们来了解一下,什么是网络通信,没有网络通信,这个协议都没得玩了 网络 用物理链路将各个孤立的工作站或主机相连在一起,组成数据链路,从而达到资源共享和通信的目的 通信 人与人之间通过某种媒体进行的信息交流与传递 那么网络通信就不难理解了吧 网络 阅读全文
posted @ 2021-06-06 17:37 阿兵云原生 阅读(281) 评论(1) 推荐(0)
摘要:最常用的限流算法以及如何在http中间件中加入流控 何为限流? 通过对并发访问/请求进行限速,或者对一个时间窗口内的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务、排队或等待、降级等处理 说白了就是限制请求数量,或者是在某一段时间内限制总的请求数量 例如秒杀网站,限制22点5分 -- 22点 阅读全文
posted @ 2021-06-05 23:43 阿兵云原生 阅读(284) 评论(0) 推荐(0)
摘要:gin的路由算法分享 gin是什么呢? 我们在github上看看官方简介 Gin is a web framework written in Go (Golang). It features a martini-like API with performance that is up to 40 t 阅读全文
posted @ 2021-06-04 22:55 阿兵云原生 阅读(227) 评论(0) 推荐(0)
摘要:探究一下net/http 的代码流程 net/http 是什么? 是GO的其中一个标准库,用于Web应用的开发,使用这个库,可以让开发变得更加迅速和简便,且易于上手。 那么问题来了 使用库,确实方便,无脑调接口,拼拼凑凑能跑就行,管他效率性能,出了问题,删库跑路就行了。。。 实际真的是这个样子吗?作 阅读全文
posted @ 2021-06-03 23:08 阿兵云原生 阅读(204) 评论(0) 推荐(0)
摘要:gRPC- HTTP网关 I gRPC是什么?我们再来回顾一下 gRPC是 Google开发的基于HTTP/2标准设计的一个通用的,高性能的RPC框架,有如下3个最明显的特点: 支持主流的编程语言,C++,Java,Python,Go,Ruby等,基于ProtoBuf生成相应的服务端和客户端代码。 阅读全文
posted @ 2021-06-02 21:48 阿兵云原生 阅读(349) 评论(0) 推荐(0)
摘要:gRPC的请求追踪 前言 我们来回顾一下之前分享的知识点: gRPC介绍 介绍了基本的gRPC的使用方式,框架,交互方式等 gRPC的认证 分享了gRPC的四种认证方式中重要的2种方式,有兴趣可以点击看看哦 openssl 证书生成笔记(go 1.15版本以上) 整理了openssl 证书的生成,关 阅读全文
posted @ 2021-06-01 22:51 阿兵云原生 阅读(339) 评论(0) 推荐(0)