01
consul集群搭建与Golang服务发现示例
传统单机应用动态性不强,不会频繁地更新和重新发布,也较少地进行自动伸缩。但随着互联网分布式系统的普及,服务与服务之间的伸缩性和可扩展性的要求也越来越大。为了满足服务的垂直和水平的扩张,以往一般使用预定义的端口配置服务,当新的服务需要上线或当期服务需要冗余扩展的时候,我们需要静态化地“注册”相关ip与端口信息到一个地方,再通过程序之间定时“更新”的方法去同步信息,但这种手段问题是非常多的,例如我们需要连接kafka的master的时候,如果服务信息发生变更,客户端是很难知道的。其中一个简单粗暴的方法是配置hosts文件,使用预定义的“域名”作为服务的连接依据,但这样也是麻烦的,服务变更的时候,要手动更改hosts文件,当服务器上的服务相对多的情况下,维护量就想当恐怖了。
出自GoCN每日新闻(2018-06-01)
原文链接:http://lihaoquan.me/2018/5/31/consul-in-action.html
原文二维码
02
深入介绍 Golang 中的 bufio.Scanner
Go 自带的软件包,提供了缓冲 I/O技术,用以优化读取或写入操作。对于写入来说,它在临时存储数据之前进行的(如磁盘或套接字)。数据被存储直到达到特定大小。通过这种方式触发的写操作更少,每个操作都为系统调用,操作会很昂贵。 对于读取而言,这意味着在单次操作中检索更多数据。它还减少了 sycall(系统调用)的数量,但还可以使用更高效的方式使用底层硬件,如读取磁盘块中的数据。本文重点介绍由 bufio 包提供的 Scanner 方法。它对处理数据流很有帮助,方式是将数据拆分为 tokens 并删除它们之间的空间。
出自GoCN每日新闻(2018-06-07)
原文链接:https://zhuanlan.zhihu.com/p/37673679
原文二维码
03
关于Golang过滤敏感信息的正确姿势
今天正好看到一篇关于敏感信息过滤的文章,这算做一个interface实际应用的一些举例和应用。
例子中介绍了一种比较常见的使用场景:使用JSON保存数据时的对诸如用户密码等信息进行保护时候应该做的事情。作者以使用JSON格式保存用户账户和密码为例,讲解了使用json.Unmarshaler接口类型过滤敏感信息。
出自GoCN每日新闻(2018-06-07)
原文链接:https://www.4async.com/2018/06/sensitive-info-filter-in-golang/
原文二维码
04
使用Go备份Github和Gitlab
Want to learn Golang and build something useful? Learn how to write a tool to back up your GitHub and GitLab repositories.
GitHub and GitLab are two popular Git repository hosting services that are used to host and manage open-source projects. They also have become an easy way for content creators to be able to invite others to share and collaborate without needing to have their own infrastructure setup.
翻译:想学Golang并且built一些有用的东西?学习如何编写一个工具来备份GitHub 和 GitLab存储库。
GitHub 和 GitLab是两个流行的Git存储库托管服务,用于托管和管理开源的项目。它们也成为内容创建者能够邀请其他人共享和协作而不需要自己的基础设置的简单方法。
出自GoCN每日新闻(2018-06-06)
原文链接:https://www.linuxjournal.com/content/back-github-and-gitlab-repositories-using-golang
原文二维码
05
纯Go实现的人脸识别库
've intended to implement this face detection method in Go, since the only existing solution for face detection in the Go ecosystem is using bindings to OpenCV, but installing OpenCV on various platforms is sometimes daunting.
This library does not require any third party modules to be installed. However in case you wish to try the real time, webcam based face detection you might need to have Python2 and OpenCV installed, but the core API does not require any third party and external modules.
翻译:我们打算在Go中实现这种人脸的检测方法,因为Go生态系统中唯一的人脸检测方案要绑定OpenCV,但是在各种平台上安装 OpenCV又是会让人望而生畏。
这个library不需要安装任何第三方模块。然而以防你想尝试真的时间,基于摄像头的人脸检测您可能安装了Python2 和 OpenCV 但是核心API不需要任何第三方和外部模块翻译。
有疑问加站长微信联系(非本文作者)