岁月静好

一句话介绍不了你自己
文章
35
资源
9
加入时间
1年10月27天

线程和进程的关系

线程和进程的关系:每个进程都有相应的线程,在执行程序时,实际上是执行相应的一系列线程。进程是资源分配的最小单位,线程是程序执行的最小单位。详细介绍:根本区别:进程是资源分配最小单位,线程是程序执行的最小单位。 计算机在执行程序时,会为程序创建相应的进程,进行资源分配时,是以进程为单位进行相应的分配。

go中Map的实现原理和扩容机制

一、go中Map的实现原理map的源码位于 src/runtime/map.go 中 笔者go的版本是1.17在go中,map同样也是数组存储的的,每个数组下标处存储的是一个bucket,这个bucket的类型见下面代码,每个bucket中可以存储8个kv键值对,当每个bucket存储的kv对到达8

golang中slice的扩容机制

在golang中slice是一个指向数组的指针结构体。 这个结构体有三个属性:指向数组指针len: slice中元素的数量cap:slice占用内存数量其概念为"动态数组",及数组的容量大小(cap)会随着数组的实际大小(size)变化而变化(扩容)。扩容机制:如

Go语言常用命令表大全

Go语言常用命令表大全:go env用于打印Go语言的环境信息。go run命令可以编译并运行命令源码文件。go get可以根据要求和实际情况从互联网上下载或更新指定的代码包及其依赖包,并对它们进行编译和安装。go build命令用于编译我们指定的源码文件或代码包以及它们的依赖包。go instal

Go 小技巧之链式调用

// 主要就是 前一个方法的返回值,具有下一个方法,因此可以实现链式调用 package main import "fmt" type Stu&nbsp

Go 并发编程--信息穿透上下文 context

【导读】Go 语言编程中的 Context 怎么用?如何更好更快地利用 Context 实现功能?本文做了详细介绍。Context 的来历Go 在 1.7 的版本中才正式把 Context 加入到标准库中。在这之前,很多 Web 框架在定义自己的 handler 时,都会传递一个自定义的 Conte

Golang 学习之并发机制

​【开始】golang 并发机制和其他语言在实现上有什么不同?为什么能做到高效快速?本文做了详细介绍。由于对普通语法的介绍网上资源极多,Go 官方的上手指南 A Tour of Go: https://tour.golang.org/ (请自备梯子)就是极好的例子,我不再打算就语法细节进行详述。这次

面试必考基础知识:golang值类型和引用类型

1.值类型:变量直接存储值,内存通常在栈中分配。值类型:int、float、bool、string、数组、struct2.引用类型:变量存储的是一个地址,这个地址存储最终的值。内存通常在 堆上分配。通过GC回收。引用类型:指针、slice、map、chan

golang笔记--rpc和grpc使用

rpcRPC(Remote Procedure Call,远程过程调用)是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络细节的应用程序通信协议。RPC协议构建于TCP或UDP,或者是HTTP上。允许开发者直接调用另一台服务器上的程序,而开发者无需另外的为这个调用过程编写网络通信相关代码

go微服务框架kratos学习笔记九(kratos 全链路追踪 zipkin)

当代的互联网的服务,通常都是用复杂的、大规模分布式集群来实现的。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具。本节简单搭建一下z

go微服务框架kratos学习笔记八(kratos的依赖注入)

笔记二提过依赖注入,和如何生成,但没有细讲,本文来简单看看kratos的依赖注入。什么是依赖注入先来看一个小程序,创建一个小程序模拟迎宾员问候客人的事件我们将创建三个结构类型:1)为迎宾员创建消息 message2)表达消息的迎宾员 greeter3)迎宾员问候客人的事件 eventtype Mes

go微服务框架kratos学习笔记七(kratos warden 负载均衡 balancer)

本节看看kratos的学习负载均衡策略的使用。kratos 的负载均衡和服务发现一样也是基于grpc官方api实现的。grpc官方的负载均衡自带了一个round-robin轮询策略、即像一个for循环一样挨个服的发请求、但这显然不能满足我们的需求、于是kratos自带了两种负载均衡策略:WRR (W

go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk)

本节看看kratos的配置中心paladin(骑士)。kratos对配置文件进行了梳理,配置管理模块化,如redis有redis的单独配置文件、bm有bm的单独配置文件,及为方便易用。paladin 本质是一个config SDK客户端,包括了remote、file、mock几个抽象功能,方便使用本