Ingress controller之trarfik

Traefik,它是一个用Golang开发的轻量级的Http反向代理和负载均衡器,虽然相比于Nginx,它是后起之秀,但是它天然拥抱kubernetes,直接与集群k8s的Api Server通信,反应非常迅速,实时感知集群中Ingress定义的路由规则集合和后端Service、Pod的变化,自动热更新Traefik后端配置,根本不用创建Ingress controller对象,同时还提供了友好的控制面板和监控界面,不仅可以方便地查看Traefik根据Ingress生成的路由配置信息,还可以查看...阅读全文

简书 2019.10.21 23:33:01 aside section._ 等

关于面试的换位思考

我当面试官时 之前公司招后端程序员的时候,我负责考察面试者golang的掌握程度。 通常我是要求面试者上机用channel写一个多常驻协程的任务队列,然后再不断的延伸发问,考察面试者对goroutine和channel的掌握。 如果面试者写不出来,我基本是不给过的。因为这是我认为的一个golang程序与其它语言程序最大的不同,如果写不出来就代表没真正的用过golang。 我当面试者时 风水轮流转,公司因为融资问题,经营不下去了,我只能再次踏上找工作的路。 虽说在这份工作中,我得到了自己想要的go...阅读全文

简书 2019.10.21 23:55:56 aside section._ 等

golang expvar的坑

概述golang标准库expvar包提供一个全局变量的一个包,是线程安全的,主要功能可以存储一些简单的数据比如api请求次数计数,记录当前堆栈的一些信息、 gc次数、 调用cgo次数等等..... 网上相关的教程都很详细不在赘述。问题描述在开发wechat小程序的时候想把accessToken存在expvar中, 因为这是一个全局的变量存在这里面正适合,线程安全的,方法已经写好无需重复造轮子。但是向微信服务器发送请求验证的时候总是说我的accessToken不正确40001,起初并没有怀疑acc...阅读全文

简书 2019.10.21 18:39:44 aside section._ 等

解决Get https://sum.golang.org/lookup/xxxxxx: dial tcp 2 i/o timeout问题

转自:作者:癞痢头链接:https://www.jianshu.com/p/e0c878d4ca19来源:简书在Go 1.13中,我们可以通过GOPROXY来控制代理注意 : 通过 GOPRIVATE 控制私有库不走代理设置GOPROXY代理:goenv-w GOPROXY=https://goproxy.cn,direct设置GOPRIVATE来跳过私有库,比如常用的Gitlab或Gitee,中间使用逗号分隔:goenv-w GOPRIVATE=*.gitlab.com,*.gitee.com...阅读全文

简书 2019.10.21 23:17:33 aside section._ 等

化繁为简才是加密货币市场更具吸引力为更多人所用的关键

在加密货币行业因为安全性使然,导致很多安全平台在设计系统的时候对安全措施的层层加密,把平台的安全性达到顶点。我觉得这对于项目方来说出发点是没有问题的,因为资产的安全关乎着每一位用户对平台的热衷性。但是随着币圈市场的发展,我们不难发现很多项目方在设计平台安全功能的时候,在安全方面做得成本过高且复杂,这样容易丢失一大部分新的用户,同时用户的再教育成本相对来说就会比较昂贵了。 那么我们在设计平台的时候,如何才能让用户快速、轻松地购买数字货币,并轻松的入场呢?首先我们先看一下什么样的平台更为人所用...阅读全文

Go语言中文网 2019-10-21 21:28:12 yanfaruiec

第3章 Prometheus告警处理

本章我们将带领读者探索Prometheus的告警处理机制,在前面的部分中已经介绍了告警能力在Prometheus的架构中被划分为两个部分,在Prometheus Server中定义告警规则以及产生告警,Alertmanager组件则用于处理这些由Prometheus产生的告警。Alertmanager即Prometheus体系中告警的统一处理中心。Alertmanager提供了多种内置第三方告警通知方式,同时还提供了对Webhook通知的支持,通过Webhook用户可以完成对告警更多个性化的扩展...阅读全文

简书 2019.10.21 15:56:25 aside section._ 等

如何理解和运用服务编排?(使用 Goku API Gateway 实现)

上一篇博客 未来实现API管理系统的几个关键词 发布后,有不少读者私信我,让我写一篇实际运用的文章,我周末趁着有空写了这篇有关“服务编排”的文章。用的是Goku API Gateway进行演示, 希望本文对读者有所启发。什么是服务编排/数据聚合?服务编排/数据聚合 指的是可以通过一个请求来依次调用多个微服务,并对每个服务的返回结果做数据处理,最终整合成一个大的结果返回给前端。例如一个服务是“查询用户预定的酒店”,前端仅需要传一个订单ID,后端会返回整个订单的信息,包括用户信息、酒店信息和房间信息...阅读全文

简书 2019.10.21 16:00:57 aside section._ 等

毕业后想成为一名软件开发工程师,应该如何学习,大牛给出建议!

毕业后想成为一名软件开发工程师,应该如何学习,我整理了一下,觉得可以如下几个过程,逐步深入。希望对大家有帮助。 1、基础这是每个开发者的起点。开发者刚刚学会了某种语言, 比如C语言,学习了基本的数据结构和算法,并通过一些练习对知识点进行巩固。这些练习主要以课后练习为主,是一些简单的基础概念的练习,比如打印输出、接收用户的输入、数组的遍历、排序,或者链表等。接下来是做一些简单的项目,这些项目没有复杂的算法和高深的领域知识,比如数据的统计分析、产品的售后管理系统等。这些项目虽然简单,却是一个真实完整...阅读全文

