随笔分类 - go
go语言及项目
摘要:三部分: teaweb teaweb-agent teaweb-cluster agent 配置: 不可以填 127.0.0.1,应该填 浏览器可以访问的master的地址master: http://192.168.162.63:7777 数据库用户要有创建库和表的权限 文档:http://tea
阅读全文
摘要:生成子key: 通配符号 # 订阅:通配符 + package main import ( "encoding/json" "fmt" "os" "time" emitter "github.com/emitter-io/go" ) type MyBody struct { Id uint64 Bo
阅读全文
摘要:原文链接:https://blog.csdn.net/stpeace/article/details/82892571 参考:https://blog.csdn.net/z69183787/article/details/35987711 web客户端通过http post提交数据到web服务端,其
阅读全文
摘要:sync包 package main; import ( "time" "fmt" ) func main() { //time.Time代表一个纳秒精度的时间点 var t time.Time; //返回当前时间 t = time.Now(); fmt.Printf("%v\n", t); //反
阅读全文
摘要:path包的使用 filepath包的使用
阅读全文
摘要:转自:https://www.jb51.net/article/148388.htm strings 包中的函数和方法 // Count 计算字符串 sep 在 s 中的非重叠个数 // 如果 sep 为空字符串,则返回 s 中的字符(非字节)个数 + 1 // 使用 Rabin-Karp 算法实现
阅读全文
摘要:转自:https://www.jianshu.com/p/2ea2b0e4d1f2 过滤器通常 在 web 服务端用的比较多,有要功能 在客户端的请求访问后端资源之前,拦截这些请求。 在服务器的响应发送回客户端之前,处理这些响应。 过滤器的应用场景 1.执行目标资源之前做"预处理"工作,例如设置编码
阅读全文
摘要:1. 概述 go语言中goroutine之间的关联关系,缺乏维护,在erlang中有专门的机制来保障新开协程的生命周期,在go语言中,只能通过channel + select来实现,但不够直观,很绕。 Context 通常被译作 上下文 ,它是一个比较抽象的概念,一般理解为程序单元的一个运行状态、现
阅读全文
摘要:简介 json格式可以算我们日常最常用的序列化格式之一了,Go语言作为一个由Google开发,号称互联网的C语言的语言,自然也对JSON格式支持很好。但是Go语言是个强类型语言,对格式要求极其严格而JSON格式虽然也有类型,但是并不稳定,Go语言在解析来源为非强类型语言时比如PHP等序列化的JSON
阅读全文
摘要:支持可变长参数列表的函数可以支持任意个传入参数,比如fmt.Println函数就是一个支持可变长参数列表的函数。 需要注意的是,可变长参数应该是函数定义的最右边的参数,即最后一个参数 Go 中的一些内置函数都是可变参数函数,例如:append() 函数: 如何工作 可变参数函数的工作原理就是把可变参
阅读全文
摘要:对于程序及服务的控制,本质上而言就是正确的启动,并可控的停止或退出。在go语言中,其实就是程序安全退出、服务控制两个方面。核心在于系统信号获取、Go Concurrency Patterns、以及基本的代码封装 程序安全退出 执行代码非安全写法 在代码部署后,我们可能因为服务配置发生变化或其他各种原
阅读全文
摘要:go语言的time包 1. 组成 time.Duration(时长,耗时) time.Time(时间点)time.C(放时间点的管道)[ Time.C:=make(chan time.Time) ]time包里有2个东西,一个是时间点,另一个是时长 时间点的意思就是“某一刻”,比如 2000年1月1
阅读全文
摘要:1.func Fields(s string) []string,这个函数的作用是按照1:n个空格来分割字符串最后返回的是[]string的切片 执行结果: 2.func FieldsFunc(s string, f func(rune) bool) []string一看就了解了,这就是根据自定义函
阅读全文
摘要:转自:https://mp.weixin.qq.com/s/HUqTC6i7aSUBVq0bsqfQXw sync.WaitGroup() 用来做Goroutine的等待,当使用go启动多个并发程序,通过waitgroup可以等待所有go协程结束后再执行后面的代码逻辑 用途:阻塞协程的执行,直到所有
阅读全文
摘要:原子操作:操作仅由一个独立的CPU指令代表和完成。保证并发环境下原子操作的绝对安全 标准库代码包:sync/atomic atomic是最轻量级的锁,在一些场景下直接使用atomic包还是很有效的 CAS操作的优势是,可以在不形成临界区和创建互斥量的情况下完成并发安全的值替换操作。这可以大大的减少同
阅读全文
摘要:转自:http://www.01happy.com/golang-tcp-socket-adhere/ 在用golang开发人工客服系统的时候碰到了粘包问题,那么什么是粘包呢?例如我们和客户端约定数据交互格式是一个json格式的字符串: 当客户端发送数据给服务端的时候,如果服务端没有及时接收,客户端
阅读全文
摘要:Golang的加密库都放在crypto目录下,其中MD5库在crypto/md5包中,该包主要提供了New和Sum函数 直接调用md5计算 另一种是调用md5.New()生成一个hash对象,然后往这个对象写将要加密的数据就行了 或者调用write方法写 Sum 函数是对hash.Hash对象内部存
阅读全文
posted @ 2017-07-08 21:18
大漠垂杨
摘要:以下是利用标准库binary来进行编解码 编码 ①使用bytes.Buffer来存储编码生成的串②使用binary.Write来编码存储在①的buf中 解码 ①使用bytes.NewReader/bytes.Buffer来存储要解码的ascii串②使用binary.Read来解码 Multi模式 解
阅读全文
摘要:似乎没什么好办法,string的话也得需要先转换成rune再反转再转成string 转自:http://blog.csdn.net/qq_15437667/article/details/51714765
阅读全文
摘要:开发工具介绍 LiteIDE https://github.com/visualfc/liteide/blob/master/liteidex/deploy/welcome/zh_CN/readme.md http://www.infoq.com/cn/articles/use-liteIDE-de
阅读全文
浙公网安备 33010602011771号