-
k8s安装编译和golang环境搭建
所属栏目:[大数据] 日期:2020-12-16 热度:196
1、kubernetes的github地址 https://github.com/kubernetes/kubernetes git clone https://github.com/kubernetes/kubernetes到本地 安装golang环境(go中文社区https://studygolang.com/) 设置环境变量 export GOROOT=/usr/lib/golang export GOBIN=$GOROO[详细]
-
golang socket断点续传大文件
所属栏目:[大数据] 日期:2020-12-16 热度:154
在日常编程中,我们肯定会遇到用socket传送文件内容,如果是大文件的,总不能传送到一半因某原因断掉了,又从新传送文件内容吧。对,我们需要续传,也就是接着上次传送的位置继续发送文件内容。 续传的话,其实并不难,我理解的思路大概如下: 客户端发送消[详细]
-
Go 关于interface的理解(一)
所属栏目:[大数据] 日期:2020-12-16 热度:93
Go 中的 interface 是一种抽象类型。一个 interface 就是包含了一系列行为的method集合。 关于 interface 的定义,以 Writer 为例: package iotype Writer interface { Write(p []byte) (n int,err error)} Go 中的 interface 属于隐式接口。一个类型如果拥[详细]
-
[golang]golang中的双引号、单引号、反引号
所属栏目:[大数据] 日期:2020-12-16 热度:76
go语言中不倾向使用单引号表示字符串,单引号用于表示Golang的一个特殊类型:rune,类似其他语言的byte但又不完全一样,是指:码点字面量(Unicode code point),不做任何转义的原始内容 双引号用来创建可解析的字符串字面量(支持转义,但不能用来引用多行)[详细]
-
IO模型
所属栏目:[大数据] 日期:2020-12-16 热度:168
一:IO简介 Unix(like)中,一切皆文件。Socket、FIFO、管道、终端都是文件,一切都是流。在信息交换的过程中,实际都是对这些流进行的数据收发操作,简称I/O操作(系统调用read、write)。而流有很多,于是就用文件描述符(fd)来区分具体是哪个流。For ex[详细]
-
Go 关于interface的理解(二)
所属栏目:[大数据] 日期:2020-12-16 热度:69
关于一个类型持有一个方法当中的细节,其中有一条: 对于一个命名过的具体类型T,它一些方法的接收者是类型T本身而另一些则是T的指针。在T类型的参数上调用一个*T的方法是合法的,只要这个参数时一个变量 这仅仅是一个语法糖,编译器隐式地获取了它的地址。[详细]
-
如何在Golang中以未知参数执行系统命令
所属栏目:[大数据] 日期:2020-12-16 热度:136
我有一堆系统命令,它们类似于将新内容附加到文件。我写了一个简单的脚本来执行系统命令,如果有单词如’ls’,’date’等等,那么这个命令的效果很好。但是如果命令大于这个程序,程序就会死机。 以下是代码 package mainimport ( "fmt" "os/exec" "sync")f[详细]
-
golang---vim语法高亮
所属栏目:[大数据] 日期:2020-12-16 热度:150
转自:https://studygolang.com/articles/7493 golangtc.com/download上面没有1.3了,看这里吧:https://www.linuxidc.com/Linux/2014-05/102044.htm 我直接用的方法二。 -----------分割线,以下是原文内容----------- 下载 ??在http://www.golangtc.com/do[详细]
-
ctags5.8通过自定义扩展支持golang语言
所属栏目:[大数据] 日期:2020-12-16 热度:134
转自:http://www.jb51.cc/article/p-swdqgclq-bqk.html 亲测可用,注意直接在~/.ctags中增加如下内容,不要添加其它废话如“# File: ~/.ctags”: --langdef=Go --langmap=Go:.go --regex-Go=/func([ t]+([^)]+))?[ t]+([a-zA-Z0-9_]+)/2/d,func/ --re[详细]
-
go语言常用函数:copy
所属栏目:[大数据] 日期:2020-12-16 热度:139
转自 copy函数用于 将内容从一个数组切片复制到另一个数组切片 。如果加入的两个数组切片不一样大,就会按其中较小的那个数组切片的元素个数进行复制。 slice1 := [] int {1 , 2 , 3 , 4 , 5 } slice2 := [] int {5 , 3 } copy (slice2,slice1) // 只会复制s[详细]
-
go语言常用函数:make
所属栏目:[大数据] 日期:2020-12-16 热度:171
转自 简介 内建函数 make 用来为 slice,map 或 chan 类型分配内存和初始化一个对象(注意:只能用在这三种类型上) 跟 new 类似,第一个参数也是一个类型而不是一个值,跟 new 不同的是,make 返回类型的引用而不是指针,而返回值也依赖于具体传入的类型 make[详细]
-
go中int到底有多少位?
所属栏目:[大数据] 日期:2020-12-16 热度:132
There are also two types called just int and uint that are the natural or most efficient size of signed and unsigned integers on a particular platform ; int is by far the most widely used numeric type. Both these types have the same size,e[详细]
-
使用travis进行持续集成golang项目
所属栏目:[大数据] 日期:2020-12-16 热度:105
虽然golang的工程工具已经非常完善了,比如测试、代码格式化等等。但是如果开发library开源到github的话,这些东西是可以使用自动化工具完成的,那就是 travis 使用步骤 1.开发好需要集成的library以及测试用例 2.在项目根目录新建 .travis.yml 文件 languag[详细]
-
gf框架之服务注册 - 框架核心组件,比你以为的更强大
所属栏目:[大数据] 日期:2020-12-16 热度:117
文章来源:http://gf.johng.cn/494368 当用户访问某个URI时,Web Server能够精确的调用特定的服务接口提供服务,这些都是通过“服务注册”来实现的。Web Server提供服务需要回调函数/方法/对象/控制器的支持,ghttp包支持多种服务注册模式,为开发者提供非常[详细]
-
gf框架之gbinary - 二进制数据操作模块
所属栏目:[大数据] 日期:2020-12-16 热度:160
文章来源:http://gf.johng.cn/500342 gf框架提供了独立的二进制数据操作包gbinary,主要用于各种数据类型与[ ]byte二进制类型之间的相互转换;以及针对于整型数据进行精准按位处理的功能。常用于网络通信时数据编码/解码,以及数据文件操作时的编码/解码。[详细]
-
Golang使用心得
所属栏目:[大数据] 日期:2020-12-16 热度:163
https://blog.csdn.net/wjk88888/article/details/45055931 先大概说下为什么用 Golang。我是一个对语言有洁癖的人,曾经是一个C+Python 的坚定呐喊者,最常说的一句话就是,只要熟练这两种,什么情况都能应付,根本不用 Java 和 C++(纯指我所在的领域)。核[详细]
-
golang(6):使用beego + ace admin 开发后台系统 CRUD,并且使
所属栏目:[大数据] 日期:2020-12-16 热度:175
本文的原文连接是: https://blog.csdn.net/freewebsys/article/details/79884722 1,关于golang admin ace admin 是一个非常好的后台系统ui。 golang是我非常喜欢的一个语言。 并且写了一个admin系统。 写了个博客: https://blog.csdn.net/freewebsys/artic[详细]
-
不得不知道的golang知识点之nil
所属栏目:[大数据] 日期:2020-12-16 热度:120
golang中的 nil ,很多人都误以为与Java、PHP等编程语言中的null一样。但是实际上Golang的niu复杂得多了,如果不信,那我们继续往下阅读。 nil 为预声明的标示符,定义在 builtin/builtin.go , // nil is a predeclared identifier representing the zero v[详细]
-
golang中的RPC调用服务器方法
所属栏目:[大数据] 日期:2020-12-16 热度:197
原文链接,参考Golang中文文档:http://docscn.studygolang.com/pkg/net/rpc/#NewServer rpc 包提供了一个方法来通过网络或者其他的I/O连接进入对象的外部方法. 一个server注册一个对象, 标记它成为可见对象类型名字的服务。注册后,对象的外部方法就可以远[详细]
-
golang笔记——数组与切片
所属栏目:[大数据] 日期:2020-12-16 热度:150
一、切片的定义 我们可以从数组(go语言中很少直接使用数组)或者切片来初始化一个新的切片,也可以直接通过 make 来初始化一个所有元素为默认零值的切片。 // 1、通过数组来初始化切片 arr := [...] int { 1 , 2 ,128);font-size:12px;line-height:1.5;">3[详细]
-
Go实战--golang中使用redis(redigo和go-redis/redis)
所属栏目:[大数据] 日期:2020-12-16 热度:109
何为redis 官网: https://redis.io/ Redis is an in-memory database open-source software project implementing a networked,in-memory key-value store with optional durability. Redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可[详细]
-
golang 构建工具之 Makefile
所属栏目:[大数据] 日期:2020-12-16 热度:77
可能是因为编译太简单了,golang 并没有一个官方的构建工具(类似于 java 的 maven 和 gradle之类的),但是除了编译,我们可能还需要下载依赖,运行测试,甚至像 easyjson,protobuf,thrift 这样的工具下载和代码生成,如果没有构建工具,这些工作就会非常[详细]
-
golang 性能优化之 bitset 代替 hashset
所属栏目:[大数据] 日期:2020-12-16 热度:169
hashset 是一种非常高效的数据结构,插入和查询的复杂度都是 O(1),基本上能满足大部分场景的性能需求,但在一些特殊的场景下,频次非常高的调用依然会成为性能瓶颈(用 pprof 分析),比如广告里面的定向逻辑,在一次请求中过滤逻辑可能会执行上千次,而其[详细]
-
golang 性能优化之累加哈希
所属栏目:[大数据] 日期:2020-12-16 热度:132
很多时候性能问题总是发生在一些不起眼的地方。最近做一个性能问题分析的时候发现,一个函数里面使用由于字符串拼接产生的临时字符串导致内存上涨了40%(120G 内存的机器),而这些临时字符串给 GC 也带来了非常大的负担,成为主要的性能瓶颈,而这些字符串[详细]
-
Golang:不同结构类型之间的转换是否可能?
所属栏目:[大数据] 日期:2020-12-16 热度:60
假设我有两种类似的类型: type type1 []struct { Field1 string Field2 int}type type2 []struct { Field1 string Field2 int} 有没有直接的方式来写一个type1到type2的值,知道它们有相同的字段? (除了编写一个将所有字段从源复制到目标的循环) 谢谢。 对[详细]
