golang retry grpc 05
GoLang sync.Mutex和sync.RWMutex
Mutex可以看做是锁,RWMutex则是读写锁 使用锁时优先使用RWMutex RWMutex:核心就是四个方法,RLock、RUnlock、Lock、UnlockMutex:Lock 和 Unlock double-check就是加读锁先检查一遍,释放读锁,加写锁,再检查一遍 锁的实现一般是依赖 ......
GoLang context包
初始化一个context如果确定是开头则用Background,如果不确定则用ToDo context包核心API有四个1.context.WithValue 设置键值对,并且返回一个新的context实例 2.context.WithCancel 3.context.WithDeadline 4. ......
golang实现一个简单的文件浏览下载功能代码示例
想省事用Claude(一个 依托chatgpt 的 AI)生成一段 golang 的文件浏览下载示例,结果给生成的代码大概是这样的(省去了无关部分,主要部分如下): http.HandleFunc("/*", downloadFile) http.HandleFunc("/", showFileLi ......
使用jprofiler 14 查看dremio 的grpc 调用
我以前也写过使用就profiler分析dremio 调用链的,jprofiler 14 支持独立的grpc 功能节点了,可以方便我们了解dremio 内部grpc 的调用机制 环境配置 这个就比较简单了,具体可以参考我以前写的文章(包含了基于agent 模式以及attach 模式的) 参考效果 参考 ......
Strimzi Kafka Bridge(桥接)实战之三:自制sdk(golang版本)
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《Strimzi Kafka Bridge(桥接)实战》的第三篇,前文咱们掌握了Strimzi Kafka Bridge的基本功能:基于h ......
05_用一个栈实现另一个栈的排序
用一个栈实现另一个栈的排序 【题目】 一个栈中的元素的类型为整型,现在想将该栈从顶到底按从大到小的顺序排序,只许申请一个栈。除此之外,可以申请新的变量,但不能申请额外的数据结构。如何完成排序? 【解答】 将要排序的栈记为stack,申请的辅助栈记为help。在stack上执行pop操作,弹出的元素记 ......
05_猜大小游戏
1. 加减乘除取余 # 方法1 root@bk:~/ckh# expr 1 + 1 2 root@bk:~/ckh# expr 100 - 1 99 root@bk:~/ckh# expr 2 * 2 4 root@bk:~/ckh# expr 9 / 3 3 root@bk:~/ckh# expr ......
05_猜大小游戏05_猜大小游戏
##### 1. 加减乘除取余 ```shell # 方法1 root@bk:~/ckh# expr 1 + 1 2 root@bk:~/ckh# expr 100 - 1 99 root@bk:~/ckh# expr 2 * 2 4 root@bk:~/ckh# expr 9 / 3 3 root ......
基于goravel的CMS,企业官网通用golang后台管理系统
2023年9月11日10:47:00 仓库地址: https://gitee.com/open-php/zx-goravel-website CMS,企业官网通用PHP后台管理系统 框架介绍 Goravel SCUI 后端开发组件 go 1.20 Goravel 1.13 数据库 sql(使用最新日 ......
2023-10-05-周五
运动,,,貌似不可能了,,,哈哈 我发现,,最近的睡眠好像真还有点小离谱了 基本上都是闹钟一响,然后差不多8:30的样子,然后咪一咪 然后继续睡,差不多9:20~9:40的样子,,就内心挣扎,愧疚的醒过来 然后洗漱一下,然后杂七杂八看一下手机 然后....就差不多10:00的样子 然后懒懒散散的去实 ......
gin上使用Grpc入门
要在Go中使用基于Gin的gRPC,你需要执行以下步骤: 安装gRPC:使用以下命令安装gRPC: go get -u google.golang.org/grpc shell复制代码 安装protoc-gen-go:使用以下命令安装protoc-gen-go插件,它用于将protocol buff ......
23/10/05 模拟赛总结
时间安排 7:40 - 7:50 读题,毫无思路。 7:50 - 8:10 尝试写 A 题暴力,发现写不出来。 8:10 - 8:30 写了 B 题爆搜。 8:30 - 9:30 罚坐,想了一会 D 题,毫无思路。 9:30 - 10:00 读懂了 C 题,会了链的部分分,写的时候会了“正解”(随机 ......
10.05模拟赛总结
比赛传送门 总结 \(100+60+0+0=160\),Rank 16,寄寄寄寄寄。 T1 优秀 \(\texttt{/}\) \(\texttt{Good}\) 题意 求 \(l\) 和 \(r\) 之间的 \(2\) 的整数次幂。 分析 解法 1 由于 \(l\) 和 \(r\) 非常小,所以可 ......
2023-10-05 "code":"40006",msg"."Insufficient Permissions", ISV权限不足 or 支付宝产品已绑定,但却显示未开通 ==》一般是指你没有开通app支付功能导致
1.登录支付宝开放平台https://open.alipay.com/ 2.找到控制台==》产品绑定,如下图: 我这里虽然已经绑定了,但是还没签约,意思就是还没开通app支付; 3.点击去开通。 ......
Dubbo3应用开发—协议(Dubbo协议、REST协议 、gRPC协议、Triple协议)
协议 协议简介 什么是协议 Client(Consumer端)与Server(Provider端)在传输数据时双方的约定。 Dubbo3中常见的协议 1.dubbo协议[前面文章中使用的都是dubbo协议] 2.rest协议 3.triple协议 4.grpc协议 5.thirft协议 6.webs ......
04-05 8.30下 子网划分
网速 100M 位/s (秒) 12.5M 字节/s(秒) 1000M 位/s (秒) 125M 字节/s (秒) 存储单位 1字节 byte =8 位bit 8倍 2G大片,100M网速,下载需要2.73分钟 2048/12.5/60=2.73min 1KB =1024字节 1MB =1024KB ......
2023-10-4 使用Arduino为esp8266烧录ps4 5.05适合的固件
2023-10-4 使用Arduino为esp8266烧录ps4 5.05适合的固件 其实这是个伪需求,但都在我琢磨所有之后才发现,goldhen2.1之后的大版本对于505来说都是没什么实质意义,反而会引起死机等情况。想玩的游戏等降级补丁即可。当然本文记录如何通过arduino烧录你想要的插件 1 ......
Maven05-maven仓库和nexus
坐标和依赖是任何一个构件在Maven世界中的逻辑表示方式。而构件的物理表示方式是文件,Maven通过仓库来统一管理这些文件。 1 # # ......
05-独立按键的基本操作与扩展应用
05-独立按键的基本操作与扩展应用 在写代码前需做如下,否则独立按键无响应: 由电路图可知:独立按键默认为高电平,当按键按下时为低电平 即S7(P30)、S6(P31)、S5(P32)、S4(P33) 当按下按键时,P3口对应低电平,松开后对应高电平,判断是否一直按下此时需要使用while(1) 死 ......
golang 代码实现一个工具函数:用于合并两个go map
内容来自对 chatgpt 的咨询 初始化一个新 map,然后遍历两个旧 map,把每个元素都存到新 map 即可。 package main import "fmt" // MergeMaps 创建一个新的 map 用于保存合并后的值。返回新的 map。 func MergeMaps(destMa ......
golang 代码实现:并发请求下游接口,下游接口限制请求参数中某数组单次最多传20个
内容来自对 chatgpt 的咨询 假设你有一个golang 的数组,数组元素数量大于20,你需要调用下游接口,但是接口的请求参数限制了一次最多传20个,为了节省时间,你需要并发调用,完整整个数组的下游调用,请完成代码编写 写法一 我们将数组切分成最大20个元素的小块,并对每个块并发调用下游接口: ......
golang 代码实现如果在在一个秒级时间戳上加上23h59m59s
代码来自chatgpt 实现如果在在一个秒级时间戳上加上23h59m59s 先把时间戳转换成 time 对象,然后利用 Add 函数在该对象上添加23h59m59s,最后获取时间对象的时间戳 package main import ( "fmt" "time" ) func main() { // ......
golang grom 实现 INSERT...ON DUPLICATE KEY UPDATE
内容来自对 chatgpt 的咨询 前言(INSERT...ON DUPLICATE KEY UPDATE 介绍) 当你在MySQL中插入数据,如果唯一键发生冲突,可以使用 INSERT...ON DUPLICATE KEY UPDATE 语句实现插入和更新操作。其基本语法如下: INSERT IN ......
golang 使用 gorm 查询数据 demo
内容来自对 chatgpt 的咨询 题目 假设你有一张学生数据库表,需要通过golang 的gorm查询某个id的学生实体 查询 demo 在这段代码中,"student"变量是一个Student类型的结构体,用于存储查询结果。我们通过调用gorm.DB的Where方法和 First 方法,将第一个 ......
golang 求出这两个对象数组的2个差集,即存在其中一个数组,但是不存在于另一个数组
代码来自 chatgpt package main import ( "fmt" "reflect" ) type Object struct { ID int } func main() { a := []Object{{1}, {2}, {3}} b := []Object{{2}, {3}, ......
Go每日一库之135:Ent(Facebook 开源 Golang 实体框架)
> 对于**后端开发者**来说,一款好用的框架能够大大提升应用的开发效率。为了降低开发者使用 TiDB 的门槛,**方便开发者快速连接到 TiDB**,我们也在和合作伙伴一起,逐步完善**面向主流开发语言和框架的连接支持**。 ![每日一库之135:Ent(Facebook%20开源%20Golan ......
Go每日一库之133:lo(基于泛型的 Golang lodash 库)
近日,Go 核心开发团队终于宣布了 Go 1.18 正式版本的发布!这是一个大家期待很久的版本!Go 1.18 包含大量新功能:模糊测试、性能改进、工作区等,以及 Go 语言开源以来最大的一次语法特性变更 —— 支持泛型! 支持泛型后,我们便不再需要写如下冗余的代码: ![每日一库之133:lo(基 ......
Go每日一库之113:retry-go
在微服务架构中,通常会有很多的小服务,小服务之间存在大量 RPC 调用,但时常因为网络抖动等原因,造成请求失败,这时候使用重试机制可以提高请求的最终成功率,减少故障影响,让系统运行更稳定。[retry-go](https://github.com/avast/retry-go) 是一个功能比较完善的 ......
Go每日一库之99:go-grpc-middleware
grpc的中间件以及中间件库有很多,[go-grpc-middleware](https://github.com/grpc-ecosystem/go-grpc-middleware)应该是其中应用最广泛,本文主要介绍其中的grpc_zap、grpc_auth和grpc_recovery中间件。 # ......
golang-select
select的作用 golang 中的 select 就是用来监听和 channel 有关的 IO 操作,当 IO 操作发生时,触发相应的动作。select 只能应用于 channel 的操作,既可以用于 channel 的数据接收,也可以用于 channel 的数据发送。如果 select 的多个 ......