Go语言中文网 为您找到相关结果 1939

Golang面试之Linux系统

参考 深入理解Linux的CPU上下文切换 CPU上下文切换 Linux 是一个多任务操作系统,它支持同时运行的任务数量远大于 CPU 个数。其实这些任务没有真正的同时运行,是因为系统在很短的时间内,将 CPU 轮流分配给它们,造成多任务同时运行的错觉。 而在每个任务运行前,CPU 都需要知道任务从哪里加载、从哪里开始运行,需要系统事先设置好 CPU 寄存器和程序计数器。CPU 寄存器是 CPU 内置的容量小、速度极快的内存。而程序计数器则是用来存储 CPU 正在执行的指令位置、或即将执行的下一条指令位置。它们都是 CPU 在运行任务前必须依赖的环境,也被叫做 CPU 上下文。 上下文切换,就是先把前一个任务的 CPU 上下文保存起来,然后加载新任务的上下文到这些寄存器和程序计数器,最后再跳...阅读全文

博文 2020-05-08 23:32:45 网管同学

Go over .Net/C#, Why?

<p>Looking for a convincing story to choose Go over .Net for &#34;anything&#34;. Yes Go has a great concurrency model - the present state of concurrency/async/etc is not too shabby in .Net. Yes Go has great tooling - like it or not, Visual Studio is pretty damn good, and with the right setup you can be very efficient. I&#39;ve bui...阅读全文

资源 2016-11-12 03:00:12 blov

Go语言开发环境搭建详解

前段时间写了好几篇关于Go语言的文章,有入门的Go系统介绍,也有比较深入的网络代理分析实现,读者们看了也给予了很多好评,这里非常感谢。 有读者来信(微信公众号消息)说能不能写一篇关于Go语言环境的配置搭建,这样对于想学Go语言的可以快速的配置起来一个环境。这个的确是我忽略了,按照我写书的逻辑,也是先有环境搭建,才能有语言功能介绍,这个直接把Go语言的开发环境搭建等配置跳过去实在不应该,所以这篇特意针对Go语言的开发环境搭建、配置、编辑器选型、不同平台程序生成等做了详细的介绍。 下载要搭建Go语言开发环境,我们第一步要下载go的开发工具包,目前最新稳定版本是v1.7.4。Go为我们所熟知的所有平台架构提供了开发工具包,比如我们熟知的Linux、Mac和Windows,其他的还有FreeBSD等...阅读全文

博文 2017-07-04 10:17:22 飞雪无情

golang源码安装时fatal error: MSpanList_Insert错误

本使用的golang是1.9版本,今天想升到最新的1.11。遇到如下错误 failed MSpanList_Insert 0x905000 0x9b51f3c97b8 0x0 0x0 fatal error: MSpanList_Insert runtime stack: runtime.throw(0x5e5cf0, 0x10) /home/travis/.gimme/versions/go1.6.linux.amd64/src/runtime/panic.go:530 +0x90 fp=0x7fff5fbff0b0 sp=0x7fff5fbff098 runtime.(*mSpanList).insert(0x865d08, 0x905000) /home/travis/.gimme/v...阅读全文

博文 2019-01-10 19:34:41 左手java右手go

RSCHA认证第五讲管理本地LINUX用户和组

关于作者,目前在拉勾网任职运维开发部的负责人,长期从事运维开发工作,有多年的运维技能培训能力,培训了多批运维同学,至今大致有300人左右; 发现一问题,好多内容好多年都在重复得讲,没有一个产物直接输出给大家。计划利用空闲时间将多年的知识(分享的内容,包括技能,心得,管理和爱好)沉淀到我的公众号: 北漂悟道之路 qrcode_for_gh_df893b8ca13b_344.jpg 感兴趣的同学可以关注一下我的公众号。 技能:擅长python开发,django框架开发,Kubernetes架构、运维开发架构,Linux运维,Hadoop运维和流行监控;了解golang开发和C++开发。 爱好:美食,自驾和旅游 希望了解作者的同学可以加我微信号:XiaoJiaQingShi RH124系列课程的目...阅读全文