简书 2019.10.21 16:32:08 aside section._ 等

8:golang修复数据库文件(sql报错:database disk image is malformed)

思路: 1:导出sql语句到临时文件 2:修改tmp.sql文件(将最后一行的Rollback改为Commit;) 3:读取tmp.sql并写入到新库中 准备工作(三个文件) 1:sqlite3.exe(自行下载:https://www.sqlite.org/download.html) 2:read.sql(自行创建一个空的.sql文件) 3:dump.sql(自行创建一个空的.sql文件) 调用: DoRepair(DBPath, newDbName string) 方法定义: packag...阅读全文

简书 2019.10.21 16:34:15 aside section._ 等

golang中cgo简单测试

对于cgo的简单测试,运用scws分词库类源码实现分词。1、下载源码 http://www.xunsearch.com/scws/docs.php (本示例使用的是 1.2.3 版本)2、解压scws包,进入目录,./configure 编译但不需要安装,会生成一个 config.h(这是我们需要的)3、在go代码文件创建目录libscws4、将scws目录下的config.h 和 其子目录libscws 下的文件全部拷贝到你的go代码目录libscws中golang测试代码如下: packag...阅读全文

Go语言中文网 2019-10-21 18:13:53 lobo

主流go-web服务端框架性能测试

测试目的 由于K8s缘故涉猎go语言,发现golang的web框架很多,都号称高性能标杆;之前一直致力于c++高性能服务端框架研究,出于好奇,想单从性能层面客观比较一下go的众多web框架,另一方面也希望看看c++的实现与go语言实现之间究竟存在多大差异。 高性能服务框架评估指标很多,但一般来讲吞吐量与QPS是关键考量指标,吞吐量衡量带宽利用率,QPS主要考验框架调度性能(几乎所有可称之为“高性能”的服务框架都没有吞吐量问题,毕竟网络瓶颈很轻易就达到了)。由于是框架本身QPS测试,为了屏蔽htt...阅读全文

简书 2019.10.21 15:06:54 aside section._ 等

golang json基本操作

话不多说,直接上代码:/* * @Descripttion: * @version: * @Author: weilin * @Date: 2019-10-20 10:36:52 * @LastEditors: weilin * @LastEditTime: 2019-10-20 11:02:09 */package mainimport ( // json包 /** json的全称是 JavaScript Object Notation,是一种轻量级的数据交换格式。易于人阅读和编写, 同时易于...阅读全文

简书 2019.10.21 09:34:59 aside section._ 等

知乎用Go替代Python,是否说明Go比Python好?

编者荐语: 其实我感觉吧。说不上哪个语言会比另一个语言更好。只能说某个语言在某个方面处理某些问题更具有优势吧。 大概每个开发人员应该都会认为自己使用的语言是世界最好的语言吧。这都相对来说的。对于每个人应该都是不同的。 ​ 众所周知,知乎早在几年前就将推荐系统从 Python 转为了 Go。于是乎,一部分人就说 Go 比 Python 好,Go 和 Python 两大社区的相关开发人员为此也争论过不少,似乎,谁也没完全说服谁。 知乎从Python转为Go,是不是代表Go比Python好?我认为,各...阅读全文

简书 2019.10.21 09:42:00 aside section . 等

golang连接mysql

```/* * @Descripttion: golang 连接mysql demo * @version: * @Author: weilin * @Date: 2019-10-19 11:31:23 * @LastEditors: weilin * @LastEditTime: 2019-10-19 22:49:53 */package mainimport ( // database/sql是golang的标准库之一,它提供了一系列接口方法,用于访问关系数据库。 //它并不会提供数据库特有...阅读全文

简书 2019.10.21 09:24:02 aside section . 等

性能测试:Java 与 Golang 的对比

起因: 作者本人我在知乎上看到很多人都在讨论这问题 所以想做下纳秒级运算的测试 前置声明: 双方都在 同一台电脑下 进行实验 双方都在 程序内部 进行时间计算 实验中有一方 需要 读取文件 进行 解释执行 公平起见,不借助于 第三方工具 进行 性能测试 双方 编译器版本 为 当前当前最新版(2019-10-21) Java 编译器版本:javac 13.0.1 Golang 编译器版本:go version go1.13.3 windows/amd64 双方 源码保证输出一致,并且 意义一致 双...阅读全文

简书 2019.10.21 06:09:21 aside section . 等

go modules 的一些细节

前言 在一些Java的项目中,有 Maven等这些版本管理工具,可以很好的管理各种版本依赖关系,但是在 Golang 的项目中,之前官方并没有提供版本管理工具,以前都是用 go get 进行安装, 随着项目的变大, 就处理这种依赖关系就变得很麻烦, 原文。 如果你对Go感兴趣, 可以关注我的公众号: GoGuider vendor 机制 为了解决版本依赖问题, 官方出了一个 vendor 机制,将项目依赖的包都放在该目录中,但这也并没有很好地管理依赖的版本。 因为vendor 机制有几个大的问题...阅读全文

[工具]如何在vscode中构建python工程

前言 之前用过Anaconda下的Spyder、Pycharm和Jupyter等写过python的数据分析项目,各有优劣。因为我的C++和Golang项目都是使用的VSCode(CLion、Golang和Pycharm都需要付费使用,而且在Mac上消耗资源比VSCode更大),所以索性将Mac和Windows的python项目都迁移到VSCode上。 安装vscode的python插件 python插件 选择python解释器 ctrl+shift+P打开vscode的命令行,输入python:...阅读全文

简书 2019.10.20 21:35:50 aside section . 等