go 语言镜像 && idea 配置

安装与镜像设置 安装地址: 官方地址为:https://golang.org/dl/ 国内地址为:https://studygolang.com/dl 两个地方都可以下载安装包。 安装很简单,不说了哈。 如果安装成功了,在 terminal 输入 go env image 打印出很多信息,就知道是成功了。 那么我主要用的版本是 1.13.7 , 如果是 1.13 以下版本,请升级到 1.13以上,因为1.13以上官方增加了一个镜像功能,对于我们国内同学很有用。 其中 go env 列出了环境的配...阅读全文

简书 2020-02-20 19:33:14 Kare

offer = 心态 X (实力 + 面试技巧 + 秘籍) + 缘分运气

写在之前 疫情原因,被困家里,但是依旧阻挡不了我面试的步伐,基本上最近一个月不是电话就是视频面试。虽然失败很多,但是也收获不少。虽然,我的面试经历和一些面霸和收割机的大神相比绝不算丰富,但我的这些经历应该能代表很大一部分人的心路历程: 从无忧无虑也无知的状态,然后遭遇挫败,跌入低谷,连续数天的黑暗,慢慢调整,逼着自己不能松懈,看到改变,收获肯定,分享经历。 经历不知道到多少次电话面、视频面,然后这是我最直观的感受: offer = 心态 X (实力 + 面试技巧 + 秘籍) + 缘分运气 我就从...阅读全文

简书 2020-02-20 19:33:08 java菲

Go语言学习(二):字符串

在Go中字符串作为内建类型,和C语言是不一样的。C中没有字符串类型, 所有需要通过字符数组来表示字符串,并以指针来传递。在Go中字符串是一个定长字符数组,所以当其创建之后就无法直接改变了。1、错误的字符串长度的获取: 从字符串字面值看len(s)的结果应该是7,但在Golang中string类型的底层是通过byte数组实现的,在unicode编码中,中文字符占两个字节,而在utf-8编码中,中文字符占三个字节而Golang的默认编码正是utf-8.2、正确的字符串长度获取: 那么问题来了,run...阅读全文

简书 2020-02-20 19:32:49 算命的Chalk

Dig101:Go之读懂map的底层设计

Dig101: dig more, simplified more and know more 在golang中,map是一个不可或缺的存在。 它作为哈希表,简单易用,既能自动处理哈希碰撞,又能自动扩容或重新内存整理,避免读写性能的下降。 这些都要归功于其内部实现的精妙。本文尝试去通过源码去分析一下其背后的故事。 我们不会过多在源码分析上展开,只结合代码示例对其背后设计实现上做些总结,希望可以简单明了一些。 希望看完后,会让你对 map 的理解有一些帮助。网上也有很多不错的源码分析,会附到文末,...阅读全文

Segmentfault 2020-02-24 16:32:33 newbmiao

K8s原生Jenkins-X和Tekton Pipeline

Jenkins X不是Jenkins,它是完全从头开始重写的。 Jenkins X比Jenkins更聚焦于特定领域。它提供了一种使用特定工具(Kubernetes Helm Tekton Skaffold Flagger…)来构建和部署应用程序的方式。如果您喜欢这样使用它,那将是一种享受,如果您不喜欢,那么另一种工具更适合。 本文将为您讲述Jenkins X架构。我们将首先描述k8s 原生和CRD,这将有助于我们了解Tekton的工作原理和作用。然后我们来看看Jenkins X,它如何在后台使用...阅读全文

Segmentfault 2020-02-24 15:32:33 iyacontrol

Tips:如何优雅的使用GDB调试Go