博文 2019-08-09 07:32:45 多多北漂悟道之路

Go 1.8 toolchain improvements

This is a progress report on the Go toolchain improvements during the 1.8 development cycle. Now we’re well into November, the 1.8 development window is closing fast on the few remaining in fly change lists, with the remainder being told to wait until the 1.9 development season opens when Go 1.8 ships in February 2017. For more in this series, read...阅读全文

博文 2017-02-16 07:34:34 Dave Cheney

一.go安装

一.go语言特性 并发,带垃圾回收的快速编译的语言。 静态类型语言,类型系统没有层级,比面向对象语言更轻量级。 go为多核机器准备的。 二.go安装方式 go源码安装 源码安装需要有gcc编译器。 *** mac中xcode已经包含; ubuntu系统中用sudo apt-get install gcclibc6-dev来安装编译; windows中可以安装mingw或cygwin来安装gcc * 去官网 https://golang.google.cn/ 下载源码 goVERSION.src.tar.gz,解压到$home目录 1. (linux) cd go/src ./all.bash 运行all.bash后出现all test passed说明成功安装. 2. (mac)把命令写入....阅读全文

博文 2019-10-09 10:32:48 吃草的羊

基于ubuntu虚拟机的k8s环境搭建(双节点,master+node)

基于ubuntu虚拟机的k8s环境搭建 由于在实验的过程中,在windows上起的虚拟机来模拟master和node节点,太多虚拟机会导致电脑的内存被占满,无法启动更多的虚拟机;因此只使用了两个虚拟机,一个作为master节点,一个作为node节点;遇到的坑是,虚机的核数需要指定为2,否则后续kubeadm无法初始化成功;这个可以在虚机管理界面中指定;虚机使用了Ubuntu 16.04.6 LTS版本 搭建环境的节点: sshd的开启 apt install sshd service sshd start 安装docker 更新ubuntu的apt源索引 sudo apt-get update 安装包允许apt通过HTTPS使用仓库 sudo apt-get install \ apt-tr...阅读全文

博文 2020-01-13 10:32:42 byte

golang 学习笔记—ubuntu安装go环境

一,从官网下载go源码对于64位的Linux$ wget https://storage.googleapis.com/golang/go1.9.1.linux-amd64.tar.gz在/usr/local下安装程序$ sudo tar -xzf go1.9.1.linux-amd64.tar.gz -C /usr/local配置全局变量$ sudo vim ~/.bashrc在文件添加以下两行信息export GOROOT=/usr/local/goexport GOPATH=/home/xing/gocodeexport GOBIN=$GOPATH/binexport PATH=$PATH:$GOROOT/bin:$GOBIN使修改生效source ~/.bashrc验证go vers...阅读全文

博文 2018-09-03 23:34:39 蓝色星空下1992

Linux有什么不一样?Linux技术学习

Linux的广泛应用,使得更多人来学习Linux这一操作系统,而为什么Linux这么的与众不同呢?是什么让它在发展迅速的互联网行业中大放异彩? Linux 是一款免费的操作系统,也就是说,不论何时何地,只要有需要,相较于其他操作系统,Linux操作系统都是容易安装的。而且不用受购买授权的约束,对所有类型的组装机器和服务器配置的测试也就变的直接了。 Linux 可以实现多用户操作系统,它具有很好的私密性和稳定性,整个团队可以同时从本地或远程登录进行工作,使得团队合作更加和谐和便捷。而且Linux 的构建采用了一些与 UNIX 操作系统相同的技术,而且带有大多数与深度成熟的 UNIX 操作系统相一致的工具,也大大的增加了Linux操作系统的稳定性与安全性。此外,Linux 的发行版还提供了复杂的...阅读全文

博文 2019-11-13 16:31:51 zhouzhou2018

Help with delve

<p>Hello. I can&#39;t seem to be able to install delve for vsCode.</p> <pre><code>echo $GOPATH /home/david/go go get github.com/derekparker/delve can&#39;t load package: package github.com/derekparker/delve: no buildable Go source files in /home/david/go/src/github.com/derekparker/delve </code></pre> ...阅读全文

