go
-
gRPC-Java 1.15.1 正式发布,gRPC 的 Java 实现
gRPC-Java 1.15.1 发布了 。官方建议 OkHttp 用户进行升级,但如果没有看到下面提到的特定错误,那么应该不会受到太大影响。 Bug 修复 ok http : settings acks back after apply settings before sending any data …阅读全文
-
Go web 开发中的cookie和session
Cookie是指网站为了辨别用户身份而储存于客户端的数据,由网景公司的前雇员卢·蒙特利在1993年3月发明。最初定义于 RFC 2109 , 以及后续的规范 RFC 2965 、 RFC 6265 。 服务器可以设置或读取Cookies中包含信息,借此维护用户跟服务器会话中的状态,并且可以基于Cookie实现Session,用来在服务器端存储用户的数 …阅读全文 -
Go语言初探
概述 Go语言是2009年谷歌推出的一种速度与C/C++性能媲美的编程语言,而且更加安全、支持并行进程,不论是C/C++、PHP,还是Java,重构首选语言 就是Go。 Go语言以其在高并发场景下的天然优势,已经成为今天开发分布式系统的首选语言,在云计算领域占据了无法替代的位置。如今,越来越多的项目组织都选择了G o来编写核心处理模块。在当下最热门的技术领域——区块链上,我们熟知的 …阅读全文 -
图像相似性比较实践
2008年TinEye上线了图片搜索,开始是注册制,后来逐步放开。2011年, Google也上线了相似图片搜索,通过用户上传的图片,可以搜索相似的图片。 参考文档中提供了一些介绍图像搜索的一些文章, 尤其是阮一峰2011年和2013年两篇普及性的文章,可以帮助你了解图像相似搜索的原理。 图像相似性搜索应用广泛、除了使用搜索引擎搜索类似图片外,像淘宝可以让顾客直接拍照搜索类似的商品信息 …阅读全文 -
Go http2 和 h2c
了解一下http2和h2c (HTTP/2 over TCP,HTTP/2 without TLS)。 http/1.1 的服务器 我们经常会在代码中启动一个http服务器,最简单的http/1.1服务器如下所示: [代码片段] 使用Go开发web服务非常的简单,快速。 http/1.1 的服务器 with TLS 如果想让http/1.1服务器支持TLS, 可以使用 …阅读全文 -
快速产生一个随机字符串
如何高效的产生一个随机字符串?这看似是一个简单的问题,但是icza却通过例子,逐步优化,实现了一个更高效的随机字符串的算法。这是来自的来自stackover flow上的一个问题: How to generate a random string of a fixed length in Go? , 大家群策群力,提出了很好的方案和反馈,尤其是icza的回答。 本文翻译和整理自这条问答。 …阅读全文 -
C和Go相互调用
C可以调用Go,并且Go可以调用C, 如果更进一步呢, [代码片段] 或者 [代码片段] 的调用如何实现? 本文通过两个简单的例子帮助你了解这两种复杂的调用关系。本文不涉及两者之间的复杂的数据转换,官方文章 C? Go? Cgo! 、 wiki/cgo 和 cmd/cgo 有一些介绍。 Go-->C-->Go Go程序 …阅读全文 -
跳出Go module的泥潭
Go 1.11 前天已经正式发布了,这个版本包含了两个最重要的feature就是 [代码片段] 和 [代码片段] 。虽然也有一些简单的教程介绍了 [代码片段] 的特性,但是基本上都是 [代码片段] 的例子,在实践的过程中, 很多人都在“拼命的挣扎”,包括我自己, 从一些qq群、github的issue, twitter上都可以看到大家茫然或者抱怨的语句。 虽然有三个帮助文件 …阅读全文 -
golang结构体标签与反射
本文对golang反射做了一些尝试,整理了一些关键理解。 结构体标签(structure tag) 用过golang json的同学应该对下面的结构体定义很熟悉: [代码片段] [代码片段] 就是一段结构体标签,它本身并没有什么魔法,很像一段代码注释。 但是和注释的区别在于,通过反射机制是可以获取到标签的,从而可以实现一些神奇的事情。 反射与标签 我们平时用j …阅读全文 -
mac下更新delve调试go语言
概述 delve 是golang调试程序。但如果版本不配套, mac下goland 调试,step over会不起作用,直接变成执行完毕或者到下一个断点。 需要更新调试器delve解决。 go get安装 mac下安装delve,官方教程是两步。 [代码片段] 但go get 一直不返回。 homebrew 安装 [代码片段] 这是因为证书有问题。 …阅读全文