2023年6月21日 需要 2 分钟阅读时间 云的数据考虑 云服务的搭建需要将许多数据特性考虑在内。简单列举如下: 物理特性 性能要求 易变性 容量 监管要求 事务边界 保存期限 所有这些数据需求都会对如何存储底层数据造成决策影响。我们必须做出两个关键性的决策: 单租户还是多租户 使用何种数据存储格式:SQL、NoSQL、文件等 继续阅读
2023年6月13日 需要 2 分钟阅读时间 云服务模式(SaaS、PaaS、IaaS) 有3种云服务模式:软件即服务(SaaS)、平台即服务(PaaS),以及基础设施即服务(IaaS)。每种云服务模式都通过某种程度上的资源抽象,来减低消费者构建和部署系统的复杂性。 继续阅读
2023年4月7日 分类于 札记 需要 2 分钟阅读时间 Developing and publishing modules 你可以收集相关的包放到自己的模块中,推送到远程仓库方便其他开发者使用。这篇文章介绍了如何开发和推送模块。 继续阅读
2023年3月26日 分类于 札记 需要 1 分钟阅读时间 关于非侵入式架构 在工作中,很多项目并不像我们学习时所遇到的那样,不论是大型项目还是小型项目,它们都有同样令人头疼的问题——技术债务。 我们不能逃避,但是需求不会等着我们把这些问题解决之后再继续跟进。我们需要更加优雅的解决方案,这就是非侵入式架构,其在自动化运维领域很受欢迎。 在 Go 中实现非侵入式架构的关键是通过接口和组合来实现松耦合。以下是一些实现非侵入式架构的技巧: 继续阅读
2023年3月26日 分类于 札记 需要 3 分钟阅读时间 关于 Go 反射 在 Go 中,reflect 是一个内置的包,它提供了一组用于运行时反射的方法和类型。使用反射可以在运行时动态地获取和操作**变量的值、类型和方法**。reflect 的主要作用是实现通用代码,例如 JSON 序列化和反序列化、类型转换、结构体拷贝等。 继续阅读
2023年3月1日 分类于 札记 需要 3 分钟阅读时间 C10K 问题:单机一万并发 Dan Kegel 在他的个人网站中发表了一篇讨论单机并发的问题,简称 C10K 问题。 文章中提及了当时的问题背景,以及可供参考的网站1和文章2。关于这个问题文中主要对 I/O 架构和 I/O 策略进行了讨论。 继续阅读