太阳上的雨天
执着于理想,纯粹于当下
太阳上的雨天
C/C++、Go、JAVA、PHP、VUE
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于 MCP 的汇率查询工具
Model Context Protocol (MCP) 是一种标准化的协议,旨在让语言模型(如 Claude、GPT)或其他智能代理通过统一的接口访问外部工具和服务。MCP 的核心思想是将特定功能(例如数据查询、API 调用)封装为“工具”,供 AI 代理调用,从而扩展其能力。MCP 的优势在于:标准化:提供一致的接口,简化工具与代理的集成。轻量级:MCP 服务器通常专注于单一功能,易于开发和维护。灵活性:支持多种场景,如金融数据查询、加密货币交易等。原创 2025-07-08 16:27:04 · 64 阅读 · 0 评论 -
分布式ID生成系统
分布式 ID 生成系统是一个高性能、可靠的 ID 生成服务,支持两种模式:Snowflake(基于时间戳的内存生成)和 Segment(基于 MySQL 的号段分配)。系统采用双 Buffer 策略优化性能,集成 Prometheus 监控和 Zap 结构化日志,确保高可用性和可观测性。通过 gRPC 提供服务接口,支持高并发场景下的唯一 ID 生成,适用于分布式系统中的订单号、用户 ID 等场景。设计灵感来源于美团 Leaf 系统。原创 2025-05-19 12:49:47 · 308 阅读 · 0 评论 -
波场(Tron)开发demo - go 语言 GRPC版
【代码】波场(Tron)开发demo - go 语言 GRPC版。原创 2023-04-08 17:35:30 · 1389 阅读 · 0 评论 -
GO 操作 MongoDB
GO 操作 MongoDB原创 2022-12-23 17:11:26 · 615 阅读 · 0 评论 -
基于go-zero、xorm实现的云盘文件存储系统
基于go-zero、xorm实现的云盘文件存储系统本文代码地址:https://github.com/jeffcail/go-cloud-storage。原创 2022-12-21 20:08:24 · 948 阅读 · 0 评论 -
基于echo框架,搭建一个最好用的脚手架echo-scaffolding
基于echo框架,搭建一个最好用的脚手架。原创 2022-11-20 14:18:18 · 182 阅读 · 0 评论 -
Go实现随机、轮训、权重、哈希负载均衡
负载均衡(Load Balance,简称 LB)是高并发、高可用系统必不可少的关键组件,目标是 尽力将网络流量平均分发到多个服务器上,以提高系统整体的响应速度和可用性高并发:负载均衡通过算法调整负载,尽力均匀的分配应用集群中各节点的工作量,以此提高应用集群的并发处理能力(吞吐量)。伸缩性:添加或减少服务器数量,然后由负载均衡进行分发控制。这使得应用集群具备伸缩性。高可用:负载均衡器可以监控候选服务器,当服务器不可用时,自动跳过,将请求分发给可用的服务器。这使得应用集群具备高可用的特性。原创 2022-11-16 16:23:40 · 1075 阅读 · 0 评论 -
Go 封装Api 统一数据返回格式
在项目开发中统一封装Api数据格式返回给前端这是最基本和常见的。这里以Echo框架为例。原创 2022-11-16 14:55:47 · 835 阅读 · 0 评论 -
Go 实现对返回的map进行分页
根据业务场景需要,API接口可能需要对一个map类型的数据进行json序列化返回给前端,当map中的key过多时,也是需要分页的。原创 2022-11-16 14:19:22 · 403 阅读 · 0 评论 -
Go 封装http请求包Get、Post
之前已经封装过包.今天再把项目中经常会用到的一个技术封装成包,记录下来,仅供需要的小伙伴学习参考go如何封装包给别人和自己使用。有需要的小伙伴也可以在自己的项目中直接使用此包。这里小编以github为例 (go的很多第三方包都在github上),其他平台大同小异。原创 2022-11-12 03:01:11 · 1488 阅读 · 0 评论 -
Go 控制Goroutine的数量
Goroutine虽然体量很小(2kb),理论可以开启上百万个Goroutine。一旦Goroutine过多,会占用大量的cpu 内存,可能导致服务器速度变慢甚至服务挂掉。先看一下不控制Goroutine数量,看能跑多少。如何控制Goroutine。原创 2022-11-11 10:04:47 · 642 阅读 · 0 评论 -
Go实现udp服务
画dp 被称为用户数据报协议(UDP,User Datagram Protocol。UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。音视频通话、游戏、工业物联网传感器等。原创 2022-11-05 13:04:24 · 1441 阅读 · 0 评论 -
Go 处理粘包拆包
首先会写入一个自定义的消息头写入消息内容的长度写入消息拆包 先读自定义的消息头,在读指定长度的消息完整代码地址: https://github.com/jeffcail/tcp-unpack。原创 2022-11-05 11:10:04 · 814 阅读 · 0 评论 -
Go 区块链 Input Data 解析
0000000000000000000000000000000000000000000054b7d8ed70650b290000: 第二个参数为 value 即你要转账的数量,并补位到 32 字节即 64 个 16 进制字符。正常情况下简单的消息调用如调用转账函数时需要填写你要转账的地址 _to 和你要转账的数量 _amount,这些基本信息都包含在 input data 里面。在以太坊协议中,当交易(transaction)为合约创建时,input data 是账户初始化程序的 EVM 代码;原创 2022-10-31 10:10:29 · 1802 阅读 · 0 评论 -
Go *big.Int类型比大小
在进行TRX转账之前,需要比余额和转账金额的大小. aBalance 余额 tBlance转账金额 同为big.Int类型。aBalance < tBlance 返回 -1。aBalance > tBlance 返回 1。aBalance = tBlance 返回 0。使用big.Int.Cmp函数。原创 2022-10-13 11:16:40 · 892 阅读 · 0 评论 -
go 实现波场(Tron) 离线生成地址和私钥
【代码】go 实现波场(Tron) 离线生成地址和私钥。原创 2022-10-13 11:15:57 · 3987 阅读 · 7 评论 -
go 实现波场(Tron)(TRX)地址转换
go 实现波场(Tron)(TRX)地址转换原创 2022-10-13 11:14:52 · 2707 阅读 · 0 评论 -
Go网络编程 ssh模拟交互终端
通过go实现网页版链接ssh实现与服务器的交互。原创 2022-10-12 19:48:58 · 569 阅读 · 0 评论 -
Go SSH连接
SSH支持多种加密算法,双方根据各自支持的算法,协商出最终用于产生会话密钥的密钥交换算法、用于数据信息加密的加密算法、用于进行数字签名和认证的公钥算法以及用于数据完整性保护的HMAC算法。服务器和客户端通过密钥交换算法,动态生成共享的会话密钥和会话ID,建立加密通道。认证通过后,SSH客户端向服务器端发送会话请求,请求服务器提供某种类型的服务,即请求与服务器建立相应的会话。SSH服务器在指定的端口侦听客户端的连接请求,在客户端向服务器发起连接请求后,双方建立一个TCP连接。原创 2022-10-12 19:38:23 · 737 阅读 · 0 评论 -
Go实现的TCP端口扫面器
源码地址: https://github.com/jeffcail/tcp-scanner。使用Go实现的TCP端口扫描器。原创 2022-09-17 11:48:41 · 637 阅读 · 0 评论 -
Go使用qrcode包解析微信和支付宝二维码,生成一个链接(前端拿到链接即可解析成对应的支付二维码)
【代码】Go使用qrcode包解析微信和支付宝二维码,生成一个链接(前端拿到链接即可解析成对应的支付二维码)原创 2022-09-15 11:53:03 · 1195 阅读 · 0 评论 -
Go 编写开机自启动服务
【代码】Go 编写开机自启动服务。原创 2022-09-15 11:42:16 · 825 阅读 · 0 评论 -
Go操作nutsdb
Go操作nutsdb原创 2022-08-11 09:50:33 · 375 阅读 · 0 评论 -
体验golang1.18泛型
体验golang1.18泛型原创 2022-08-03 14:48:02 · 243 阅读 · 0 评论 -
Go语言之CGO
Go语言之CGO原创 2022-08-02 10:57:29 · 620 阅读 · 0 评论 -
Go 实现分布式锁
Go 实现分布式锁原创 2022-08-01 14:34:59 · 422 阅读 · 0 评论 -
Go面向并发的内存模型
Go面向并发的内存模型原创 2022-07-28 20:25:45 · 227 阅读 · 0 评论 -
Golang操作RabbitMQ详细教程
Golang操作RabbitMQ详细教程原创 2022-07-26 16:35:08 · 866 阅读 · 0 评论 -
基于 echo+websocket+html+js 实现的聊天demo
基于 echo+websocket+html+js 实现的聊天demo原创 2022-07-12 12:37:28 · 564 阅读 · 0 评论 -
golang+vue3+websocket 实时推送首页数据或者站内信
golang+vue3+websocket 实时推送首页数据或者站内信原创 2022-07-10 22:45:45 · 1711 阅读 · 0 评论 -
Go + echo + xorm + casbin 实现权限管理
Go + echo + xorm + casbin 实现权限管理原创 2022-07-10 22:40:01 · 544 阅读 · 0 评论 -
Echo - 定制Vlidate 参数校验
Echo - 定制Vlidate 参数校验原创 2022-07-10 22:35:32 · 457 阅读 · 0 评论 -
Go操作Kafka
Go操作Kafka原创 2022-07-10 22:32:17 · 1710 阅读 · 0 评论 -
Go 手机号解析归属地和运营商
创作不易感谢支持。一条主写Go和PHP的小菜鸟。平常有时间喜欢自己写点东西,如有不对的地方,欢迎大佬指点。 个人博客:太阳上的雨天 地址:http://blog.caixiaoxin.cn 善于分享,希望有助他人. 非常感谢各位大佬的关注和支持业务场景中可能需要根据手机号解析归属地和运营商推荐使用一个大佬写的包 phonedata使用go get github.com/xluohome/phonedatapackage mainimport ( "fmt" "github.com/x原创 2022-04-01 10:22:43 · 640 阅读 · 0 评论 -
Go 编写定时器和定时任务
创作不易感谢支持。一条主写Go和PHP的小菜鸟。平常有时间喜欢自己写点东西,如有不对的地方,欢迎大佬指点。 个人博客:太阳上的雨天 地址:http://blog.caixiaoxin.cn 善于分享,希望有助他人. 非常感谢各位大佬的关注和支持本文推荐使用一个第三方模块 gocron包, 基于gocron包实现定时任务的编写当然也可以使用linux自带的crontab, 默认只能精确到分钟,如果想要精确到秒可以使用for循环处理秒级任务* * * * * for i in $(seq 1 11);原创 2022-03-26 09:41:02 · 6546 阅读 · 0 评论 -
Go 使用IP纯真库获取IP对应的国家、省、市
创作不易感谢支持。一条主写Go和PHP的小菜鸟。平常有时间喜欢自己写点东西,如有不对的地方,欢迎大佬指点。 个人博客:太阳上的雨天 地址:blog.caixiaoxin.cn 善于分享,希望有助他人. 非常感谢各位大佬的关注和支持使用纯真IP库 qqwry.dat,高性能,线程安全,并对国内数据格式化到省、市、县使用大佬写的一个包iploc包安装go get -u github.com/kayon/iploc/…获取query.dat命令会下载qqwry.gbk.dat 文件到当前目录ipl原创 2022-03-22 15:17:20 · 7210 阅读 · 2 评论 -
Go操作nsq
创作不易感谢支持。一条主写Go和PHP的小菜鸟。平常有时间喜欢自己写点东西,如有不对的地方,欢迎大佬指点。 个人博客:太阳上的雨天 地址:http://blog.caixiaoxin.cn 善于分享,希望有助他人. 非常感谢各位大佬的关注和支持Go操作nsq一. 基于docker-compose 搭建nsq集群二. nsq 简单了解nsqd:一个负责接收、排队、转发消息到客户端的守护进程nsqlookupd:管理拓扑信息并提供最终一致性的发现服务的守护进程nsqadmin:一套Web用户界原创 2022-03-20 13:43:42 · 1499 阅读 · 0 评论 -
golang项目编译生成docker镜像发布部署
golang项目编译生成docker镜像发布部署Mac 下编译成可执行的二进制文件mainCGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o main main.goDockerfile文件参考FROM golang:1.17.2-alpine# 设置固定的项目路径ENV WORKDIR /root/项目名(文件夹名字)# 添加应用可执行文件,并这是权限ADD ./main $WORKDIR/mainRUN chmod +x $WORK原创 2022-03-20 13:42:36 · 1458 阅读 · 0 评论 -
Go加载配置文件
创作不易感谢支持。一条主写Go和PHP的小菜鸟。平常有时间喜欢自己写点东西,如有不对的地方,欢迎大佬指点。 个人博客:太阳上的雨天 地址:http://blog.caixiaoxin.cn 善于分享,希望有助他人. 非常感谢各位大佬的关注和支持.ini 方式conf/conf.inidriver=mysqlhost=127.0.0.1username=rootpassword=rootdatabase=testport=3306conf/conf.gopackage confim原创 2022-03-20 13:39:16 · 1469 阅读 · 0 评论 -
Go启动多个端口服务
创作不易感谢支持。一条主写Go和PHP的小菜鸟。平常有时间喜欢自己写点东西,如有不对的地方,欢迎大佬指点。 个人博客:太阳上的雨天 地址:http://blog.caixiaoxin.cn 善于分享,希望有助他人. 非常感谢各位大佬的关注和支持go的net/http包可以通过ListenAndServe创建http服务。如果需要启动多个端口服务可以使用http.NewServeMux监听多个端口. NewServeMux返回的是ServeMux指针(ServeMux路由管理器)。通过创建goroutin原创 2022-03-20 13:37:20 · 1638 阅读 · 0 评论
分享