首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
码农札记
merlinfeng
创建于2022-11-11
订阅专栏
web后端技术总结,分布式、微服务、数据库、消息队列、golang ...
等 1 人订阅
共17篇文章
创建于2022-11-11
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
掌握分布式环境缓存更新策略,提高缓存与数据库双写一致性!
各系统存储的数据量越来越大,数据的查询性能越来越低。 此时,就需要我们不断的进行优化,最常用的就是引入缓存。 而引入缓存后,我们如何保证缓存和数据库的一致性呢?
Go语言程序编译注入版本信息,提升Debug速度!
为了对运行程序进行版本追踪,避免各个版本的服务程序混淆,通常的做法为在go build编译的时候程序注入 版本标志、编译时间、当前分支、当前 Tag、当前的提交号等信息,让go程序在运行的时候就...
Redis 到底是单线程还是多线程呢?
Redis是高性能分布式缓存常用中间件,我们经常说Redis是单线程的,也有人说Redis在6.0版本采用了多线程,那么Redis到底是采用单线程呢?还是多线程?
快速掌握kafka原理以及常见面试题
简介 Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处
2020,我离开了向往的北京 | 掘金年度征文
口口声声的减肥大业终于还是荒废了,工作近六年,庆幸的是发量还可以(PS:可能是技术能力不达标)。 感受过北漂的艰辛,15年初来到这个陌生的城市,和同学一起四个人3000块租了一个20平的大主卧,四张床,每天上班学习到十一二点,也没有觉得累。 提到挤,要提下西二旗,在帝都,西二旗…
MySQL-SQL语句执行流程
MySQL基本架构概览如下MySQL的一个简要架构图上图涉及的一些组件的基本作用连接器:身份认证和权限相关(登录MySQL的时候)。查询缓存:执行查询语句的时候,会先查询缓存(MySQL8.0版本后移
MySQL-深入浅出锁分类及实现原理
背景数据库是一个多用户并发使用的共享资源。当多个并发读写数据时,在数据库中就会产生多个事务同时读写同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。 这个时候就要
系统优化-连接池技术原理与实现
个人公众号『码农札记』,欢迎关注,查看更多精彩文章。 在服务访问的过程中,每一次请求都要建立一次数据库连接。建立连接是一个费时的活动,每次都要花费大约0.05s~1s的时间,而且系统还要分配内存资源。 这个时间对于一次或几次数据库操作,或许感觉不出系统有太大的开销。可是对于现在…
SSO单点登录流程详解
个人公众号『码农札记』,欢迎关注,查看更多精彩文章。 企业发展初期,系统设计不多,可能只有一个系统就可以满足业务需求,用户也只需要用账号和密码登录即可完成认证。但是随着业务的迭代发展,系统架构会随之迭代,演变越来越多的子系统,用户每进入一个系统可能都需要登录一次,才能进行相关操…
Redis 为什么如此高效
个人公众号『码农札记』,欢迎关注,查看更多精彩文章。 Redis是一款使用C语言编写、可基于内存亦可持久化的日志型、Key-Value型开源数据库。它可以用作:数据库、缓存和消息中间件。 String:缓存、计数器、分布式锁等。 List:链表、队列、微博关注人时间轴列表等。 …
【理论篇】浅析分布式中的 CAP、BASE、2PC、3PC、Paxos、Raft、ZAB
个人公众号『码农札记』,欢迎关注,查看更多精彩文章。 在常见的分布式系统中,总会发生诸如机器宕机或网络异常(包括消息的延迟、丢失、重复、乱序,还有网络分区)等情况。基于此,产生了适应各种场景的一致性 破坏整个系统的一致性。 由于涉及理论较多,本文借鉴了好多博主的文章,反复认真研…
分布式高并发系统限流原理与实践
诞生了高并发系统三大利器限流,缓存,降级/熔断。 缓存: 将数据库中的数据缓存起来,提升系统访问速度和并发度,保护数据库资源。 熔断: 当某一服务出现了过载现象,为防止整个系统故障,直接关闭该服务或者保证部分请求成功,另一部分返回失败。比如10s内连续请求失败次数达到20次, …
Redis布隆过滤器原理与实践
在高并发请求时,业务数据一般会对数据进行缓存,提高系统并发量,因为磁盘IO和网络IO相对于内存IO的成百上千倍的性能劣势。 做个简单计算,如果我们需要某个数据,该数据从数据库磁盘读出来需要0.1s,从交换机传过来需要0.05s,那么每个请求完成最少0.15s(当然,事实上磁盘和…
MySQL事务隔离级别详解
四个特性ACID原子性(Atomicity)事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。例如,如果一
从源码分析 MySQL的多版本控制(MVCC)
什么是MVCCMVCC怎么实现的InnoDB中MVCC的实现依赖四个条件:隐藏字段,事务链表,readview,undolog.下面我们就这四个条件分析一下.隐藏字段根据MySQL官网关于InnoDB
golang-context详解
个人公众号『码农札记』,欢迎关注,查看更多精彩文章。 context.Context 是golang中独特的涉及,可以用来用来设置截止日期、同步信号,传递请求相关值的结构体。 与 Goroutine 有比较密切的关系。 这就是Go语言为我们提供的Context,中文可以称之为“…
MySQL-深入浅出锁分类及实现原理
个人公众号『码农札记』,欢迎关注,查看更多精彩文章。 数据库是一个多用户并发使用的共享资源。当多个并发读写数据时,在数据库中就会产生多个事务同时读写同一数据的情况。 若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。 这个时候就要引入锁的概念,来应对上面所…