Redis进阶:深入解读阿里云Redis开发规范(修订版)
Key命名设计:可读性、可管理性、简介性规范建议使用冒号即:进行分割拼接,因为很多Redis客户端是根据冒号分类的。比如有几个Key:apps:app:1、apps:app:2和apps:app:3。
Redis高级玩法:如何利用SortedSet实现多维度排序
说明:本次实践基于Redis版本3.2.11。 关于SortedSet 首先,我们都知道Redis的SortedSet是可以根据score进行排序的,以手机应用商店的热门榜单排序为例,根据下载量倒序
D炸天的Redis,该如何监控?
本文重点讲述Redis的哪些metrics需要重要监控(篇幅有限,不能涵盖所有),以及我们如何获取这些metrics数据。从而确保对我们应用至关重要的Redis是否健康运行,以及当出现问题时能及时通知
5G时代,如何彻底搞定海量数据库的设计与实践
5G时代,业务数据越来越丰富,业务使用MySQL数据库作为后台存储,存储引擎使用InnoDB,会带来哪些挑战?如何针对公司业务特点及MySQL数据库特性,制定若干数据库使用规范供一线RD在设计业务时参
一个诡异的MySQL查询超时问题,居然隐藏着存在了两年的BUG
这一周线上碰到一个诡异的BUG。线上有个定时任务,这个任务需要查询一个表几天范围内的一些数据做一些处理,每隔十分钟执行一次,直至成功。通过日志发现,从凌晨5:26分开始到5:56任务执行了三次,三次都
Mysql的sql优化方法
1、选择最合适的字段属性 2、尽量把字段设置为NOT NULL 3、使用连接(JOIN)来代替子查询(Sub-Queries) 4、使用联合(UNION)来代替手动创建的临时表 5、事务 6、锁定表 7、使用外键 8、使用索引 9、优化de的查询语句
带你重走 TiDB TPS 提升 1000 倍的性能优化之旅
性能优化这个事情核心只有一句话,用户响应时间去哪儿了?性能优化很困难的原因在于,为了定位用户响应时间在各个模块的分布,需要对系统的各个部件进行测量和分析,从底层硬件,CPU、IO、网络到上层应用架构,应用代码跟数据库的交互方式都需要涉及。
数据库时间慢了14个小时,Mybatis说,这个锅我不背!
在本次问题排查的过程中,多次用到单元测试,这也是单元测试的魅力所在,用最简单的代码,最轻量的逻辑,最节省时间的方式来验证和追踪错误。
Mysql中慢SQL的分析与优化
解决思路:将数据存放在更快的地方;适当合并I/O;利用分布式架构
解Bug之路-主从切换"未成功"?
前言数据库主从切换是个非常有意思的话题。能够稳定的处理主从切换是保证业务连续性的必要条件。今天笔者就来讲讲主从切换过程中一个小小的问题。 故障场景最近线上进行主从切换,大部分应用都切过去了,但是某些应
实践了5千万的数据表和重建索引,学到了!
项目中有一张历史记录表,主要用于记录一些接口调用流水,因为该表的地位不是那么重要,当初的创建者并未对核心字段创建索引。不知不觉这张表的数据已经有5千万数据了,由于没有索引,在排查问题时,发现这种表根本查不动。于是决定下手进行分表并建立索引。这张表在系统中只负责插入,影响范围极小,正好拿来练手
由一次 UPDATE 过慢 SQL 优化而总结出的经验
如果再遇到这种执行很慢但是实际上更新命中很少数据并且该有的索引都有的情况,可以先在一个数据量很少的测试环境,看看在进入统计数据分析前,SQL 改写转换是否有问题
Mysql高并发下重复插入问题排查和优化
前言最近测试给我提了一个bug,说我之前提供的一个批量复制商品的接口,产生了重复的商品数据。追查原因之后发现,这个事情没想象中简单,可以说一波多折。正文1、需求产品有个需求:用户选择一些品牌,点击确定按钮之后,系统需要基于一份默认品牌的商品数据,复制出一批新的商品。拿到这个需求时觉得太简单了
收藏:一些比较好的Redis 性能优化思路总结
在一些网络服务的系统中,Redis 的性能,可能是比 MySQL 等硬盘数据库的性能更重要的课题。比如微博,把热点微博[1],最新的用户关系[2],都存储在 Redis 中,大量的查询击中 Redis
3000帧动画图解MySQL为什么需要binlog、redo log和undo log
MySQL最初搭载的存储引擎是自研的只支持简单查询的MyISAM的前身ISAM,后来与Sleepycat合作研发了Berkeley DB引擎,支持了事务。江山代有才人出,技术后浪推前浪,MySQL在持续的升级着自己的存储引擎的过程中,遇到了横空出世的InnoDB。
HeapDump性能社区专题系列一:了解数据库性能优化
数据库性能优化的目标是通过充分利用系统资源来最小化查询的响应时间。对这些资源的最佳利用包括最大限度地减少网络流量、磁盘 I/O 和 CPU 时间。
MySQL全面瓦解25:构建高性能索引(案例分析篇)
所有的这些案例都只是一些经验积累,只有熟悉查询优化器、索引的内部原理,了解索引优化的策略,才能定位这些问题的原因并加以解决。
发生即看见,一切可回溯 | TiDB 故障诊断与性能排查探讨
在刚刚发布的 TiDB 5.3 版本中,PingCAP 率先在数据库领域推出 “持续性能分析”(Continuous Profiling)功能(目前为实验特性),跨越分布式系统可观测性的鸿沟,为用户带来数据库源码水平的性能洞察,彻底解答每一个数据库问题。
Redis+Caffeine两级缓存,让访问速度纵享丝滑
原创:微信公众号 码农参上,欢迎分享,转载请保留出处。在高性能的服务架构设计中,缓存是一个不可或缺的环节。在实际的项目中,我们通常会将一些热点数据存储到Redis或MemCache这类缓存中间件中,只有当缓存的访问没有命中时再查询数据库。在提升访问速度的同时,也能降低数据库的压力。随着不断
【全网首发】(大表小技巧)有时候 2 小时的 SQL 操作,可能只要 1 分钟
大家好,我是yes。上篇文章 关于一张 5 亿数据表之我与 DBA 的 battle 发了之后,有好几个小伙伴来问我 SQL 是怎么拆的。这篇我们来简单盘下,其实拆 SQL 是因为涉及大表删除的问题。比如,你现在需要删除一张一共有 5 亿数据的表里面的 2021 年数据,假设这张表叫 yes
Redis 突然变慢了如何排查并解决?
Redis 通常是我们业务系统中一个重要的组件,比如:缓存、账号登录信息、排行榜等。一旦 Redis 请求延迟增加,可能就会导致业务系统“雪崩”。我在单身红娘婚恋类型互联网公司工作,在双十一推出下单就送女朋友的活动。谁曾想,凌晨 12 点之后,用户量暴增,出现了
为什么mysql的count()方法这么慢?
兄弟们。浅浅的炫个富吧。说出来你们可能不信。手机你们有吗?我有。短信,知道吧?一条一毛钱,我天天发。你敢想吗?所以说,年轻人,有钱是真的好。今天,我们就以短信为话题聊起。短信,它又叫SMS。 比如说,你有一张短信表(sms),里面放了各种需要发送的短信信息。s
索引失效的这10种场景,把我坑惨了
我之前写的一篇文章《聊聊sql优化的15个小技巧》,自发表之后,在全网广受好评,被很多大佬转载过,说明了这类文章的价值。今天我接着上一期数据库的话题,更进一步聊聊索引的相关问题,因为索引是大家都比较关心的公共话题,确实有很多坑。不知道你在实际工作中,有没有遇到过下面的这两种情况:明明在
MySQL全面瓦解9:查询的排序、分页相关
数据库中的数据直接呈现出来一般不是我们想要的,所以我们上两节演示了如何对数据进行过滤的方法。除了对数据进行过滤, 我们可能还需要对数据进行排序,比如想从列表中了解消费最高的项,就可能需要对金额字段做降序排序,想看年龄从小到大的分布情况,就可能需要对user表的age字段进行升序排序。
百亿级数据分表后怎么分页查询?
当业务规模达到一定规模之后,像淘宝日订单量在5000万单以上,美团3000万单以上。数据库面对海量的数据压力,分库分表就是必须进行的操作了。而分库分表之后一些常规的查询可能都会产生问题,最常见的就是比如分页查询的问题。一般我们把分表的字段称作shardingkey,比如订单表按照用户ID作为shar
我说MySQL联合索引遵循最左前缀匹配原则,面试官让我回去等通知
面试官: 我看你的简历上写着精通MySQL,问你个简单的问题,MySQL联合索引有什么特性?心想,这还不简单,这不是问到我手心里了吗?听我给你背一遍八股文!我: MySQL联合索引遵循最左前缀匹配原则,即最左优先,查询的时候会优先匹配最左边的索引。例如当我们在 (a,b,c) 三个字段上创
聊聊sql优化的15个小技巧
大家好,我是苏三,又跟大家见面了。前言sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到。如果某天你负责的某个线上接口,出现了性能问题,需要做优化。那么你首先想到的很有可能是优化sql语句,因为它的改造成本相对于代码来说也要小得多。那么,如何优化sql
【全网首发】数据库系列:覆盖索引和避免回表
1 介绍在MySQL数据库查询过程中,索引覆盖和避免不必要的回表,是减少检索步骤,提高执行效率的有效手段。下面从这两个角度分析如何进行MySQL检索提效。2 数据准备模拟一个500w数据容量的部门表 emp,表结构如下,并通过工具模拟500w的数据:CREATE TABLE `emp` (
16条MySQL使用规范,减少MySQL80%问题!
上篇文章介绍了如何创建合适的MySQL索引,今天再一块学一下如何更规范、更合理的使用MySQL?合理规范的使用MySQL,可以大大减少开发工作量和线上问题,并提升SQL查询性能。我精心总结了这16条MySQL规约,分享给大家,欢迎评论指正。1. 禁止使用select *阿里开发规范中,有这
hive分区和分桶你熟悉吗?
大家好,我是球球,好久没有更新原创了,这几天用分桶遇到了一些问题,特来总结一下,和大家一起学习交流一下。什么是分区使用场景:什么是分桶使用场景:分区分桶的区别从表现形式形式上:从创建语句上从数量上:作用上:什么是分区1.是指按照数据表的某列或某些列分为多个区,区从形式上可以
一文读懂 MySQL 索引
1 索引简介1.1 什么是 MySQL 的索引官方定义:索引是帮助 MySQL 高效获取数据的数据结构从上面定义中我们可以分析出索引本质是一个数据结构,他的作用是帮助我们高效获取数据,在正式介绍索引前,我们先来了解一下基本的数据结构2 索引数据结构2.1 Hash 索引Hash 索引是
美团面试官:可重复读隔离级别实现原理是什么?(一文搞懂MVCC机制)
可重复读隔离级别实现原理是什么?它和MVCC又有什么关系?什么是Read View?
还傻傻搞不懂MySQL事务隔离级别么(图文并茂,保证你懂!)
并行事务可能出现的问题,具体表象就是脏写,脏读,不可重复读,幻读。MySQL通过隔离不同程度地规避这些问题,MySQL隔离级别有4种,包括:读未提交(READ UNCOMMITTED)、读提交 (READ COMMITTED)、可重复读 (REPEATABLE READ)、串行化 (SERIALIZ
图解 | 聊聊 MyBatis 缓存
你好,我是悟空。本文主要内容如下:一、MyBatis 缓存中的常用概念MyBatis 缓存:它用来优化 SQL 数据库查询的,但是可能会产生脏数据。SqlSession:代表和数据库的一次会话,向用户提供了操作数据库的方法。MappedStatement:代表要发往数据库执行的指令,可
注意!分页 + 模糊查询有坑!
前言不知道你有没有使用过Mysql的like语句,进行模糊查询?不知道你有没有将查询结果,进行分页处理?模糊查询,加上分页处理,会有意想不到的坑,不信我们继续往下看。我之前提供过一个品牌查询接口,给前端品牌选择控件使用的。当时为了性能考虑,怕前端控件因为一次性加载太多的品牌,而导致页面卡死
如何定位慢SQL以及慢SQL日志分析与优化方案
导语一个sql执行很慢的就叫慢sql,一般来说sql语句执行超过5s就能够算是慢sql,需要进行优化了。 正文为何要对慢SQL进行治理每一个SQL都需要消耗一定的I/O资源,SQL执行的快慢直接决定了资源被占用时间的长短。假设业务要求每秒需要完成100条SQL的执行,而其中10条
两个事务并发写,能保证数据唯一吗?
哟,又是我小白。最近有点高产了。连我自己都害怕了。直接进入正题吧。两个事务并发写,能保证数据唯一吗?我先来解释下标题讲的是个啥。我们假设有这么一个用户注册的场景。用户并发请求注册新用户。你有一张数据库表,也就是下面的user表。产品经理要求用户和用户之间,电话号码不能重复,为了保证
​Mysql数据库查询好慢,除了索引,还能因为什么?
 我熟练应用ctrl c和ctrl v 开发curd代码好多年了。mysql查询为什么会慢,关于这个问题,在实际开发经常会遇到,而面试中,也是个高频题。遇到这种问题,我们一般也会想到是因为索引。那除开索引之外,还有哪些因素会导致数据库查询变慢呢?有哪些操作,可以提升mysq
阿里二面:为什么要分库分表?
 大家好,我是苏三,又跟大家见面了。前言在高并发系统当中,分库分表是必不可少的技术手段之一,同时也是BAT等大厂面试时,经常考的热门考题。你知道我们为什么要做分库分表吗?这个问题要从两条线说起:垂直方向 和 水平方向。
Mysql的复合索引,生效了吗?来篇总结文章
最近频繁出现慢SQL导致系统性能问题,于是决定针对索引进行一些优化。一些表结构本身已经有了不少索引,如果再继续添加索引,势必会影响到插入数据的性能。那么,是否可以使用组合索引来达到目的呢?这篇文章咱们来一探究竟。
聊聊日常开发中,如何减少bug呢?
本文总结了50多个减少bug的编码注意点,都是日常开发经典的范例,希望对大家有帮助
MySQL 崩溃恢复过程分析
天有不测风云,数据库有旦夕祸福。前面写 Redo 日志的文章介绍过,数据库正常运行时,Redo 日志就是个累赘。现在,终于到了 Redo 日志扬眉吐气,大显身手的时候了。本文我们一起来看看,MySQL 在崩溃恢复过程中都干了哪些事情,Redo 日志又是怎么大显身手的。本文介绍的崩溃恢复过程,
为什么我建议在复杂但是性能关键的表上所有查询都加上 force index
最近,又遇到了慢 SQL,简单的看了下,又是因为 MySQL 本身优化器还有查询计划估计不准的问题。
Redis 在 vivo 推送平台的应用与优化实践
一、推送平台特点 vivo推送平台是vivo公司向开发者提供的消息推送服务,通过在云端与客户端之间建立一条稳定、可靠的长连接,为开发者提供向客户端应用实时推送消息的服务,支持百亿级的通知/消息推送,秒级触达移动用户。 推送平台的特点是并发高、消息量大、送达及时性较高。目
后端思维之数据库性能优化方案
1、前言毫不夸张的说咱们后端工程师,无论在哪家公司,呆在哪个团队,做哪个系统,遇到的第一个让人头疼的问题绝对是数据库性能问题。如果我们有一套成熟的方法论,能让大家快速、准确的去选择出合适的优化方案,我相信能够快速准备解决咱么日常遇到的80%甚至90%的性能问题。从解决问题的角度出发,我们得先
数据库篇——hash索引
我常常思考数据调优是怎样的,我刚工作的时候经常被问到这类问题,我只能看一些文章,说一些不推荐用的方式,实际上为什么不推荐用,数据库增删改查的背后到底发生了什么,我会尽力的为大家一点点的揭开它的面具。
MySQL 不同隔离级别,都使用了什么锁?
大家好,我是树哥。在上篇文章,我们聊了「MySQL 啥时候会用表锁,啥时候用行锁」这个问题。在文章中,我们还留了一个问题,即:如果查询或更新时的数据特别多,是否从行锁会升级为表锁?此外,还有朋友留言说到:不同的隔离级别可能会用不同的锁,可以结合隔离级别来聊聊。其实上面虽然是两个问题,但如果你把不
经典SQL面试10题解析
一、提要作为一名数据工作人员,SQL是日常工作中最常用的数据提取&简单预处理语言。因为其使用的广泛性和易学程度也被其他岗位比如产品经理、研发广泛学习使用,本篇文章主要结合经典面试题,给出通过数据开发面试的SQL方法与实战。以下题目均来与笔者经历&网上分享的中高难度SQL题。二、解
分库分表经典15连问
前言大家好,我是田螺。我们去面试的时候,几乎都会被问到分库分表。田螺哥整理了分库分表的15道经典面试题,大家看完肯定会有帮助的。1.我们为什么需要分库分表在分库分表之前,就需要考虑为什么需要拆分。我们做一件事,肯定是有充分理由的。所以得想好分库分表的理由是什么。我们现在就从两个维度去思考它
【译】比较缓存数据库Redis与MongoDB的性能
这篇文章中,我们将比较两个最流行的NoSQL 数据库:Redis 和 MongoDB(Percona内存存储引擎),看看优劣,还有性能对比。
数据库系列1:高并发下的数据字段变更
1 背景经常会遇到这种情况,我们的业务已经稳定地运行一段时间了,并且流量渐渐已经上去了。这时候,却因为某些原因(比如功能调整或者业务扩展),你需要对数据表进行调整,加字段 or 修改表结构。可能很多人说 alter table add column ... / alter table modif
线上服务宕机,码农试用期被毕业,原因竟是给MySQL加个字段
1. 问题:怎么给线上表加字段?工作中最常遇到的问题,怎么给线上频繁使用的大表添加字段?比如:给下面的用户表(user)添加年龄(age)字段。CREATE TABLE `user` ( `id` int NOT NULL AUTO_INCREMENT COMMENT '主键', `n
MySQL到底有没有解决幻读问题?
MySQL InnoDB引擎在Repeatable Read(可重复读)隔离级别下,到底有没有解决幻读的问题?网上众说纷纭,有的说解决了,有的说没解决,甚至有些大v的意见都无法达成统一。今天就深入剖析一下,彻底解决这个幻读的问题。解决幻读问题之前,先普及几个知识点。1. 并发事务产生的问题
mysql invalid conn排查
mysql invalid conn排查服务监控系列文章服务监控系列视频问题背景服务使用golang ,客户端库是go-mysql-driver ,系统测试环境频繁但是不总是报出invalid conn 错误,但实际拿sql执行时却是正常执行。排查思路原因分析客户端使用了无效连接由于
MySQL 不一样的 NULL
你好,我是yes。前不久看到面试群里有同学发表了一个疑问~
为什么需要插入意向锁?
不久之前,有位读者问了一个关于 insert intention waiting 的问题,回答过程中,我还把意向锁(intention lock)和插入意向锁(insert intention lock)搞混了,实际上这是 2 种不同类型的锁。为此,我研究了下插入意向锁,于是有了这篇文章。本
【全网首发】深入剖析Redis持久化机制
Redis是基于内存存储的数据库,如果遇到服务重启或者崩溃,内存中的数据将会被清空。所以为了确保数据安全性和可靠性,我们需要将内存中的数据持久化到磁盘上。 持久化不仅可以防止由于系统故障、重启或者其他原因导致的数据丢失。还可以用于备份、数据恢复和迁移等操作。
【译】对比多种MySQL高可用解决方案的优缺点
确保数据库高可用性的关键选项有哪些?它们对比后孰优孰劣?
【全网首发】日常Bug排查-读从库没有原子性?
前言日常Bug排查系列都是一些简单Bug排查。问题虽小,但经常遇到,了解这些问题,会让我们少走点弯路,提升效率。说不定有些问题你遇到过哦:)Bug现场业务开发同学突然问了笔者一个问题,从库读会不会没有原子性?我下意识的反应怎么可能,只要是遵守MySQL主从Replication协议的原子性至少
【译】作为程序员应该知道的最基本SQL优化建议
当我们谈论系统性能优化时,除了代码级别的各种有针对性的优化外,还有一个非常重要的手段来优化数据库的性能。在互联网系统中,当系统访问越来越多,数据量越来越多时,数据库的压力将越来越大。如果数据库表结构设计不正确,SQL语句写得不好,代码性能可能极高,但系统会被数据库拖下来。因此,我们程序员有必要了
大家都在用MySQL count(*)统计总数,到底有什么问题?
在日常开发工作中,我经常会遇到需要统计总数的场景,比如:统计订单总数、统计用户总数等。一般我们会使用MySQL 的count函数进行统计,但是随着数据量逐渐增大,统计耗时也越来越长,最后竟然出现慢查询的情况,这究竟是什么原因呢?本篇文章带你一下学习一下。1. MyISAM存储引擎计数为什么这么快?
【全网首发】MySQL全面瓦解30:备份与恢复
1 为什么需要数据库备份灾难恢复:当发生数据灾难的时候,需要对损坏的数据进行恢复和还原需求的变更或者回滚:当需求发生变更,或者需要回滚到之前的版本时,数据库备份也显得很重要。审计:需要知道某一个阶段的数据或者Schema的实际情况测试:将实际的生产环境的数据导入到本地备份为测试数据,来验证
【译】SQL递归与CTE查询的原理和应用
介绍在本文中,我们将了解 SQL Recursive WITH CTE(公用表表达式)查询的工作原理,以及我们如何应用它们来处理分层数据模型。
《我想进大厂》之mysql夺命连环13问
想进大厂,mysql不会那可不行,来接受mysql面试挑战吧,看看你能坚持到哪里?
【译】MySQL rewriteBatchedStatements 的属性设置
介绍在本文中,我们将了解 MySQL rewriteBatchedStatements 在使用 JDBC、JPA 或 Hibernate 时是如何工作的。
拿捏!隔离级别、幻读、Gap Lock、Next-Key Lock
前面我写了很多Mysql相关的知识点,到这一篇稍微可以串一下了,从SQL执行流程、MVCC到锁,很多时候可能觉得对于间隙锁和Next-Key Lock好像已经理解了,但是好像又觉得理解差那么一点意思,这篇文章从头来梳理一下概念,明确一下这些知识。
数据库系列:使用高区分度索引列提升性能
数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版)数据库系列:高并发下的数据字段变更1 背景我们常常在创建组合索引的时候,会纠结一个问题,组合索引包含多个索引字段,它的顺序应该怎么放,怎样能达到更大的性能利用。正确的索引字段顺序应该取决于使用该索引的查
万字详解,吃透 MongoDB!
本文已经收录进 JavaGuide(「Java学习+面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。)少部分内容参考了 MongoDB 官方文档的描述,在此说明一下。MongoDB 基础MongoDB 是什么?MongoDB 是一个基于 分布式文件存储 的开源 NoSQL
一文读懂数据库基础
1 范式化设计1.1 第一范式(1NF)无重复的列定义所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为
Mysql修改、添加、删除字段
1.添加字段1.在末尾添加字段(1)语法ALTER TABLE <表名> ADD <字段名> <数据类型> [约束条件];语法格式的说明:<表名> 为数据表的名字;<字段名> 为所要添加的字段的名字;<数据类型&g
记一次 Druid 超时配置的问题 → 引发对 Druid 时间配置项的探究
问题背景最近生产环境出现了一个问题,错误日志类似如下Failed to obtain JDBC Connection; nested exception is com.alibaba.druid.pool.GetConnectionTimeoutException: wait millis 10
数据库设计的步骤
数据库设计是指:根据用户的需求,在数据库管理系统上(比如:MySQL、Oracle),设计数据库的结构和建立数据库的过程。 数据库设计的设计内容包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施和数据库的运行和维护。
本地事务-以mysql为例
事务特性事务一般是指逻辑上的一组操作,或者作为单个逻辑执行单元的一系列操作。同属于一个事务的操作会作为一个整体交给系统,这些操作要么全部执行成功要么全部执行失败。事务存在的意义是为了保证系统中所有的数据都是符合期望的,且相互关联的数据之间不会产生矛盾,即数据状态之间的一致性(Consistenc
聊聊数据库连接池 Druid
在 Spring Boot 项目中,数据库连接池已经成为标配,然而,我曾经遇到过不少连接池异常导致业务错误的事故。很多经验丰富的工程师也可能不小心在这方面出现问题。 在这篇文章中,我们将探讨数据库连接池,深入解析其实现机制,以便更好地理解和规避潜在的风险。
日常Bug排查-偶发性读数据不一致
日常Bug排查-偶发性读数据不一致前言日常Bug排查系列都是一些简单Bug的排查。笔者将在这里介绍一些排查Bug的简单技巧,同时顺便积累素材。Bug现场业务场景先描述这个问题出现的业务场景。这是一个支付的场景,如果支付成功了,我们就把支付状态置为success(主单据更新)同时写入支付成功

有开始,就会有进​步!

在追求性能的道路上,记录每一刻的成长!源码解读,编程技巧,外文翻译,技术实践,线上案例等等,记录自己,启发他人!

专家作者推荐

巡山小汪

关注微信公众号《解Bug之路》,有问题请在公众号中咨询:) 无论多么艰苦的时刻,都不要忘记,辉煌的未来,在你的眼中闪耀!

飞哥开发内功

《深入理解Linux网络》作者,腾讯搜狗十年工程师,公众号「开发内功修炼」作者!

踩刀诗人

聊聊技术,唠唠段子,偶尔做菜写诗,欢迎关注我的公众号 踩刀诗人

Brand

搜索关注微信公众号【架构与思维】:撰稿者为bat、字节的几位高阶研发/架构,专注技术分享。

专题推荐

分布式系统绕不开的核心之一的就是数据缓存,有了缓存的支撑,系统的整体吞吐量会有很大的提升。通过使用缓存,我们把频繁查询的数据由磁盘调度到缓存中,保证数据的高效率读写。
21篇文章38544阅读量
Netty 是一个异步事件驱动的网络通信层框架,用于快速开发高可用高性能的服务端网络框架与客户端程序,它极大地简化了 TCP 和 UDP 套接字服务器等网络编程。
作者:闪电侠,《跟闪电侠学 Netty》已出版了。书的前半部分是掘金小册中的内容:通过一个完整的 IM 项目入门 Netty;后半部分用了较大的篇幅来介绍 Netty 的底层原理,也会穿插讲一些源码阅读的思路,希望能够帮助到你。
13篇文章21865阅读量