Go
文章平均质量分 62
xuehu96
C++是世界上最好的语言
展开
-
【go-tcpcat】Go TCP服务器框架 支持Hook、功能码函数
TCP常应用于物联网数据服务器、游戏服务器等,且通常都是私有格式协议;go-tcpcat只需很少的代码就可以实现TCP透传、消息处理功能;消息处理支持Go语言Hook将私有协议的解析程序注入框架、Lua脚本处理、PythonGRPC调用处理、HTTP回调处理、Redis缓存数据等。原创 2022-09-14 17:05:35 · 1496 阅读 · 0 评论 -
【Go-Lua】Golang嵌入Lua代码——gopher-lua
有一种应用场景需要Lua调用Go语言的函数,例如数据处理过程中,需要发送一个异步HTTP请求,或者把数据插入到MySQL或者Redis,就可以调用Go的HTTP请求函数或数据库处理函数。Go调用Lua的函数最常用,Lua程序里定义函数和数据的处理方式,Go通过HTTP或者TCP获取到数据后,调用Lua的函数对数据处理,处理后,结果返回到Go语言,写入数据库或进行其他处理。Lua调用Go语言的函数就没那么常用,因为虚拟机在Go语言程序里,需要传递数据直接通过Go的。返回值个数也可以是多个,调用。...原创 2022-08-30 23:17:38 · 5014 阅读 · 0 评论 -
Go语言sqlx库操作SQLite3数据库增删改查
比要好用一点点,其实差不多的…sqlx地址:https://github.com/jmoiron/sqlx1. 连接数据库sql.Opensql.Close连接数据库一般是不会报错的,文件不存在则会创建SQLite一个文件就是一个数据库,在数据库下新建数据表就可以了3. 增删改增删改和MySQL PostgreSQL的操作差不多参考之前的文章:https://blog.csdn.net/xuehu96/article/details/124648300代码几乎都不用改3.2 del原创 2022-06-27 19:26:24 · 1543 阅读 · 0 评论 -
Go语言sqlx库操作PostgreSQL数据库增删改查
0. 引用sqlx地址:https://github.com/jmoiron/sqlxPostgreSQL官网:https://www.postgresql.org/1. PostgreSQL安装、运行可以到官网下载二进制包 https://www.postgresql.org/download/也可以用apt、源代码或者WAPP、LAPP等方式安装由于docker更方便,直接用docker安装运行创建数据存放的目录mkdir /datamkdir /data/postgres运行原创 2022-05-08 17:11:10 · 2615 阅读 · 0 评论 -
时序数据库influxDB(二)Go语言连接TSDB——influxDB2
1. 创建测试用的数据库IP:80862. 下载 influxdb-client-gogo get github.com/influxdata/influxdb-client-go3 编写代码连接TSDB&&插入pointpackage mainimport ( "fmt" "math/rand" "time" influxdb2 "github.com/influxdata/influxdb-client-go/v2")func main() { //原创 2022-04-06 17:12:20 · 1872 阅读 · 0 评论 -
时序数据库influxDB(一)Linux安装与图形化/CLI连接influxDB2.2.0
0. 介绍时序数据库,也就是TSDB,是区别于关系数据库的一种数据库,比较适合记录时间为横轴的若干数据点InfluxDB是一个由InfluxData开发的开源时序型数据。它由Go写成,着力于高性能地查询与存储时序型数据。InfluxDB被广泛应用于存储系统的监控数据,IoT行业的实时数据等场景。在用TSDB之前,存储一些传感器数值用MySQL表如下:在web应用中,经常有按时间查找和展示历史数据的需求,如下:以上的情况相比MySQL 就更适合用TSDBinfluxDBinfl原创 2022-04-06 16:19:36 · 5676 阅读 · 0 评论 -
Go微服务——go-micro v4服务注册 Gin使用consul服务发现
0.目录go-micro 安装go-micro+consul服务注册、服务发现1. 启动consul下载:https://www.consul.io/downloadsconsul agent -h查看帮助Windows启动consul agent -server -bootstrap-expect 1 -data-dir C:\Temp\consul\data -node=n1 -bind=x.x.x.x -ui -rejoin -config-dir=C:\Temp\consul\c原创 2022-03-20 22:08:27 · 3936 阅读 · 1 评论 -
Go微服务——go-micro v4安装
0.目录go-micro 安装go-micro 服务端go-micro 客户端(gin框架调用微服务)go-micro+consul服务注册、服务发现1.介绍go-micro网站:https://github.com/asim/go-micro现在最新的已经到了v4版本,如下图注意: https://github.com/micro/micro 不是go-micro,v2的时候好像还是一样的,不知道因为什么原因micro下不包含go-micro了2.安装micro命令行准备原创 2022-03-20 13:08:08 · 8773 阅读 · 12 评论 -
30分钟完成CentOS7.6 最新生产环境配置(Git2.35.1 Python3.10.2 Golang1.18 Docker Nginx)
0. 服务器准备&目标在此之前,服务器主要用的Ubuntu LTS,RH系的系统还没试过,正好用一个 快到期的阿里云服务器做测试,运行2个月测试稳定性, 记下笔记,再装一台速度就快了本文介绍的配置实现以下功能,如果有需求相似的,可以参考配置(不保证稳定)安装一些必备的软件:编译工具链、vim、screen、python3等等Git 升级为最新版本 (参考自己的文章: Centos7 升级安装 Git2.23)安装 Golang最新版 配置gomod goproxy安装docker原创 2022-02-25 10:46:58 · 1482 阅读 · 0 评论 -
树莓派3B 4B安装最新go1.17.7 ARM
1. 下载安装包下载源码编译特别慢,可能要几十分钟,就直接下载编译好的arm版本第一次安装 安装成arm64版本了,不能运行才想起来raspbian是32位的#回到家目录cd #创建文件夹mkdir devcd dev#下载go1.17.7(32位)wget https://dl.google.com/go/go1.17.7.linux-armv6l.tar.gz# 64位arm????# wget https://dl.google.com/go/go1.17.7.linu原创 2022-02-20 16:11:33 · 589 阅读 · 0 评论 -
GRPC(三)python调用go语言gRPC客户端和服务器
编译python用的protobufPython 调用gRPC,也需要编译对应的proto文件,编译前需要安装必备的模块# 安装模块pip install grpcio# 安装编译工具pip install grpcio-tools# 在pb文件夹命令行运行,编译出.py文件python.exe -m grpc_tools.protoc --python_out=. --grpc_python_out=. -I. grpc.proto得到文件:grpc_pb2_grpc.py、grpc_p原创 2022-02-07 21:47:17 · 1859 阅读 · 0 评论 -
GRPC(二)Go语言互相调用服务器和客户端
gRPC Go语言调用Go语言在生成protogo的文件后,创建client和server的.go文件serverpackage mainimport ( "context" "google.golang.org/grpc" "grpc/pb" "log" "net")type rpcServer struct { pb.UnimplementedGRPCServer}func (r rpcServer) Ping(ctx context.Context, req *pb原创 2022-02-07 18:38:34 · 1806 阅读 · 0 评论 -
GRPC(一)protobuf配置
protobuf安装Github: https://github.com/protocolbuffers/protobuf/releases先下载protoc, 然后把protoc-3.19.4-win64.zip/bin/protoc.exe解压到GOPATH/bin同时把GOPATH/bin添加到系统Path安装protogo编译器插件go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.26go install googl原创 2022-02-07 18:29:29 · 1308 阅读 · 0 评论 -
Go日志库——zap的配置笔记(zap.Logger、zap.SugaredLogger)
代码package mainimport ( // "github.com/natefinch/lumberjack" "os" "go.uber.org/zap" "go.uber.org/zap/zapcore" _ "github.com/go-sql-driver/mysql" "github.com/jmoiron/sqlx")var log *zap.Loggervar logs *zap.SugaredLoggervar db *sqlx.DBfunc m原创 2022-01-10 23:25:45 · 1188 阅读 · 0 评论 -
Go语言编写MQTT服务器,使用gmqtt框架
gmqtt目前来看,这个框架确实比较好用,Hooks已基本提供需要的回调,只需选择其中需要的实现就好了gmqtt地址:git clone https://github.com/DrmagicE/gmqtt.git0. hooks 列表//OnAccept: 建立连接调用,返回false会关闭连接OnStop: server.Stop的时候调用 (2.6) OnSubscribe:订阅(2.2)//OnSubscribed: 订阅成功 OnUnsubscri原创 2020-12-10 18:01:19 · 7935 阅读 · 8 评论 -
Go语言编写MQTT客户端,连接百度云IOT物接入
MQTT是物联网常用的协议,服务器一般用云平台(自建也可以),而客户端一边是物联网的设备,另一边是为设备服务的“客户端”(服务器),为设备服务的客户端一般用Java Python等编写,并不多见Go语言,因此写一个示例安装go env -w GOPROXY=https://goproxy.cn,directgo env -w GO111MODULE=ongo get github.com/eclipse/paho.mqtt.golanggo get github.com/gorilla/webso原创 2020-07-14 09:55:38 · 2627 阅读 · 0 评论