-
golang 小知识-持续更新中
所属栏目:[大数据] 日期:2020-12-16 热度:73
Go 的原生数据类型可以分为基本类型和高级类型,基本类型主要包含 string, bool, int 及 float 系列,高级类型包含 struct,array/slice,map,chan,func 。 ? 相比 Java,Python,Javascript 等引用类型的语言,Golang 拥有类似C语言的指针这个相对古老的[详细]
-
从零搭建基于golang的个人博客网站
所属栏目:[大数据] 日期:2020-12-16 热度:70
原文链接 : http://www.bugclosed.com/post/14 从零搭建个人博客网站需要包括云服务器(虚拟主机),域名,程序环境,博客程序等方面。本博客 就是通过这几个环节建立起来的,下面总结梳理一下环节的具体过程。 云服务器 博客程序需要有一个服务器部署和运行[详细]
-
golang 如何使用模版?
所属栏目:[大数据] 日期:2020-12-16 热度:71
package mainimport ( "fmt" "net/http" "log" "html/template")func main () { //实例化一个 HTTP app := http.NewServeMux(); app.HandleFunc("/",func(w http.ResponseWriter,r *http.Request){ switch r.Method { case "GET": tmpl,_ := template.ParseF[详细]
-
golang 小例子
所属栏目:[大数据] 日期:2020-12-16 热度:123
import ( "bytes" "encoding/binary" "encoding/gob" "fmt" ) func str_to_byte(src string) []byte { //strSlice := []string{src} buffer := bytes.Buffer{} gob.NewEncoder(buffer).Encode(src) return buffer.Bytes() } func uint64_to_byte(src uint64)[详细]
-
Golang教程:goroutine协程
所属栏目:[大数据] 日期:2020-12-16 热度:65
在上一篇中,我们讨论了并发,以及并发和并行的区别。在这篇教程中我们将讨论在Go中如何通过Go协程实现并发。 什么是协程 Go协程(Goroutine)是与其他函数或方法同时运行的函数或方法。可以认为Go协程是轻量级的线程。与创建线程相比,创建Go协程的成本很[详细]
-
golang []byte和string相互转换
所属栏目:[大数据] 日期:2020-12-16 热度:59
golang []byte和string相互转换 测试例子 package main?import (????"fmt")?func main() {????str2 := "hello"????data2 := []byte(str2)????fmt.Println(data2)????str2 = string(data2[:])????fmt.Println(str2)}[详细]
-
golang post 代码片段
所属栏目:[大数据] 日期:2020-12-16 热度:62
package mainimport ("fmt""net/http""net/url""strings")func main() {httpDo()}func httpDo() {proxy := func(_ *http.Request) (*url.URL,error) {return url.Parse("http://120.78.78.141:8888")}transport := http.Transport{Proxy: proxy}client := ht[详细]
-
Golang教程:类型
所属栏目:[大数据] 日期:2020-12-16 热度:102
下面是 Go 支持的基本类型: bool Numeric Types? int8,int16,int32,int64,int uint8,uint16,uin32,uint64,uint float32,float64 complex64,complex128 byte rune string bool bool ?类型表示真假值,只能为? true ?或? false 。 import " fmt " func main()[详细]
-
go 排序sort的使用
所属栏目:[大数据] 日期:2020-12-16 热度:57
已知一个的struct组成的数组,现在要按照数组中的一个字段排序。python有sort方法,那golang要怎么实现呢?其实golang也有sort方法,并且使用简单,功能强大。 我们先看一下sort.Sort()的源码 func Sort(data Interface) {// Switch to heapsort if depth of[详细]
-
Golang教程:指针
所属栏目:[大数据] 日期:2020-12-16 热度:104
什么是指针 指针是存储一个变量的内存地址的变量。? ? 在上图中,变量? b ?的值是? 156 ,存储在地址为? 0x1040a124 ?的内存中。变量? a ?存储了变量? b ?的地址。现在可以说? a ?指向 b 。 指针的声明 一个指针变量指向了一个值的内存地址。 类似于变量和常[详细]
-
Golang如何使用websocket
所属栏目:[大数据] 日期:2020-12-16 热度:183
下载websocket包 $ go get golang.org/x/net/websocket 如果下载失败,可能是被墙了。 package golang.org/x/net/websocket: unrecognized import path "golang.org/x/net/websocket" (https fetch: Get https://golang.org/x/net/websocket?go-get=1: dial t[详细]
-
golang json 编码解码
所属栏目:[大数据] 日期:2020-12-16 热度:197
json 编码 package mainimport ("encoding/json""fmt")type Person struct {Name string `json:"name"`Age int `json:"age"`}func main() {person := Person{"ruby",24}b,err := json.Marshal(person)if err == nil {fmt.Printf("%sn",b)} else {// 错误处[详细]
-
golang 解码未知键的 json 字符串
所属栏目:[大数据] 日期:2020-12-16 热度:117
我们可以使用 interface 接收 json.Unmarshal 的结果,然后利用?type assertion?特性来进行后续操作。 ? package mainimport ("encoding/json""fmt")func main() {b := []byte(`{"Name":"Wednesday","Age":6,"Parents":["Gomez","Morticia"]}`)var f interfa[详细]
-
golang在gitlab中的工作流
所属栏目:[大数据] 日期:2020-12-16 热度:84
在敏捷开发的时代,快速的编码,code review,测试,部署,是提升程序员效率的关键。 同时在基础工具完备的如今,我们甚至无需过多的操作就可以轻松实现上述步骤,本文就以gitlab为例,分享一下golang项目结合gitlab如何实现自动化CI。 在gitlab中执行CI,需要在项目[详细]
-
go语言并发获取hls,测试流媒体服务的拉流压力
所属栏目:[大数据] 日期:2020-12-16 热度:116
前两天,我们的开发的兄弟们终于将我们的流媒体整体方案实现并部署了,虽然都是用的开源的项目,但是我们内部还是要测试服务表现的,这个任务就被扔给我了。 先不看内部各个链路的性能损耗,先测试单源,多路点播取流的场景。 使用golang,写程序如下: pack[详细]
-
与机器共生
所属栏目:[大数据] 日期:2020-12-16 热度:196
最近写代码比较少,干脆分享一点八卦,博诸君一笑:) ? 几年前,在GitHub上建了几个golang的项目,主要是练手用的,也没几个人关注。最近几天,忽然几个仓库同时收到PR,类似这样的,大意就是对仓库跑了下gofmt,其他别的都没干,请合并修改。然后在issue里写[详细]
-
golang二叉树前序,中序,后序非递归遍历算法
所属栏目:[大数据] 日期:2020-12-16 热度:153
package?main import?( ???"container/list" ???"fmt" ) //?Binary?Tree type?BinaryTree?struct?{ ???Data??interface{} ???Left??*BinaryTree ???Right?*BinaryTree } //?Constructor func?NewBinaryTree(data?interface{})?*BinaryTree?{ ???return?Binar[详细]
-
golang 结构体中的匿名接口
所属栏目:[大数据] 日期:2020-12-16 热度:197
golang 结构体中的匿名接口 代码示例 golang 中,可以给结构体增加匿名field,可参考 unknwon 大神的书。 匿名字段和内嵌结构体 但,golang同时也可以给结构体定义一个匿名interface field,用法: 标准库 sort 中,有下面的写法: type Interface interface[详细]
-
解决vscode无法提示golang的问题
所属栏目:[大数据] 日期:2020-12-16 热度:145
https://github.com/Microsoft/vscode-go/wiki/Go-with-VS-Code-FAQ-and-Troubleshooting ? Q: Auto-completions stopped working. What do I do? Run gocode close in a terminal and try again. If it still doesnt work,run go get -u github.com/mdempsk[详细]
-
驳2B文 "我为什么放弃Go语言"
所属栏目:[大数据] 日期:2020-12-16 热度:183
? ? ? 此篇文章流传甚广,其实里面没啥干货, 而且里面很多观点是有问题的. 这个文章在?golang-china?很早就讨论过了. 最近因为 Rust 1.0 和 1.1 的发布,导致这个文章又出来毒害读者. 所以写了这篇反驳文章,指出其中的问题. 原文链接:http://www.voidcn.com/[详细]
-
golang_正则表达式_匹配局域网
所属栏目:[大数据] 日期:2020-12-16 热度:156
做一个微服务,需要对http头域里的remoteip做访问限制:所有局域网都要鉴权,其中一些特殊ip,如网关地址,直接拒绝,防止公网访问。正则表达式很好的解决了这个,直接贴代码,读者拿来直接改改就能用了。 ? 核心正则: 10.*.*.*10.(25[0-5]|2[0-4][0-9]|[0[详细]
-
go语言---传值和传引用
所属栏目:[大数据] 日期:2020-12-16 热度:130
go语言---传值和传引用 https://blog.csdn.net/cyk2396/article/details/78893828 1.定义: b = a; b.modify(); 如果b的修改不会改变a的值,那么是传值;否则,是传引用 2.golang中大多数是传值的,有: 基本类型:byte,int,bool,string 复合类型:数组,数组切[详细]
-
golang基础---Slice切片
所属栏目:[大数据] 日期:2020-12-16 热度:105
切片Slice在go语言中是单独的类型(指向底层的数组),不同于python(对可迭代对象操作的工具),注意区分数组和slice的区别 定义一个空slice,格式 var s []int ,这种既没有长度也没有元素赋值的类型(相比叫array) 数组的基本操作如下 ,类似与python中列表[详细]
-
golang 中io包用法(一)
所属栏目:[大数据] 日期:2020-12-16 热度:149
本文转自Golove博客:http://www.cnblogs.com/golove/p/3276678.html? io 包为I/O原语提供了基础的接口.它主要包装了这些原语的已有实现,如 os 包中的那些,抽象成函数性的共享公共接口,加上一些其它相关的原语。 由于这些接口和原语以不同的实现包装了低[详细]
-
froala富文本编辑器与golang、beego,脱离ueditor苦海
所属栏目:[大数据] 日期:2020-12-16 热度:80
一直用百度的ueditor,可是阿里云这种"wo chuo"的云上部署的beego做的服务,总是出现ueditor.all.min.js语法错误,清理浏览器缓存后又会好起来。本地调试也没问题。反复无常。 用froala也是因为体验了官方的demo,带图片的word直接粘贴,不像ueditor那样需要[详细]