一、环境搭建

点击链接获得对应版本的包:https://studygolang.com/dlwindow下直接安装msi就好,linux看这个链接我想把go的开发环境迁移到sublime上,所以还有以下步骤:1.打开sublime > 首选项 > 浏览插件目录2.这时候打开一个文件夹,下载这个,解压之后把文件夹放到步骤一打开的目录3.点击 > 工具 > 编译系统 > 新建编译系统 输入{ "cmd": ["go", "run", "$file_name"], "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", "working_dir": "$file_path", "selector": "source.go"}命名为Golang,然后选用这个编译...阅读全文

博文 2018-11-22 05:34:39 eftales

从那些我5年前就想做的事谈起

说来,估计每个人都有一堆想做却没做的事,甚至不仔细想都不记得自己当初立过哪些flag。 因为太多的flag最终都是不了了之,人本能的逃避,也不愿再提起了。 我突然再提起这个话题,到不是我立个flag改过自新了,只是最近翻读了下笑来老师的《自觉是门手艺》,对书中一段话颇有感触。 哪些是你5年前就想做但现在依然没开始做的事? 以5年为界,回想起来,我想要做却一直没做的事着实不少,如果只看编程这方面: 远的有 学python 专研算法/加强下数学 近的有 学linux 学vuejs 不一一列举,但自己这5年来也不是什么没学,5年前自己应该是只会C#,但后来陆续学会了js和golang,并有了相关的工作经验。 在编程这方面,我是更偏向于在工作中学习,单纯的为了学习而学或者研究,似乎真没有那么多耐心。...阅读全文

博文 2019-04-04 01:34:39 海之方

Golang教程-1.1 多平台安装Golang

本文系第一篇Golang语言学习教程 What is Golang? 个人认为新手对真正的特性没有理解,特点等等在真正学会后才能够真正了解。 所以以下概念性的东西只需大致了解。 Go语言是谷歌推出的一种全新的编程语言,它能让构造简单、可靠且高效的软件变得容易。 于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。 Go语言特色 简洁、快速、安全 并行、有趣、开源 内存管理、V数组安全、便捷迅速 Go语言安装 Golang 支持三个平台:Mac,Windows 和 Linux(译注:不只是这三个,也支持其他主流平台)。 下载地址 Mac OS 下载安装程序后。双击开始安装并且遵循安装提示,会将 Golang 安装到 /us...阅读全文

博文 2018-07-02 12:35:05 xunk1900

LINUX, GO GO GO!

计算机组成:CPU,存储设备,I/O设备,内存 linux发行版:slackware:SUSE Linux Enterprise Server (SLES)OpenSuse桌面debian: ubuntu, mintredhat: RHEL: RedHat Enterprise LinuxCentOS:兼容RHEL的格式Fedora:每6个月发行一个新版本ArchLinux:轻量简洁Gentoo:极致性能, 不提供传统意义的安装程序Linux的哲学思想:一切皆文件 在linux系统中,目录,配置文件,硬盘等等都是用文件来表示的 linux命令:pwd:显示当前工作目录echo:回显ifconfig:查看网卡信息tty:查看当前终端startx:切换图形界面export:设置或者显示系统环境变...阅读全文

带你学够浪:Go语言基础系列-环境配置和 Hello world

前面几周陆陆续续写了一些后端技术的文章,包括数据库、微服务、内存管理等等,我比较倾向于成体系的学习,所以数据库和微服务还有后续系列文章补充。 最近工作上比较多的 Golang 编程,现在很多互联网公司都在转向 Golang 开发,所以打算写一写有关 Go 语言学习的系列文章,目标是从 Go 基础到进阶输出一系列文章,沉淀下这些知识同时也给大家做参考,力求做到通俗易懂,即使你是 Golang 小白也能看懂,如果你是老手也能温故知新。 本文将要和你分享 linux 下安装 Golang 环境,并且讲解如何通过配置 VSCode 远程开发调试 Golang 程序。 下载源码 你可以用系统自带的包管理工具比如 yum 或 apt-get 来安装Golang开发环境。不过,为了通用性,我选择通过源码的...阅读全文

