自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

热爱学习和钻研。

一起快乐的学习编程。

  • 博客(13)
  • 收藏
  • 关注

原创 8.【go-kit教程】go-kit链路追踪

OpenTelemetry是一个云原生的分布式应用追踪系统,可以帮助开发人员跟踪和分析分布式系统的性能和行为。它提供了标准化的API和规范,可以在不同的编程语言和框架中实现链路追踪功能。在Go kit中,可以使用OpenTelemetry来实现链路追踪功能。函数创建了一个HTTP handler,并在handler上应用了。中间件,从而实现了endpoint级别的链路追踪。函数创建了一个HTTP server,并在server上应用了。中间件,从而实现了服务级别的链路追踪。在Go kit中,可以使用。

2023-02-28 08:30:00 351

原创 7.【go-kit教程】go-kit限流和熔断

Hystrix是Netflix开源的一个库,它提供了熔断、线程隔离、超时控制和服务监控等功能,可以很好地应对微服务架构中的服务故障问题。go-kit 限流器使用的是令牌桶算法(Token Bucket Algorithm),具体可参考https://bigox.top/pages/27e422/go-kit提供了一个ratelimit包,可以用来限制请求的速率,实现限流功能。服务熔断是指调用方发现服务提供方响应缓慢或者不可用时,调用方为了自保直接失败,不再调用目标服务。函数来配置Hystrix的命令。

2023-02-28 08:00:00 220

原创 6.【go-kit教程】go-kit服务注册发现与负载均衡

go-kit 为不同的服务发现系统(eureka、zookeeper、consul、etcd等)提供适配器,Go-Kit框架本身不提供服务注册中心的实现,但Go-Kit提供了集成第三方服务注册中心的支持。定义如下工厂函数,它会根据传入的实例地址创建一个 gRPC 客户端的 endpoint。register_service 代码。

2023-02-27 08:30:00 444

原创 5.【go-kit教程】go-kit中间件

go-kit提供了一些默认的中间件,例如Logging中间件,它可以记录每个请求的日志信息,包括请求的URL、方法、请求体、响应码和响应体等。中间件是在HTTP请求和响应之间处理请求的一些逻辑,可以用于实现一些通用的功能,例如认证、日志记录、缓存等。服务(service)中间件:服务中间件是针对服务层面的中间件,可以拦截请求,修改上下文信息,添加一些必要的头信息,以及添加跨域资源共享(CORS)等。传输(transport )中间件:传输中间件是针对传输层面的中间件,例如负载均衡器和熔断器等。

2023-02-27 08:00:00 370

原创 4.【go-kit教程】go-kit集成grpc和protobuf

编写协议文件在pb目录下创建package pb;该协议文件定义了一个名为的服务,该服务只有一个方法SayHello,它需要一个参数并返回一个结构体。protoc --go-grpc_out = ./pb --go_out = ./pb ./pb/hello.proto # 以下是生成的文件 ─ pb。

2023-02-27 07:00:00 211

原创 3.【go-kit教程】go-kit集成gin启动服务

由于其灵活的设计, 通过使用 go-kit,开发者可以快速地构建出符合分布式系统要求的微服务应用,同时也能够方便地对已有的应用进行升级和维护。所以我们集成gin也是很方便的,示例在 《go-kit启动http服务》代码示例上更改。

2023-02-26 07:00:00 460

原创 2.【go-kit教程】go-kit启动http服务

go-kit启动http服务。

2023-02-25 21:42:21 205

原创 1.【go-kit教程】go-kit初识

go-kit 本身不是一个框架,而是一套微服务工具集,是框架的底层,可以用go-kit 做适应自己平台的框架。它的设计目标是帮助开发者构建健壮、可维护、可测试的分布式系统。go-kit 的核心理念是通过可组合的组件来实现微服务的功能,这些组件包括服务发现、负载均衡、请求追踪、日志记录、监控等等。go-kit还提供了一种基于中间件的设计模式,使开发人员能够构建可插拔的组件,从而更容易地构建和维护可扩展的分布式应用程序。go-kit 的设计目标是简单、灵活、可扩展。

2023-02-25 21:40:31 626

原创 [go语言基础] 1. go基础环境

go语言(或 Golang)是Google开发的开源编程语言,诞生于2006年1月2日下午15点4分5秒,于2009年11月开源,2012年发布go稳定版。go是非常年轻的一门语言,它的主要目标是“兼具Python 等动态语言的开发速度和C/C++等编译型语言的性能与安全性。GOOS:目标可执行程序运行操作系统,支持 darwin,freebsd,linux,windows。GOARCH:目标可执行程序操作系统构架,包括 386,amd64,arm。是项目转型的首选语言,很多公司在用go重构代码。

2023-02-17 23:46:43 88

原创 Python 网易云信(短信验证码) SDK

Python SDK 网易云信(短信验证码)Golang SDK 网易云信(短信验证码)网易云信官网地址网易云信短信功能开通说明官方短信验证码接口文档 环境依赖准备pip install requests发送短信验证码sm = SmService("你的手机号", "你的appkey", "app_secret", "短信模板id,[数字类型]")print(sm.send_sm_code())成.

2022-02-27 03:00:50 466

原创 Golang 网易云信(短信验证码) SDK

Golang SDK 网易云信(短信验证码)Python SDK 网易云信(短信验证码)网易云信官网地址网易云信短信功能开通说明官方短信验证码接口文档 安装go get github.com/daniuEvan/go-wysm/wysm创建客户端smClient := wysm.NewSmClient()初始化配置smClient.SmConfig.Mobile = "接收验证码的手机号"smClient.SmConfig.AppKey = "网易.

2022-02-27 02:56:53 601

原创 LRU和LFU 算法(页面置换算法)

LRU和LFU的区别LRU和LFU都是内存管理的页面置换算法。LRU:最近最少使用(最长时间)淘汰算法(Least Recently Used)。LRU是淘汰最长时间没有被使用的页面。LFU:最不经常使用(最少次)淘汰算法(Least Frequently Used)。LFU是淘汰一段时间内,使用次数最少的页面。例子假设LFU方法的时期T为10分钟,访问如下页面所花的时间正好为10分钟,内存块大小为3。若所需页面顺序依次如下:2 1 2 1 2 3 4 ----------

2022-02-27 02:42:29 40179

原创 基于Python3实现的各类数据库连接和连接池

基于Python3的各类数据库连接和连接池基于Python3的各类数据库连接和连接池, 支持数据库有: Mysql(MariaDB), Oracle, PostgreSQL(GreenPlum), Vertica, Redis, MongoDB;数据库普通连接和连接池:数据库名称普通连接数据库连接池MysqlYYPostgresqlYYOracleYYVertiYYRedisYYMongoDBYY仓库地址:h

2021-05-27 13:37:53 236

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除