随笔分类 - Go特性和项目
摘要:一. 插件工厂 基于接口机制的插件工厂是一种设计模式,用于创建和管理插件。插件是独立的模块,可以动态加载和卸载,以扩展应用程序的功能。 通过使用接口,插件工厂可以提供一种统一的方式来创建和管理这些插件,而不需要了解插件的具体实现细节。 具体实现来说,实现一个插件工厂通过哈希记录所有名字和插件的映射,
阅读全文
摘要:一. Web路由项目升级 二. 分布式缓存项目升级 在原有的功能上进行升级,包装,并发布到github上 原有功能:服务管理的LRU缓存,缓存失败后的调库注册函数,哈希一致的分布式节点,节点之间的http通讯功能,请求合并功能,请求超时机制 需要注意的事项:跟业务的切合度,现有分布式缓存功能对比,有
阅读全文
摘要:0. http包使用 因为后面的项目基本要从tcp或者http开始,所以这里先介绍其机制 http.HandleFunc("/hello", helloHandler) #注册默认服务逻辑上的路由请求 http.ListenAndServe(":8080", nil) #监听指定端口,并使用默认服务
阅读全文
摘要:一. 分布式缓存需要解决的问题 在分布式缓存的场景中,设计和使用缓存时需要解决一些特殊的问题,确保缓存的高效性和一致性。以下是分布式缓存设计中需要重点解决的关键问题: 1. 数据一致性问题 最终一致性:由于分布式缓存是跨多个节点的,数据的一致性可能无法保证为强一致性,通常采用最终一致性模型,即一段时
阅读全文
摘要:一. gee-web 1. 实现目标 Gee Web 是一个极简的 Go 语言 Web 框架,设计目标是为开发者提供一个简单、高效且易于扩展的 Web 框架。它通过 Go 的内置并发特性(goroutine)、接口和反射等机制,实现了基本的路由、请求处理、分组、中间件等功能,帮助开发者快速构建 We
阅读全文
摘要:一. 服务拆分 二. 用户服务 三. 产品服务 四. 订单服务 五. 支付服务 六. RPC服务 Auth 验证 七. 服务监控 八. 链路追踪 九. 分布式事务
阅读全文
摘要:一. http.Handler(静态路由) 简单的通过封装的http类,通过其解析出来的url生成响应,使用一个string和方法的映射 // 引入 Go 标准库中的包 // 类似于 C++ 中的 #include,导入标准库 import ( "fmt" // 格式化输入输出,类似于 C++ 的
阅读全文