随笔分类 - Go
1
摘要:runtime/cgo: pthread_create failed: Operation not permitted 在容器里边运行命令报错 解决方案(增加 --privileged) docker run --privileged 参考文档 https://stackoverflow.com/q
阅读全文
摘要:Golang GRPC 添加header 创建grpc连接时添加header 使用自建的metadata 添加的headr信息: key: my-header value: "test01" func main() { conn, err := grpc.Dial("localhost:12000"
阅读全文
摘要:Golang Gin框架搭配Grpc框架使用(监听同一端口) 方式一、该方式仅限给Gin配置了SSL证书、 http标准库会为配置了证书的http服务自动选用http/2协议,grpc建立在http/2协议上,所以没有配置SSL证书时请勿使用该方式 package main // 入口 func m
阅读全文
摘要:有无符号的整数,在计算机内存中是区别不出有无符号的,而是在程序里有区分。计算机中数据是以补码形式存放的,用二进制表示。比如:默认无符号型,只要在类型符号加unsigned就是无符号型,Int是有符号的。其实说白了就是:定义带符号整数的,则可以存储正负整数,定义无符号整数的,则只可以存储正整数。 有符
阅读全文
摘要:grpc 使用 简介 参考文档 https://www.topgoer.com/%E5%BE%AE%E6%9C%8D%E5%8A%A1/gRPC/ https://segmentfault.com/u/coldstar/articles 1. 安装 https://www.topgoer.com/%
阅读全文
摘要:GO GRPC 证书报错 报错 报错信息 transport: authentication handshake failed: x509: certificate relies on legacy Common Name field, use SANs or temporarily enable
阅读全文
摘要:React+Go+WEBSocket React import { Component } from 'react' import { Terminal } from 'xterm'; import 'xterm/css/xterm.css'; import Socket from './webso
阅读全文
摘要:golang logrus 示例1: 输出json日志、日志按小时切割 package main import ( "io" "os" "time" rotatelogs "github.com/lestrrat-go/file-rotatelogs" log "github.com/sirupse
阅读全文
摘要:手动build filebeta module 一、介绍 1.1 filebeta介绍 filebeat是一个elastic公司使用golang编写的一个收集日志的工具,基于beat编写. 已经集成了大多数主流服务日志模块(https://www.elastic.co/guide/en/beats/
阅读全文
摘要:golang从ES获取数据并计算存在那个codis的slot 环境是已经将redis的bigkey存入ES 1. 获取字符串存在那个slot 1.1 官方命令 SLOTSHASHKEY key1 [key2 …] 命令说明:计算并返回给定 key 的 slot 序号 命令参数:输入为 1 个或多个
阅读全文
摘要:开启 DNS 缓存 当前 GO SDK 总是会去请求 DNS 服务器,而没有使用到 nscd 的缓存,可以通过导出环境变量GODEBUG=netdns=cgo,或者go build编译时指定参数-tags 'netcgo'控制读取 nscd 缓存。 测试 package main import (
阅读全文
摘要:topN算法原理 第一步:Query统计 算法一:直接排序法 首先我们能想到的算法就是排序了,首先对这个日志里面的所有Query都进行排序,然后再遍历排好序的Query,统计每个Query出现的次数了。但是题目中有明确要求,那就是内存不能超过1G,一千万条记录,每条记录是225Byte,很显然要占据
阅读全文
摘要:前言 zap是uber开源的一款高性能日志组件框架 配置目标 错误信息独立的文件记录 日志按天分割,一天一个文件 只保留近七天的日志 错误日志输出堆栈 源码 package base import ( "fmt" rotatelogs "github.com/lestrrat-go/file-rot
阅读全文
摘要:一、打开文件的四种方式 (1) 利用ioutil.ReadFile直接从文件读取到[]byte中 func Read0() (string){ f, err := ioutil.ReadFile("file/test") if err != nil { fmt.Println("read fail"
阅读全文
摘要:练习:循环与函数 为了练习函数与循环,我们来实现一个平方根函数:用牛顿法实现平方根函数。 计算机通常使用循环来计算 x 的平方根。从某个猜测的值 z 开始,我们可以根据 z² 与 x 的近似度来调整 z,产生一个更好的猜测: z -= (zz - x) / (2z) 重复调整的过程,猜测的结果会越来
阅读全文
摘要:exporter 介绍 Exporter是什么 广义上讲所有可以向Prometheus提供监控样本数据的程序都可以被称为一个Exporter。而Exporter的一个实例称为target,如下所示,Prometheus通过轮询的方式定期从这些target中获取样本数据: Exporter的来源 从E
阅读全文
摘要:一、执行shell命令 1.1 官方ssh库 golang.org/x/crypto/ssh 定义全局变量 var ( addr string clientConfig *ssh.ClientConfig client *ssh.Client sftpClient *sftp.Client err
阅读全文
摘要:自己网上查查找找,配置了一份go的,一份Python的 Python // { // // 使用 IntelliSense 了解相关属性。 // // 悬停以查看现有属性的描述。 // // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=8
阅读全文
摘要:如果你用vscode开发golang,发现golang的提示很慢或者跳转很慢,很可能是你没有使用gopls。 安装gopls 安装方式一 打开 VS Code 的 setting, 搜索 go.useLanguageServe, 并勾选上。默认情况下, Go 扩展会提示你安装 gopls。 安装方式
阅读全文
摘要:在执行go test的时候发现, 每次执行时间竟然一致, 然后发现是go test又缓存 Go test 支持两种模式: Local directory mode, 在调用 go test 时,没有加参数 (比如 go test 或 go test -v)。在这种模式下,缓存会被禁用。 会编译当前目
阅读全文
1

浙公网安备 33010602011771号