• 5

    收录文章
  • 10

    关注
  • 最新收录
  • 最新评论
  • 热门
go encoding/binary包int类型转成byte类型原理解密

我们在进行网络编程的时候,都会遇到大小端模式的问题。刚开始接触的时候我也比较懵逼,大端小端,什么鬼?网上说的很多术语都看不明白。其实按照我个人的理解,大端模式就是和我们阅读现代文学一样,一般都是从左到右进行阅读。而小端模式就像在阅读古代的武功秘籍一样,是从右往左进行学习的。 当然我今天不会去讲为什么存在大小端这种不同的模式,只要在我们进行int和byte进行互转的时候,知道有这么个概念就可以了

go-sql-driver/mysql 源码分析--连接数据库

在使用go连"接数据库的时候,官方只是给我们提供了一个数据库连接的接口协议database/sql,并没有去实现这个接口,所以需要我们的来实现。 但是由我们自己来实现的database/sql这个协议,难度是相当大的。一般都是使用第三方已经写好的数据库驱动, go-sql-driver/mysql 是由国外大牛写的,也是目前使用比较广的mysql数据库驱动。 本着学习的想法,和大家分享一下本人

go使用http.Pusher主动推送资源来优化网站加载速度

需要注意的是,目前只有http 2.0 才支持服务器主动向浏览器推送资源。 Server Push 是什么?  为了提高网站的打开速度,http2.0提供了很多新的特性,其中一个特性就是服务器推送。简单来讲就是当用户的浏览器和服务器在建立链接后,服务器主动将一些资源推送给浏览器并缓存起来,这样当浏览器接下来请求这些资源时就直接从缓存中读取,不会在从服务器上拉了,提升了速率。举一个例子就是:   

推荐几个golang常用的错误处理包

我们在写代码的时候,经常遇到需要手动处理异常,一般都是使用error.New 或者 fmt.Errorf 进行错误输出。这些内置的函数只是简单打印出堆栈中的信息,还不能满足我们的需求,比如稍微复杂一点的应用想跟踪错误的上下文,或者当前正在打开输入输出流时,怎样正确处理f.Close()? 由于errors 就是普通的值,所以这些比较复杂的情况都可以通过代码的手段来处理。下面给大家推荐几个比较热

实用小技能-自定义log输出格式

我们在使用go开发项目的时候,常常需要使用log包输出日志,go自带的log包默认输入格式为:时间+内容。 其实go还提供了几个很简单的输出选项 const ( Ldate = 1

专题公告

golang专题,分享交流go语言学习心得

管理员
驿站小二 专题主