博文 2020-05-21 19:33:21 柠檬橙1024

004 hyperledger fabric 系统环境搭建

ubantu环境下搭建fabric所需环境。 Mac下配置ubantu虚拟机,教程可以参考上文。 准备好ubantu系统后,开始进行环境搭建 环境搭建 快速入门: http://hyperledger-fabric.readthedocs.io/en/release-1.1/getting_started.html 前提 安装git $ sudo apt update $ sudo apt install git 安装curl $ sudo apt install curl 安装vim $ sudo apt install vim 安装Docker $ sudo apt update $ docker --version $ sudo apt install docker.io 查看Dock...阅读全文

博文 2018-08-04 22:35:04 开心橙子

What loggers do you use in your go projects and what features do you need them to have?

<p>I&#39;ve been investigating using a 3rd party logging framework rather than the stdlib, because what i have is getting quite convoluted. I need the capability to have the logs be a standard size on disk, to be able to print go objects in a human-readable way and have a way to automatically annotate where the message was created.</p&...阅读全文

学习C 语言能做什么

注意:转载于https://blog.51cto.com/12483417/2431551 经常有小伙伴问我,你是做C/C++的,那学C语言可以做什么呢?尤其是还在学校的同学,感觉自己学了很久,什么也做不了,一度怀疑自己是不是不适合程序员这个方向。 开始我都是直接说可以开发嵌入式,做操作系统,开发数据库等等,说到这,其实大家就应该明白了,C语言是接近底层的,他的很多应用都是处在摸不着看不见的后台,这对于初学编程的同学确实太不友好了,大家都喜欢所见即所得的效果,要不python怎么这么火呢! 但是,作为编程排行榜经典不衰的语言,我还是想好好说下,到底学C语言可以做什么? image.png 在计算机高速发展的最近几十年中,出现了上百种编程语言,有的编程语言是针对某个领域专门设计的,例如: PH...阅读全文

博文 2020-05-02 11:33:44 小小的太阳ZH

golang条件编译

开篇 golang中没有类似C语言中条件编译的写法,比如在C代码中可以使用如下语法做一些条件编译,结合宏定义来使用可以实现诸如按需编译release和debug版本代码的需求 #ifndef #define ... #end 但是golang支持两种条件编译方式 编译标签( build tag) 文件后缀 编译标签( build tag) 在源代码里添加标注,通常称之为编译标签( build tag),编译标签是在尽量靠近源代码文件顶部的地方用注释的方式添加 go build在构建一个包的时候会读取这个包里的每个源文件并且分析编译便签,这些标签决定了这个源文件是否参与本次编译 编译标签添加的规则(附上原文): a build tag is evaluated as the OR of spa...阅读全文

博文 2019-01-10 19:34:43 左手java右手go

Extract functions from object files and transform them into Go assembly on linux/amd64 [xpost from /r/GolangUnofficial]

<p><a href="https://github.com/opennota/gas">https://github.com/opennota/gas</a></p> <p>This tool extracts functions from executables/object files/libraries using <code>objdump -d</code> and then transforms them into Go assembly. The assembly generated is by no means ready to use (you need to manua...阅读全文

资源 2015-12-05 03:51:08 xuanbao

Go linux 实践4

