您的位置:首页关键词: Golang
  • golang HTTP 服务器 处理 日志/Stream流的操作
    目前,我开发 HTTP 服务, 用的是 beego框架, 方便了很多。但是, 有时候,还是会遇到一些 特殊的场景。比如: 过滤日志。这应该是一种典型的stream,同时数据量也适中, 不会有人,为了这个, 就用一些很重的框架。可以这样直观的描述这个 逻辑其他组件 产生 log|| /我的组件,业务处...
    日期:2023-11-27浏览:9
    标签: Golang
  • 解决Golang中ResponseWriter的一个坑
    在使用Context.ResponseWriter中的Set/WriteHeader/Write这三个方法时,使用顺序必须如下所示,否则会出现某一设置不生效的情况。ctx.ResponseWriter.Header().Set('Content-type', 'application/text') ...
    日期:2023-10-27浏览:7
    标签: Golang
  • Golang Socket Server自定义协议的简单实现方案
    在Server和Client通讯中,由于网络等原因很可能会发生数据丢包的现象。如果数据缺失,服务端接收的信息不完整,就会造成混乱。我们需要在Server和Client之间建立一个通讯协议,通过协议中的规则,判断当前接收到的信息是否完整。根据信息的完整情况,采取不同的处理方式。通讯协议protocol...
    日期:2023-11-24浏览:17
    标签: Golang
  • golang 的string与[]byte转换方式
    相对于C语言,golang是类型安全的语言。但是安全的代价就是性能的妥协。下面我们看看Golang不想让我们看到的“秘密”——string的底层数据。通过reflect包,我们可以知道,在Golang底层,string和slice其实都是struct:type SliceHeader struct ...
    日期:2023-10-26浏览:185
    标签: Golang
  • Golang使用第三方包viper读取yaml配置信息操作
    Golang有很多第三方包,其中的 viper 支持读取多种配置文件信息。本文只是做一个小小demo,用来学习入门用的。1、安装go get github.com/spf13/viper2、编写一个yaml的配置文件,config.yamldatabase: host: 127.0.0.1 user...
    日期:2023-11-24浏览:10
    标签: Golang
  • golang 打印error的堆栈信息操作
    众所周知,目前的golang error只关注Error()信息,而不关注它的堆栈路径,对错误的定位大多数通过log.SetFlags(log.Llongfile| log.LstdFlags)log.Println(e)一旦代码分层,为了定位错误,可能出现每一个层次的同一个error,都得log好...
    日期:2023-10-21浏览:196
    标签: Golang
  • golang中的并发和并行
    golang中默认使用一个CPU,这时程序无法并发,只能是并发。因为始终只有一个CPU在运行。package main import ( 'fmt' 'runtime') //并发和并行var quit chan int = make(chan int) func loo...
    日期:2023-10-13浏览:22
    标签: Golang
  • golang如何去除多余空白字符(含制表符)
    看代码吧~//利用正则表达式压缩字符串,去除空格或制表符func compressStr(str string) string { if str == '' { return '' } //匹配一个或多个空白符的正则表达式 reg := regexp.MustC...
    日期:2023-09-28浏览:96
    标签: Golang
  • Golang Cron 定时任务的实现示例
    开门见山写一个package mainimport ( 'fmt' 'github.com/robfig/cron' 'log' 'strings' 'time')func CronTask() { log.Println('******** ******* *******')}func...
    日期:2023-08-25浏览:361
    标签: Golang
  • Golang你一定要懂的连接池实现
    问题引入作为一名Golang开发者,线上环境遇到过好几次连接数暴增问题(mysql/redis/kafka等)。纠其原因,Golang作为常驻进程,请求第三方服务或者资源完毕后,需要手动关闭连接,否则连接会一直存在。而很多时候,开发者不一定记得关闭这个连接。这样是不是很麻烦?于是有了连接池。顾名思义...
    日期:2023-08-24浏览:266
    标签: Golang