240 发简信
IP属地:艾伯塔
  • Earthly源码解析

    主流程: 完成buildkit配置文件构建并启动,Earthly config文件的构建,环境变量的读取,根据传入的target参数解析执行earthfile为buildki...

  • 基于Buildkit的Drone CI Runner实现

    最近关注了在构建领域非常有前景的两个项目Buildkit和基于Buildkit的Earthly项目,之前在公司一直推广和使用Drone CI项目,也对其有过深入的研究,当时就...

  • 120
    CI的另一种选择——Earthly入门介绍

    Earthly[https://github.com/earthly/earthly]是一个现代化的构建工具,用来完成容器镜像构建,和提供类似Makefile的源代码构建功能...

  • Drone CI源码解析之runner定制与实现

    Drone CI提供了多种runtime,可以利用docker方式运行,也可以通过传统ssh方式运行,也可以采用k8s作为runtime。Drone CI实现了一个可拓展的r...

  • 120
    Dapr介绍

    Dapr 实际是被定义为Distributed Application Runtime(分布式的程序运行时),为开发人员提供一个分布式的程序的开发环境,提供分布式的程序所依赖...

  • Contanerd 随笔

    容器是特殊的进程,runc则是他们的直接管理工具,contanerd则是提供对runc的管理。contanerd通过shim(垫片代理)屏蔽底层runtime实现(如runc...

  • GRPC源码实例解析(二)——UnaryRPC Client 篇

    上篇主要介绍了server端的流程,这篇的关注点是Client端的流程,同样只列出核心主流程代码。

  • GRPC源码实例解析(一)——UnaryRPC Server 篇

    本文以官方提供的入门的demo helloworld(https://github.com/grpc/grpc-go/tree/master/examples/hellowo...

  • NSQ 消息队列

    异步任务与消息队列 同步任务:一定要等任务执行完了,得到结果,才执行下一个任务。 异步任务:不用等任务执行完,直接执行下一个任务。 异步任务最简单可以用异步线程实现,gola...

  • Tekton

    CI/CD在代码开发部署中占据很重要的地位,也是微服务系统快速集成快速部署的关键,当然也是云原生生态中不可缺少的组成部分。k8s是目前最流行的云原生系统核心,把代码发布到k8...

  • kaniko源码走读

    kaniko是一个通过Dockerfile构建镜像的工具,是OCI image标准的一个实现、功能单一、代码量相对较少,了解kaniko源码实现可以更好的理解容器镜像的构建方...

  • Jaeger入门简介

    Jaeger主要用于监视和诊断基于微服务的分布式系统,包括: 分布式上下文传播、分布式事务监控、根本原因分析、服务依赖性分析、性能/延迟优化。用于程序间(服务间)轨迹追踪、行...

  • Elasticsearch随笔

    什么是ElasticSearch 官方定义是ElasticSearch是一个基于Lucene library的分布式搜索引擎。ElasticSearch的开发者Shay Ba...

  • ETCD原理和基本实现

    什么是 ETCD 官方定义为:Distributed reliable key-value store for the most critical data of a dis...

  • 轻量级日志收集工具Filebeat

    引言 日志对于程序非常重要,日志对于定位问题,数据分析有着十分强大的作用,是程序员和运维人员重要的工具。线上90%以上Bug都是依靠程序日志输出定位到。 日志存储选择 日志数...

  • Service Mesh简介

    什么是Service Mesh Service Mesh被译作服务网格,实质是一种网络代理服务。网络代理代理就是中介,可以对请求进行拦截修改,最简单的例子就是电信运营商在流量...

  • 微服务随笔

    程序不仅仅包括代码本身,还包括整个代码的运行环境,如构建的可运行镜像docker环境,包含程序所依赖各种服务的k8s部署整体定义,所依赖的CI/CD环境。不但有代码而且要有一...

  • Go语言特性介绍

    采用goroutine的方式使多线程编写更加容易、代码可读性更好,可以简单理解为订阅者发布者模式,设计类似于unix管道通信模式, 对于消息队列编程有了解的话很容易理解gor...

  • WEB 开发缓存策略介绍

    引子 web页面在服务器端进行渲染,需要根据模板和数据库数据经过运算生成和渲染出最终的页面,这些运算和渲染过程会耗费大量时间和资源,如果将这些运算结果缓存起来放在内存中,下次...