这是目前学习的最难的Go demo例子 ***************************************** 如果能看懂,你就出师了,我的任务也就结束了 ***************************************** package main import ( "fmt") type Fetcher interface { Fetch(url string) (body string, urls []string, err error)} func Crawl(url string, depth int, fetcher Fetcher) { if depth <= 0 { return } body, urls, err := fetcher.Fetch(...阅读全文

博文 2017-09-06 16:30:17 woodzcl

golang快速入门[3]-go语言helloworld

golang快速入门[3]-go语言helloworld在之前,我们介绍了如何在windows、macos以及linux平台构建go语言的开发环境[golang快速入门[2.1]-go语言开发环境配置-windows]()[golang快速入门[2.2]-go语言开发环境配置-macOS]()[golang快速入门[2.3]-go语言开发环境配置-linux]()本文将介绍如何书写、编译、并运行第一个go语言程序同时详细介绍其内部机制书写第一个go语言程序首先我们可以在任意位置新建一个文件,命名为main.gogo源文件以.go作为后缀,命名时建议统一为小写英文字母用任意的文本编辑器(vim,notepade,emacs…)编辑文件,书写如下代码package main import "fm...阅读全文

博文 2020-02-09 00:33:10 jonson_jackson

图解kubernetes资源QOS机制实现原理

QOS是k8s中一种资源保护机制,其主要是针对不可压缩资源比如的内存的一种控制技术,比如在内存中其通过为不同的Pod和容器构造OOM评分,并且通过内核的策略的辅助,从而实现当节点内存资源不足的时候,内核可以按照策略的优先级,优先kill掉哪些优先级比较低(分值越高优先级越低)的Pod,今天来分析下背后的实现 1.关键基础特性 1.1 一切皆文件 在Linux中一切皆文件,控制CGroup本身也是通过配置文件进行的,这是我创建的一个内存Lmits为200M的Pod的容器的配置 # pwd /sys/fs/cgroup # cat ./memory/kubepods/pod8e172a5c-57f5-493d-a93d-b0b64bca26df/f2fe67dc90cbfd57d873cd8a8...阅读全文

博文 2020-02-20 10:34:17 8小时_2020

5.1.1Golang开发环境搭建

目录:https://www.jianshu.com/p/e406a9bc93a9 搭建go开发环境 安装go开发包 Go官方镜像站(推荐):https://golang.google.cn/dl/ 根据系统下载相应的安装包。Windows直接是msi文件,直接安装即可。 安装完成 配置GOPATH 因为go是一个编译性语言,所以他需要一个自己的工作空间来存储代码文件(src),中间文件(pkg),编译文件(bin)。 示意图 同时配置环境变量: 示意图 安装vscode 官方文档:https://code.visualstudio.com/docs/?dv=win 中文插件 go插件 第一个go语言程序 目录树 package main import "fmt" func main() {...阅读全文

Golang——安装和第一个Go语言

Go(Golang)、静态编译型语言 UTF8编码 1.官网下载安装包(Mac) 安装包完成之后,在命令后确认 $ go version go version go1.14.2 darwin/amd64 # Go语言默认安装目录 $ echo $GOROOT #查看go的相关环境变量 $ go env 2.配置GOPATH GOPATH是一个环境变量,用来表示go项目的存放路径(工作目录)。 GOPATH路径最好只设置一个,所有的项目代码放到GOPATH的src目录下。 3.Go目录结构 在GOPATH有三个目录 (1)bin:存放编译后的二进制文件 (2)pkg:存放编译后的库文件 (3)src:存放源码文件,可以放多个项目的 image.png image.png image.png 4...阅读全文

ChainDesk : Go语言入门指南(一)

第一章:Ubuntu的安装http://www.chaindesk.cn/witbook/13/172?20190211meiti第二章:Linux文件管理和常用命令http://www.chaindesk.cn/witbook/13/173?20190211meiti第三章:配置golang环境http://www.chaindesk.cn/witbook/13/174?20190211meiti第四章:第一个helloworld程序http://www.chaindesk.cn/witbook/13/175?20190211meiti第五章:安装goland集成开发工具http://www.chaindesk.cn/witbook/13/176?20190211meiti第六章:基本语法...阅读全文

博文 2019-02-11 14:34:45 ChainDesk

Linux服务器安全策略实战免费送给运维工程师

课程介绍 安全是IT行业一个老生常谈的话题了,从近几年层出不穷的安全事件中折射出了很多安全问题,处理好信息安全问题已变得刻不容缓。 因此做为运维人员,就必须了解一些安全运维准则,同时,要保护自己所负责的业务。 本课程主要讲解Linux服务器的安全策略。 课程目标 • 掌握Linux服务器安全策略 适合人群 • 运维工程师 课时列表 • 课时1:Linux服务器后门入侵检测工具和使用方法 • 课时2:Linux服务器遭受网络攻击后的处理思路和措施 开始学习http://click.aliyun.com/m/27897...阅读全文

golang环境搭建

Go 的官方网站:http://golang.org/ 国内下载地址:https://studygolang.com/dl windows环境: 根据操作系统的位数选择相应的版本,windows选msi版本 安装后在环境变量中配置GOPATH环境变量 我的电脑 --》 右击属性 --》 ⾼级系统设置 --》 环境变量 --》 系统环境变量 --》 添 加GOPATH Linux环境: 下载相应的.tar.gz压缩包, tar 解压压缩包 tar -xzvf go1.x.x.linux-amd64.tar.gz 设置工作区: #linux设置GOPATH vim .bashrc export GOROOT=$HOME/go export PATH=$PATH:$GOROOT/bin expor...阅读全文

博文 2019-12-26 08:32:48 程序小白菜

go开发环境搭建

windows下的开发环境配置 1. 下载goland 在jetbrains官网下载goland安装包并安装 2. 下载golang 在studygolang.com网站下载go安装包并安装 注意不要下载源码,源码需要编译后才能使用。 3.确认安装是否正确 安装完成后,环境变量已经设置正确。打开cmd,运行go version确认安装正确 go version go version go1.13.6 windows/amd64 4. 启动goland Ubuntu1804下的开发环境配置 1. 安装golang安装包 sudo apt install golang-go 检查安装是否正常 go version go version go1.10.4 linux/amd64 编译前的环境变量设...阅读全文

博文 2020-02-01 19:32:40 祝涛_9eee

Go语言交叉编译工具gox

## 基本介绍 交叉编译是为了在不同平台编译出其他平台的程序,比如在Linux编译出Windows程序,在Windows能编译出Linux程序,32位系统下编译出64位程序,今天介绍的gox就是其中一款交叉编译工具。 ## 配置环境 首先配置好Go语言的环境变量,并在`~/.bash_profile`中设置,简单说明一下为什么要添加至该文件,首先以下代码在终端执行完成后只对当前会话有效,关闭终端变量就失效了,而`.bash_profile`文件在用户每次登录时都会执行一次,把环境变量设置到该文件中,每次登录都会初始化环境变量。当然,放在`~/.bashrc`中也是可以的,它不仅会在登录时执行,还会在每次打开终端时执行。 ```bash export GOPATH=${HOME}/go exp...阅读全文

博文 2019-06-13 22:44:18 EnochZg

Go项目简单接入travis ci

上一篇文章提到了npm的接入 travis 实现自动发布 npm 包的方法,本文主要讲述 Go 项目的使用,主要分为执行单元测试和 build 打包发步到 github release。具体 travis 的基本操作参考上文即可,本文只讲述不同的部分 单元测试 本文不讲述 Go 的单元测试如何编写,这里直接以filenamify(一个合法化文件路径的库)为例子。已为filenamify.go编写测试文件filenamify_test.go。只需要在tracis中执行go test -v即可。 # https://github.com/flytam/filenamify/blob/master/.travis.yml language: go go: - 1.13.x env: - GO111...阅读全文

博文 2020-03-22 12:34:19 flytam

「golang」go 交叉编译 (转)

自“http://blog.csdn.net/panshiqu/article/details/53788067” Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下,非常好用,这里备忘一下。 Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go Linux 下编译 Mac 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go CGO...阅读全文

golang ssh包使用方法介绍

在使用gexpect包发现很多问题之外,这里又尝试使用ssh user@127.0.0.1的思路进行用户切换。这里记录下具体的使用方法,遇到的ssh: must specify HostKeyCallback 问题的解法方法及最终使用过程中的问题。 一、ssh包crypto的安装 ssh使用的包为"golang.org/x/crypto/ssh",由于golang.org被墙了,所以这里使用github上的镜像版本,所以这里不能使用go get进行安装(不要使用go get,不要使用go get,不要使用go get)。使用方法为git clone https://github.com/golang/crypto.git后,放到$GOPATH/src/golang.org/x/目录下面即可。...阅读全文

博文 2018-12-18 00:34:43 易霂