摘要: 通过调用client-go客户端使用yaml文件的方式部署服务到K8S集群内 func main() { namespace := "test" config, err := clientcmd.BuildConfigFromFlags("", "config") if err != nil { p 阅读全文
posted @ 2022-10-11 10:52 悠悠听风 阅读(459) 评论(0) 推荐(0) 编辑
摘要: 在go中复制文件夹内容需要递归来一层层检查文件夹是否存在,不存在则创建文件。 package util import ( "fmt" "io" "os" "path" ) type Duplication struct{ } func New()*Duplication{ return &Dupli 阅读全文
posted @ 2022-09-21 17:52 悠悠听风 阅读(383) 评论(0) 推荐(0) 编辑
摘要: 使用Kratos从0搭建微服务 1、初始化项目 环境准备 安装相关环境以及工具: kratos项目初始化 初始化项目 //创建项目 kratos new <Your project name> //拉取项目依赖 go mod download //运行项目 kratos run //输出 INFO 阅读全文
posted @ 2022-05-23 11:18 悠悠听风 阅读(1379) 评论(0) 推荐(0) 编辑
摘要: func main() { var fileUrl = "file/2021-12-23/itzd1c0vqs0cgmi3lgaecss200movxmj.pdf" //获取文件名称加后缀 fmt.Println(path.Base(fileUrl)) //获取文件后缀 fmt.Println(pa 阅读全文
posted @ 2021-12-23 16:23 悠悠听风 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 引言 说到go语言最厉害的是什么就不得不提到并发,并发是什么?,与并发相关的并行又是什么? 并发:同一时间段内执行多个任务 并行:同一时刻执行多个任务 进程、线程与协程 进程: 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。每个进程都有自己 阅读全文
posted @ 2021-11-24 16:32 悠悠听风 阅读(453) 评论(0) 推荐(0) 编辑
摘要: 引言 当项目架构演进到微服务的时候,系统分布式部署,传统单个流程的本地 API 调用被拆分成多个微服务之间的跨网络调用,由于引入了网络通信、序列化和反序列化等操作,系统发生故障的概率提高了很多。而业界通常用多少个9来衡量系统的可用性,如99.99%表示一年中有1小时左右的不可用时间。那么如何有效确保 阅读全文
posted @ 2021-11-16 14:18 悠悠听风 阅读(867) 评论(1) 推荐(0) 编辑
摘要: 引言 Json web token (JWT) 是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所 阅读全文
posted @ 2021-11-10 11:42 悠悠听风 阅读(3118) 评论(0) 推荐(0) 编辑
摘要: 什么是链路追踪 借用阿里云链路追踪文档来解释 分布式链路追踪(Distributed Tracing),也叫 分布式链路跟踪,分布式跟踪,分布式追踪 等等,它为分布式应用的开发者提供了完整的调用链路还原、调用请求量统计、链路拓扑、应用依赖分析等工具,可以帮助开发者快速分析和诊断分布式应用架构下的性能 阅读全文
posted @ 2021-11-04 17:47 悠悠听风 阅读(1491) 评论(1) 推荐(3) 编辑
摘要: 引言 上篇介绍了如何使用nacos作为配置管理中心,并使用viper来解析配置 官方介绍nacos不仅可以用来做配置中心还支持服务注册、发现以及动态DNS服务功能 nacos的安装 根据文档启动一个nacos nacos快速开始 服务注册使用姿势 在data中引入nacos服务 //使用wire注入 阅读全文
posted @ 2021-11-04 09:56 悠悠听风 阅读(2386) 评论(1) 推荐(0) 编辑
摘要: 初识nacos nacos是阿里开源的一款用于动态服务发现、配置管理和服务管理的平台。 官方介绍,Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。 Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台 阅读全文
posted @ 2021-11-03 14:52 悠悠听风 阅读(1964) 评论(0) 推荐(0) 编辑
摘要: 介绍 GORM是一个使用Go语言编写的ORM框架。中文文档齐全,对开发者友好,支持主流数据库。 GORM官方文档 安装 go get -u github.com/jinzhu/gorm 在kratos中引入GORM框架 在kratos生成的目录internal/data中找到data.go文件, 修 阅读全文
posted @ 2021-11-03 10:25 悠悠听风 阅读(822) 评论(0) 推荐(0) 编辑
摘要: 介绍 zap日志库是一款高性能的开源日志库,提供了结构化日志记录和printf风格的日志记录 安装 go get -u go.uber.org/zap 如何在kratos框架中使用 参考官方文档中描述,为了方便业务自适配不同的 log 接入使用,Logger 只包含了最简单的 Log 接口。当业务需 阅读全文
posted @ 2021-11-02 17:23 悠悠听风 阅读(1787) 评论(5) 推荐(0) 编辑
摘要: mysql主从复制介绍 主从复制是基于mysql binlog日志来实现的 当主库发生新的操作时都会记录新的binlog 从库获取主库的binlog来进行回放 主从复制的过程是异步的 主从复制的前提 2个或以上的数据库实例 主库需要开启二进制日志 server_id要不同,区分不同的节点 主库需要建 阅读全文
posted @ 2021-10-27 16:46 悠悠听风 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 查看日志会发现表名自动加了s 在model实现以下方法即可解决 type UsUser struct { ID int64 `gorm:"column:id" db:"column:id" json:"id" form:"id"` CreatedTime time.Time `gorm:"colum 阅读全文
posted @ 2021-09-10 17:14 悠悠听风 阅读(5029) 评论(0) 推荐(0) 编辑
摘要: kratos简介 Kratos 一套轻量级 Go 微服务框架,包含大量微服务相关功能及工具 本文基于kratos v2.0.3,windows平台,其他系统平台均可借鉴参考 环境搭建 Golang开发包 Protoc编译工具安装 Protoc-gen-go插件安装 开启module模式 并配置GOP 阅读全文
posted @ 2021-09-06 14:26 悠悠听风 阅读(2987) 评论(0) 推荐(1) 编辑