随笔分类 - Golang
GO语言相关技术探究与分析
摘要:## 更新 2022年03月09日12:11:58 使用高级语言实现操作系统,一直有很多尝试;下面是 清华陈渝老师分享的一个slides,其中有使用go、c# 和 rust的等不同的操作系统; 读论文过程中,发现有一篇类似的工作,是MIT实现的一个操作系统在OSDI'18发表: 《The benef
阅读全文
摘要:https://github.com/coocood/freecache coocood/freecache https://github.com/allegro/bigcache allegro/bigcache 简单来说:shards map + map[uint]uint + []byte +
阅读全文
摘要:最近科研过程中出现了两个需求: 1. 将项目中的数据结构的更新,改成异步更新模式; 2. 使用锁,保证变量并发的正确性;由于没有接触过实际的工程场景,因此进行了简短的调研,下面是一些相关材料的记录; 深入Go并发编程研讨课:https://github.com/smallnest/dive-to-g
阅读全文
摘要:最近经常使用go语言写项目;遇到问题时通常使用 fmt.print 或者 log.info 进行打印日志 进行调试;本篇主要记录一些调试工具相关的信息,方便我个人的使用; Debugging Go applications using Delve: https://www.melvinvivas.c
阅读全文
摘要:文章背景: 之前曾写过《GO语言环境探究与配置;1.14.5》一文;在文中,我提到了环境变量的GOPROXY的配置。国内,因为存在着防火墙的原因,很多国外的网站都需要特殊渠道访问。 然而,我们在go开发的时候,需要依赖国外很多服务来进行辅助开发,如各种开源的go模块。从GO1.11开始,其支持模块;
阅读全文
摘要:今天,进行fork已经存在的go package 来进行开发时,发现不能导入修改过的包会出现如下问题: go: github.com/ECacheFS/memberlist: github.com/ECacheFS/memberlist@v0.2.2: parsing go.mod: module
阅读全文
摘要:官方参考文档: go install google.golang.org/protobuf/cmd/protoc-gen-go 安装protobuf go 插件 https://developers.google.com/protocol-buffers/docs/reference/go-gene
阅读全文
摘要:曾经学了两次Go语言,但是由于很长时间没用,都忘光了。今天重新探究一下,对环境配置过程中进行简单记录,防止再次忘记: 下载Go开发环境:https://www.jetbrains.com/go/ 下载Go语言开发包:https://golang.org/dl/ , 安装并配置环境变量; Go语言官方
阅读全文
摘要:我们使用 go help buildmode 可以看到 go 可以以多种方式进行构建,默认使用静态链接库. ➜ src go help buildmode The 'go build' and 'go install' commands take a -buildmode argument whic
阅读全文
摘要:go build 和 go install 都需要使用源码来进行编译。但是有时候我们只有.a或者.so文件。并不能获取到第三方库的源码,这时我们需要静态链接库编译的技巧; 上图是实验前的文件分布。 使用静态链接库编译命令: ➜ src go tool compile -I ../pkg/darwin
阅读全文
摘要:Distributed-Storage 介绍: 本项目是学习胡世杰作者的分布式对象存储课程的训练项目; 使用说明: 测试环境: go 1.10.4 ; Fedora 28; RabbitMQ 3.6.16 包安装: go get "github.com/streadway/amqp" 创建 apiS
阅读全文