• Go-context源码剖析

    题记上次面试被人问麻了context,记录一下。 简介context.Context 是golang中独特的涉及,可以用来用来设置截止日期、同步信号,传递请求相关值的结构体。 与 Goroutine 有比较密切的关系。 在web程序中,每个Request都需要开启一个goroutine做一些事情,这些goroutine又可能会开启其他的 goroutine去访问后端资源,比如数据库、RPC服...
  • go-micro插件学习

    题记本文主要记录例如etcd,Hystrix,Jaeger等一系列组件的使用,当然还有一些非组件用法的介绍。 Heartbeat分布式系统架构中会有多个节点(node),有的是多个不同的节点服务,有的是多个一样的服务节点。这些节点分担着任务的运行、计算、或者程序逻辑的处理,如果一个节点出现了故障有时将使整个系统无法工作。 心跳机制就应运而生,心跳检测类似于ICU患者的心跳检测仪,对被检测者起...
  • go-micro命令行学习

    题记上篇文章我们提到了go-micro有个CLI(提供命令行界面让我们和微服务进行交互),现在我们来简单的学习一下。 1、什么是go-micro.exe(CLI)?go-micro 是一个命令行工具,用于管理和操作微服务。它提供了一系列命令,允许您进行各种操作,包括调用服务、创建新项目、生成项目模板文件、运行服务、列出服务等等。 2、go-micro.exe(CLI)安装使用如下命令安装go...
  • mongodb学习

    题记​ 本文主要是记录mongodb的安装和使用。 mongodb安装​ 本文主要介绍在macos系统下用docker安装mongodb。首先拉取对应的mongodb镜像 1docker pull mongo:latest 然后跑起来对应的容器 123456docker run -itd --name mongo //容器名-p 27017:27017 //暴露端口-e MONGO...
  • 数据库锁问题

    题记​ 今天在公司遇见了一个数据库锁问题,复盘一下。 问题与原因​ 测试环境下更新Spine接口:biz层使用ExecTx调用data层的一些函数用于数据库操作,其中更新文件时间戳的代码如下所示,其他都是使用c.db.DB(ctx)来实现数据库操作,这可能会出现更新文件时间戳操作使用的 gorm.DB 实例和其他的不同,导致事务不一致的问题。(我就遇见了执行到更新文件时间戳函数卡住的情况,锁...
  • wire依赖注入

    理解一下依赖注入,以及如何用wire (farer.org) Go 项目必备:深入浅出 Wire 依赖注入工具-腾讯云开发者社区-腾讯云 (tencent.com)
  • 延迟双删

    Here’s something encrypted, password is required to continue reading.

  • 未来云计算会是什么样子

    本文是一篇转载文 原文链接:未来云计算会是什么样子?Sealos 或将给出答案, 原文作者:魏鹏宇,来自哈尔滨工业大学,Sealos 社区贡献者,目前从事 Kubernetes 相关研发工作 作者博客:友链第三个 本文以时间顺序,结合历史与时代背景,介绍 Sealos 的发展历程与设计理念。并预测未来的发展。 1. 回首往事:操作系统与应用程序的发展操作系统的产生与发展从1945年第一台电...