Tips: all for hands-free. Tips 系列:记录日常解决问题、解放双手的一些小技巧。 目的只有一个:不被重复的琐事麻痹,能偷懒的绝不手软。 今天聊聊如何优雅的使用GDB调试Go程序。 GDB有啥用? 想了解代码底层的话,它是一大利器,更别说定位问题啥的。 具体骚操作见曹大的使用 debugger 学习 golang 但GDB从安装到可用,可能有一大堆问题要解决(尤其在Mac上),我们怎么能优雅的使用它,避免陷入问题中,是本文的重点。 (涉及Docker和Mac两个平台上运...阅读全文

掘金 2020年02月20日 newbmiao

Dig101:Go之string那些事

Dig101: dig more, simplified more and know more string这么简单,我想你也一直是这样想的,没关系,我也没打算把它搞复杂。 别着急,我们先从string的拼接操作 + 开始 0x01 string对 "+" 拼接的优化 如下代码, s2, s3, s4 具体执行时有啥不同 s1 := "x" s2 := s1 + "y" + "x" + "z" s3 := s1 + "y" + s1 + "z" + s1 s4 := s1 + "y" + s1 ...阅读全文

Segmentfault 2020-02-24 14:32:34 newbmiao

go语言使用哈希算法对用户输入的密码进行加密用户登录时对用户的密码进行比对

# 哈希算法 ** 文章转自go语言中文文档 [http://www.topgoer.com](http://www.topgoer.com/?from=studygolang "文章转自go语言中文文档http://www.topgoer.com") ** ### 使用场景 + 对用户输入的密码进行加密 + 用户登录时对用户的密码进行比对 ### 例子 ```go package main import ( "errors" "fmt" ...阅读全文

Go语言中文网 2020-02-20 11:02:46 lu569368

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

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

掘金 2020年02月19日 8小时_2020

go安装net

为了使包的导入方式不变,我们需要在src目录下面构造目录结构$mkdir -p $GOPATH/src/golang.org/x/$cd $GOPATH/src/golang.org/x/$git clone https://github.com/golang/net.git net$go install net执行go install之后没有提示,就说明安装好了。原文链接:https://blog.csdn.net/xie1xiao1jun/article/details/79421136阅读全文

简书 2020-02-20 09:32:46 路人_0dd1

五分钟用Docker快速搭建Go开发环境

image 挺早以前在我写过一篇用 Docker搭建LNMP开发环境的文章:用Docker搭建Laravel开发环境,里面详细介绍了将 nginx、 mysql和 php三个容器用 docker-compose编排成 LNMP开发环境的步骤,今天来说说怎么用 Docker快速搭建 Go语言项目的开发环境。 因为靠Go本身自带的标准库就能实现高性能的 HTTP服务器,不熟悉的同学买它,呃说错了,看它:深入学习用Go编写HTTP服务器。所以用 Docker 构建 Go的开发环境比构建 LNMP 开发...阅读全文

简书 2020-02-20 09:32:46 KevinYan_a990

Golang应用领域

1.区块链的应用开发区块链应用区块链技术,简称BT(Blockchain technology),也被称为分布式账本技术,是一种互联网数据库技术,其特点时去中心化、公开透明,让每个人均可参与数据库记录。2.后台的服务应用后端服务器应用美团后台流量支撑程序,支撑主站后台流量(排序,推荐,搜索等),提供负载均衡,cache,容错,按条件分流,统计运行指标(qps,latency)等功能。3.云计算/云服务后台应用盛大云CDN(内容分发网络)应用范围:CDN的调度系统、分发系统、监控系统、短域名服务,...阅读全文

简书 2020-02-20 09:32:45 阿泽记录生活记录爱

1.golang从零搭建游戏服务器框架 之 实现最简单的回显服务器

写在前面的话 首先,我是一个golang语言的初学者, 这里纯粹是学习笔记,以便以后返回来查找,防止遗忘。文章内容来源于 刘丹兵老师的教程, 大家可以直接去看老师的视频来进行学习。 需求分析 搭建一个最基础的服务器框架,实现客户端向服务器发送一条数据,服务器将该数据返回到客户端 根据需求,对服务器进行如下的设计 图片.png 编码实施 首先,先建立我们的目录结构 在自己golang环境的src目录下 新建文件下 zinx,这是我们游戏框架的名称(沿用了视频中的名称), 然后,在zinx目录下新建...阅读全文

简书 2020-02-20 09:32:44 孟安乐Aaron

golang的排序功能

golang的排序功能 首先明确两个基础概念 排序基本上针对slice类型 可排序的元数据类型有整数,浮点数,和字符串 接着讨论元数据类型的排序 sort模块提供了函数给元数据类型排序。 func Ints(a []int) func Float64s(a []float64) func Strings(a []string) 然后到排序怎么处理呢 func Reverse(data Interface) Interface 这个函数的用法很奇怪,下面用例子说明: 数据类型sort.Interf...阅读全文

简书 2020-02-20 09:32:43 CodingCode

golang语言map的并发和排序

golang语言map的并发和排序 map的并发问题 golang缺省的map不是thread safe的,如果存在读写并发的使用场景,必须在外面使用lock机制。 包sync里面引入一个安全map; type Map struct func (m *Map) Store(key, value interface{}) func (m *Map) Load(key interface{}) (value interface{}, ok bool) func (m *Map) Range(f fu...阅读全文

简书 2020-02-20 09:32:42 CodingCode

Go语言的诞生小故事

1.Go语言的核心开发团队-三个大牛Ken Thompson(肯-汤普森):1983年图灵奖(Turing Award)和1988年美国国家技术将(National Medal of Technology)得主。他与Dennis Ritchie是Unix的原创者。Thompson也发明了后来衍生出C语言的B程序语言,同时也是贝尔实验室(Ball Labs)的Unix团队,和Plan 9操作系统计划的成员。他与Thompson共事多年,并共创出广泛使用的UTF-8字节编码。Robert Giese...阅读全文

简书 2020-02-20 09:32:42 阿泽记录生活记录爱

Dig101:Go之灵活的slice

Dig101: dig more, simplified more and know more Slice作为go常用的数据类型,在日常编码中非常常见。相对于数组的定长不可变,slice使用起来就灵活了许多。 0x01 slice 到底是什么? 首先我们看下源码中slice结构的定义 // src/runtime/slice.go type slice struct { array unsafe.Pointer len int cap int } slice数据结构如上,Data指向底层引用的数...阅读全文

Segmentfault 2020-02-24 12:32:33 newbmiao

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

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

Segmentfault 2020-02-22 21:32:33 仔仔