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 策略进行了讨论。 继续阅读
2023年2月27日 分类于 札记 需要 5 分钟阅读时间 线程相关 进程: 一个在内存中运行的应用程序。每个进程都有自己独立的一块内存空间,一个进程可以有多个线程。 线程: 进程中的一个执行任务(控制单元),负责当前进程中程序的执行。一个进程至少有一个线程,一个进程可以运行多个线程,多个线程可共享数据。 与进程不同的是同类的多个线程共享进程的 堆**和**方法区 资源,但每个线程有自己的 程序计数器、虚拟机栈和本地方法栈 ,所以系统在产生一个线程,或是在各个线程之间作切换工作时,负担要比进程小得多,也正因为如此,线程也被称为轻量级进程。 继续阅读
2023年2月20日 分类于 算法 需要 2 分钟阅读时间 位运算 位操作(Bit Manipulation)是程序设计中对位模式或二进制数的一元和二元操作。在许多古老的微处理器上,位运算比加减运算略快,通常位运算比乘除法运算要快很多。在现代编程语言中,情况并非如此,很多编程语言的解释器都会基本的运算进行了优化,因此我们在实际开发中可以不必做一些编译器已经帮我们做好的优化,而就写出代码本身所要表现的意思。 继续阅读