标签 Go 下的文章

  • 📂搭建Linux Go项目工程环境教程

    下载和安装Go软件包下载地址:https://studygolang.com/dl安装Go关键包# rm -rf /usr/local/go && tar -C /usr/local -xzf go1.16.6.linux-amd64.tar.gz设置go环境变量编辑 /etc/profile文件设置PATH环境变量添加如下信息 export PATH=$PATH:/usr/local/g...

  • 📂windows下go get 命令行安装库 报错 go: cannot use path@version syntax in GOPATH mode 解决方法教程

    GO的语言版本大于1.13的时候,执行以下命令即可go env -w GO111MODULE=on参考链接https://blog.csdn.net/whatday/article/details/109775039 - golang go get 命令行安装库 报错 go: cannot use path@version syntax in GOPATH mode 解决方法https://...

  • 📂Go如何监听Linux系统信号教程

    一、什么系统信号?详细信息请查阅:https://www.cnblogs.com/senior-engineer/p/5979992.html 二、使用go代码去监听交叉编译 (在cmd里面设置)想在Linux上运行set GOOS=linux (go GOOS=windows )go build ,然后得到个二进制程序package main import ( "fmt...

  • 📂Linux下和windows10下搭建Go语言环境教程

    本文主要介绍在Linux和window10下搭建Go语言环境。1. Linux下安装Go登录Go官网,选择Linux安装包进行下载,如下图所示。 rm -rf /usr/local/go && tar -C /usr/local -xzf go1.16.5.linux-amd64.tar.gz 按照官网安装步骤,加上sudo后仍然报错,所以执行了sudo -i的命令切换成...

  • 📂go每日新闻(2021-06-05)——Go 内存管理概述教程

    每日一谚:Use an atomic package to increment a variable “counter++” when using workers, multiple goroutines. Otherwise you get a corrupted count due to a race/write condition.go中文网每日资讯--2021-06-05一、Go语言...

  • 📂Go 内存分配器的设计与实现教程

    程序中的数据和变量都会被分配到程序所在的虚拟内存中,内存空间包含两个重要区域 — 栈区(Stack)和堆区(Heap)。函数调用的参数、返回值以及局部变量大都会被分配到栈上,这部分内存会由编译器进行管理;不同编程语言使用不同的方法管理堆区的内存,C++ 等编程语言会由工程师主动申请和释放内存,Go 以及 Java 等编程语言会由工程师和编译器共同管理,堆中的对象由内存分配器分配并由垃圾收集器...

  • 📂什么是Windows To Go?教程

    https://en.wikipedia.org/wiki/Windows\_To\_Go微软为了解决企业用户的需求而推出,可以在u盘或者移动硬盘启动window系统,顾名思义,移动的windows。那这个东西有啥用呢?1.移动办公比如程序员,有时候公司pc开发,有时候家里pc开发,有了win to go,不需要再部署两套系统、两套开发环境,即插即用。提供除了笔记本之外的另一种选择。2.多系...

  • 📂Go | 结构体与内存对齐教程

    CPU 要想从内存读取数据,需要通过地址总线,把地址传输给内存,内存准备好数据,输出到数据总线,交给CPU。如果地址总线只有8根[0,255],那这个地址就只有8位,可以表示256个地址,因为表示不了更多的地址,就用不到更大的内存,所以256byte就是8根地址总线最大的寻址空间,要使用更大的空间,就要有更宽的地址总线。例如:32位地址总线[0,2^32-1],就可以寻址4G内存了每次操作1...

  • 📂用 Go STL 查询 DB 引发的内存泄露教程

    本文字数:5295 字精读时间:10 分钟也可在 5 分钟内完成速读问题起因 这几天有一个 Go API service 经过定时监控发现占用的内存不断上涨,内存从初始的 70M 一直上升到超过 1G 直到吃光内存退出,基本上就可以断定是存在内存泄露的问题了,但是因为自带垃圾回收的语言出现内存泄露的情况较少,如果存在那一定是大问题,因此有了下文详细的排查过程,为日后处理此类问题积累经验...

  • 📂001_Go windows 环境搭建教程

    Go windows 环境搭建1、下载安装GolangGo 官网下载地址:https://golang.org/dl/Go 官方镜像站(推荐):https://golang.google.cn/dl/2、验证安装成功go version go version go1.13.8 windows/amd643、查看 go 环境go env set GO111MODULE=on set GOAR...

  • 📂CentOS6.8配置GO语言开发环境教程

    Go语言是谷歌2009发布的第二款开源编程语言,Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。 鉴于越来越多的开源项目都采用Go为开发语言,本文介绍Linux(CentOS 6.8)下GO开发环境的搭建与使用。一、Go安装使用1、下载Go源码包<pre style="margin-top:0...

  • 📂Go-01-Centos7部署Go环境教程

    Go运维开发系列文章目录Go-01-Centos7部署Go环境文章目录Go运维开发系列文章目录前言一、下载二、部署1. 解压到指定目录2. 设置环境变量3. 验证安装总结-前言主要是以运维知识为基础,学习如何利用 Go 开发更高效的运维工具。需要有运维基础。一、下载在Mac、Windows和Linux三个平台上都支持Golang。 您可以从Golang官方网站的下载页面下载到相应平台的安...

  • 📂深入 Go Golang 内存分配超级棒的文章:Go 内存分配器可视化指南教程

    以下内容转载自 https://www.toutiao.com/i6777555732402274830/原文翻译自https://github.com/coldnight/go-memory-allocator-visual-guide当我第一次开始尝试理解 Go 语言的内存分配器时,整个过程让我抓狂。一切看起来都像一个神秘的黑盒子。因为几乎所有技术魔法(technical wizardr...

  • 📂【Linux】Go 语言开发环境下载与安装教程

    下载与安装1. Go 下载2. Go 安装3. Go 代码-1. Go 下载跳转到环境路径cd /usr/local 下载 Go 1.15.6 版本安装包sudo wget https://dl.google.com/go/go1.15.6.linux-amd64.tar.gz -2. Go 安装解压sudo tar -C /usr/local -xzf go1.15.6.linux-amd...

  • 📂Go语言实战笔记(二十六)| Go unsafe 包之内存布局教程

    unsafe,顾名思义,是不安全的,Go定义这个包名也是这个意思,让我们尽可能的不要使用它,如果你使用它,看到了这个名字,也会想到尽可能的不要使用它,或者更小心的使用它。虽然这个包不安全,但是它也有它的优势,那就是可以绕过Go的内存安全机制,直接对内存进行读写,所以有时候因为性能的需要,会冒一些风险使用该包,对内存进行操作。Sizeof函数Sizeof函数可以返回一个类型所占用的内存大小,这...

  • 📂Go 语言开发环境一键安装 | Linux版教程

    Go 语言开发环境一键安装 | Linux 版-curl -SL https://gitea.com/skiy/golang-install/raw/branch/master/install.sh | bash /dev/stdin -v 1.13.4最新版 Go 语言一键安装脚本。•支持 Linux / MacOS / FreeBSD 等系统 •支持自定义版本 •支持自定义GOPAT...

  • 📂Linux Namespaces 转载(Ed King)教程

    Building Containers from Scratch in Go (github source code)netns - network namespaces in go (git hub source code)how to build a container from scratch Linux containers in 500 lines of code by Lizzi...

  • 📂Go语言内存分配(详述 转)教程

    一、内存管理简介1.1 虚拟内存虚拟内存是当代操作系统必备的一项重要功能,对于进程而言虚拟内存屏蔽了底层了RAM和磁盘,并向进程提供了远超物理内存大小的内存空间。我们看一下虚拟内存的分层设计。上图展示了某进程访问数据,当Cache没有命中的时候,访问虚拟内存获取数据的过程。在访问内存,实际访问的是虚拟内存,虚拟内存通过页表查看,当前要访问的虚拟内存地址,是否已经加载到了物理内存。如果已经在物...

  • 📂将Go程序发布到CentOS教程

    在 项目下SET CGO\_ENABLED=0SET GOOS=linuxSET GOARCH=amd64go build main.go这样在main.go同目录下会生产main二进制文件2.将main二进制文件上传到服务器,还有前端View下面的html 和Content下面的CSS JS文件夹也要上传3.修改main二进制文件权限chmod -R 777 main4.最后执行 ./ma...

  • 📂go语言-面向并发的内存模型教程

    Go语言是基于消息并发模型的集大成者,它将基于CSP(Communicating Sequential Processes)模型的并发变成内置到了语言中,通过一个go关键字就可以轻易地启动一个Goroutine,且Go语言的Goroutine之间是共享内存的。1.Goroutine和系统线程Goroutine是Go语言特有的并发体,是一种轻量级的线程,由go关键字启动。在真是的Go语言实现中...

  • 📂Redigo--Go连接Redis教程

    本文来自:CSDN博客感谢作者:wkyb608查看原文:Redigo--Go连接Redis本文主要介绍go Web开发中操作redis。Redigo是go连接Redis的扩展包,用此包时需先执行:<pre class="brush:go;gutter:true;">go get github.com/garyburd/redigo/redis安装完后,在文件中...

  • 📂(Go)16.Redis连接池的使用教程

    1.为什么要使用连接池一个数据库服务器只拥有有限的连接资源,一旦所有的连接资源都在使用,那么其它需要连接的资源就只能等待释放连接资源。所以,在连接资源有限的情况下,提高单位时间的连接的使用效率,缩短连接时间,就能显著缩短请求时间。所以就有了连接池的概念,在初始化时,创建一定数量的连接,先把所有连接存起来,然后,谁需要使用,从这里取走,干完活立马放回来。 如果请求数超出连接池容量,那么就排队等...

  • 📂【go】内存对齐教程

    参考 参考-校对版理解类型的本质当我使用 C/C++ 编写代码时,理解类型(type)是非常有必要的。如果不理解类型,你就会在编译或者运行代码的时候,碰到一大堆麻烦。无论什么语言,类型都涉及到了编程语法的方方面面。 加强对于类型和指针的理解,对于提高编程水平十分关键。 本文会主要讲解类型。我们首先来看看这几个字节的内存:内存地址: FFE4 FFE3 FFE2 ...

  • 📂Windows To Go 企业版2019 LTSC 开发环境部署教程

    Windows To Go 是一项非常实用的功能,与传统方式安装Windows 10相比更具有灵活性,会根据每次接入的硬件型号保留不同版本驱动。由于博主是一名全栈程序员(截至发稿处于菜鸟级别),对灵活性和移动性有要求,要达到在公司和在家写代码一样的体验,所以Windows To Go 成为了首选解决方案。硬件:要流畅运行 Windows To Go 需要性能非常强劲的U盘或者移动固态硬盘。这...

  • 📂Windows下Go安装&环境配置&编译运行教程

    Go下载安装官方Go下载站点:https://golang.google.cn/ 也可以选择:https://studygolang.com/dl配置环境变量常用环境变量GOROOTGOROOT是Go的安装目录,在Windows中,GOROOT的默认位置是C:/go,而在Mac OS或者Linux中GOROOT的默认位置是/usr/local/go,如果Go安装在其他目录,而需要将GORO...

  • 📂Centos 7安装Go语言环境教程

    <pre class="brush:bash;gutter:true;">wget https://studygolang.com/dl/golang/go1.13.4.linux-amd64.tar.gz tar -zxvf go1.13.4.linux-amd64.tar.gz vim /etc/profile source /etc/profil...

  • 📂如何在 Go 中使用 CGroup 实现进程内存控制教程

    背景从 Linux 内核 2.6.25 开始,CGroup 支持对进程内存的隔离和限制,这也是 Docker 等容器技术的底层支撑。使用 CGroup 有如下好处:在共享的机器上,进程相互隔离,互不影响,对其它进程是种保护。对于存在内存泄漏的进程,可以设置内存限制,通过系统 OOM 触发的 Kill 信号量来实现重启。CGroup 快速入门默认挂载分组 Linux 系统默认支持 CGrou...

  • 📂Go语言操作NoSql教程

    NSQ平台 ==========================NSQ是目前比较流行的一个分布式的消息队列,本文主要介绍了NSQ及Go语言如何操作NSQ。NSQNSQ介绍=======================================================NSQ是Go语言编写的一个开源的实时分布式内存消息队列,其性能十分优异。 NSQ的优势有以下优势:NSQ提倡分布...

  • 📂Go语言操作MySQL教程

    MySQL是常用的关系型数据库,本文介绍了Go语言如何操作MySQL数据库。Go操作MySQL连接=======================================================Go语言中的database/sql包提供了保证SQL或类SQL数据库的泛用接口,并不提供具体的数据库驱动。使用database/sql包时必须注入(至少)一个数据库驱动。我们常用的数据...

  • 📂CentOS7安装Go教程

    Go官网 https://golang.google.cn/dl/<pre class="brush:bash;gutter:true;"># 安装wget yun install -y wget # 下载 wget https://dl.google.com/go/go1.13.linux-amd64.tar.gz # 解压压缩包到/usr/local目录 ...