1 2 3 4 5 ··· 9 下一页
摘要: 什么是网关 网关(API Gateway) 可以看作是一个“大门”: 家有很多房间(后端服务),网关就是门口的保安。 任何外人想进来(用户请求),都必须先经过保安检查。 保安会决定: 往哪个房间走(请求转发)。 是否有权限进来(身份验证)。 帮忙做翻译(协议转换,比如从 HTTP 转为 gRPC)。 阅读全文
posted @ 2024-12-26 16:48 牛马chen 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 在 Go 语言中,在 Go 语言中,结构体字段后面的 json 标注是用来 指定字段在 JSON 数据中的名称 和 处理方式。这个标注告诉 Go 的 encoding/json 包在序列化(将结构体转换为 JSON)和反序列化(将 JSON 转换为结构体)时,如何映射结构体的字段与 JSON 数据中 阅读全文
posted @ 2024-12-25 13:25 牛马chen 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 通俗描述 JWT(JSON Web Token)的过程 JWT(JSON Web Token)是一种在网络应用中传递信息的方式,广泛用于 身份验证 和 信息交换。它的核心思想是 通过令牌安全地传递信息,确保信息的 完整性 和 保密性。 JWT 的过程: 用户登录(身份验证) 用户通过用户名和密码登录 阅读全文
posted @ 2024-12-25 13:19 牛马chen 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 依赖注入目录的作用 在程序中,模块或功能之间经常需要用到其他模块,就像“卧室需要床”一样。直接自己创建这些依赖可能会让代码很难维护,而依赖注入可以帮我们自动把需要的“工具”提供给模块。 不自己造:模块不需要关心依赖的细节,直接“拿来用”。 解耦:减少模块之间的直接依赖,让代码更灵活。 方便维护:所有 阅读全文
posted @ 2024-12-25 13:04 牛马chen 阅读(1) 评论(0) 推荐(0) 编辑
摘要: Protobuf 文件的具体语法 1. 基本语法 1.1 语法版本 使用 syntax 指定 Protobuf 的版本(proto2 或 proto3),目前推荐使用 proto3。 syntax = "proto3"; 1.2 包声明 使用 package 定义命名空间,避免不同模块间的命名冲突。 阅读全文
posted @ 2024-12-25 12:42 牛马chen 阅读(20) 评论(0) 推荐(0) 编辑
摘要: protoc 是 Protocol Buffers(Protobuf) 的编译器工具,用于处理 .proto 文件。这些文件定义了数据结构(消息)和接口服务。protoc 将 .proto 文件编译为不同编程语言(如 Go、Java、Python)的代码,使开发者能够轻松进行序列化和反序列化。 Pr 阅读全文
posted @ 2024-12-23 11:59 牛马chen 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 什么是 RPC(Remote Procedure Call)? RPC(远程过程调用) 是一种计算机通信协议,它允许程序在不同的计算机上像调用本地函数一样,调用远程服务。开发者无需关注底层通信细节(如网络传输),而是通过调用函数接口完成任务。 通俗解释 可以把 RPC 想象成: 打电话:你拨打远程服 阅读全文
posted @ 2024-12-23 11:48 牛马chen 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 什么是 sync.Once? sync.Once 是 Go 标准库中的一个结构体,用于确保某些代码只执行一次,无论有多少 goroutine 并发调用。它提供了一个线程安全的机制,保证初始化操作或某些关键代码只执行一次。 通俗解释 可以把 sync.Once 想象成一个保险丝: 第一次触发时,保险丝 阅读全文
posted @ 2024-12-18 14:57 牛马chen 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 什么是 WaitGroup? WaitGroup 是 Go 的标准库 sync 包中提供的一种并发控制工具,用于等待一组 goroutine 完成工作。它非常适合在主线程需要等待一组 goroutine 全部完成时使用。 通俗解释 可以把 WaitGroup 想象成一个计数器: 启动任务时:给计数器 阅读全文
posted @ 2024-12-18 12:44 牛马chen 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 在 Go 中,指针方法可以被值类型调用,这归因于 Go 编译器的自动解引用特性。 如果一个方法是为指针类型定义的,而我们使用值类型去调用它,Go 会自动将值的地址传递给方法,使得调用能够正常进行。 例子解析 1. 指针方法的定义 假设我们定义了一个方法绑定在结构体的指针上: type Person 阅读全文
posted @ 2024-11-27 11:36 牛马chen 阅读(15) 评论(0) 推荐(0) 编辑
1 2 3 4 5 ··· 9 下一页