YANCE BLOG
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
  • 友链
聊一聊:敏捷开发

聊一聊:敏捷开发

近期由于一些工作上的安排,开始负责公司一个开源项目管理的事务,经过团队近两个月的努力总算赶在 deadline 前完成了大版本的发布。在这个项目期间我们尝试通过敏捷开发的模式,解决前期由于团队架构变化带来的问题。 什么是敏捷开发?敏捷 开发是用于描述迭代软件开发的术语。 迭代软件开发通过以较小的增量(通常称为冲刺)对工作执行来缩短DevOps生命周期。 冲刺(sprint) 的时长通常为 1-4
2021-07-15
#杂记 #敏捷开发
聊一聊:常见的分布式锁

聊一聊:常见的分布式锁

前言在分布式系统中,为了实现对互斥资源的安全访问(独占),必须要用到分布式锁。另外在工作中,还有一个应用场景是,在分布式的后台服务中,某些服务只允许单个实例(机器或 Docker)运行,其他的备份机器作为 BackUps 备份节点(比如在笔者的项目中,负责数据同步的逻辑同一时刻只能有一台机器进程来执行),当正在运行的单实例机器(进程)故障后,在线的 BackUps 按照排队顺序,争抢到分布式锁,继
2021-04-05
#Golang

2021书单

人类简史 自卑与超越 财富自由之路 放大 浪潮之巅 麦田里的守望者 老人与海 地球上最孤单的动物 how to 洞见 后面补上书评。。。
2021-01-05
#杂记
sentry部署

sentry部署

Sentry 是一个日志收集和统计平台, 由客户端和服务端组成,目前支持大部分主流的编程语言,并提供 SDK,当程序出现异常就向服务端发送消息,服务端将消息记录到数据库中并提供一个 Web 端显示。 准备工作前置条件 Docker 19.03.6+ Compose 1.24.1+ 硬件最低要求: 2G+内存 部署流程拉取源码做完了准备工作,就可以开始搭建 sentry 了。 从 GitH
2020-12-26
#sentry #日志
MongoDB——TTL索引

MongoDB——TTL索引

MongoDB 有几种很实用的特殊索引,在特定场景中可以达到事半功倍的效果,TTL 索引即其中之一。 过期特定数据是一种常见场景,对 IoT 设备日志、网站 session 等数据而言,我们一般只关心一定时间内的数据,过期数据需要及时删除,TTL 索引很适合用于该场景。 索引创建TTL 索引是特殊的 单字段 索引,且字段类型必须是: BSON date,或时间戳 BSON date 数组 创建
2020-12-15
#mongodb
S3协议入门

S3协议入门

前言S3是AWS服务最早推出的几项服务之一,也是使用最为频繁的几个AWS服务之一。官网文档以及网上文章零零散散看了不少,实际使用中也用过S3的大多数功能,但“纸上得来终觉浅,绝知此事要躬行”,决定给自己挖个坑,结合已读资料和实际使用经验,系统地来梳理一下S3的已有功能。 S3 是什么 Amazon Simple Storage Service(简称S3),是亚马逊AWS服务在2006年第一个正式对
2020-12-12
#云计算

使用 Go 客户端控制 Kubernetes

早期我已经在本地搭建了一个两台机器的k3s集群,并部署了Crawlab( 一个使用Golang 开发的分布式爬虫管理平台),实现了本地的分布式集群服务环境的搭建。服务起来以后,动态的控制容器节点,监控容器运行状态,实现即使的扩容,这都需要我们Kubernetes进行控制。幸运的是Kubernetes直接提供了python、golang的客户端,可以方便的实现Kubernetes API 操作。所
2020-09-24
#Golang #k8s #docker

K3S本地测试环境搭建

迫于家里没有矿,又想尝试在本地搭建一个真实的K8s集群,于是翻出了闲置许久的学生机和目前手上的一台开发机组成了本地K3s集群。 安装参考K3s官网给出的快速安装指南: 主节点1.执行安装指令: 1curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh - 2.获取密钥
2020-09-24
#Golang #k8s #docker

groupcache源码阅读(三)——防止缓存惊群效应

缓存惊群效应惊群效应问题有时被称为缓存击穿,穿透或者雪崩效果。从本质上讲,就像是使系统不堪重负的大量请求。 缓存雪崩:缓存在同一时刻全部失效,造成瞬时DB请求量大、压力骤增,引起雪崩。缓存雪崩通常因为缓存服务器宕机、缓存的 key 设置了相同的过期时间等引起。 缓存击穿:一个存在的key,在缓存过期的一刻,同时有大量的请求,这些请求都会击穿到 DB ,造成瞬时DB请求量大、压力骤增。
2020-09-12
#Golang

groupcache源码阅读(二)——缓存并发控制

互斥锁——sync.Mutex多个协程(goroutine)同时读写同一个变量,在并发度较高的情况下,会发生冲突。确保一次只有一个协程(goroutine)可以访问该变量以避免冲突,这称之为互斥,互斥锁可以解决这个问题。 sync.Mutex 是一个互斥锁,可以由不同的协程加锁和解锁。 sync.Mutex 是 Go 语言标准库提供的一个互斥锁,当一个协程(goroutine)获得了这个锁的
2020-08-24
源码阅读计划
#Golang
1234…12

搜索

Hexo vercel
总访问量 次 总访客数 人
粤ICP备2020133205号