如何保证缓存与数据库双写时的数据一致性 私有分类
第一种回答
首先说一句,你只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题?
如何解决一致性问题?
一般来说,就是如果你的系统不是严格要求缓存+数据库必须一致性的话,缓存可以稍微的跟数据库偶尔有不一致的 情况,最好不要做这个方案,最好将读请求和写请求串行化,串到一个内存队列里去,这样就可以保...
如何设计一个高性能/高并发/高可用/高可靠/可扩展的系统? 私有分类
这里也分享一篇个人收藏很久的文章,出自腾讯技术官方公众号原文链接:https://mp.weixin.qq.com/s/hsH7LMBEDGe_df9UbfOvbQ
作者:booleanwang,腾讯 PCG 后台开发工程师
“N 高 N 可”,高性能、高并发、高可用、高可靠、可扩展、可维护、可用性等是后台开发耳熟能详的词了,它们...
最简单最容易理解的内存分区/内存模型 私有分类
内存分区,分别是堆、栈、自由存储区、全局/静态存储区、常量存储区和代码区。如下图所示
栈:在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限
堆:就是那些由 new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个...
事务四大特性(ACID)原子性、一致性、隔离性、持久性?Redis怎么实现分布式锁? 私有分类
第一种回答
原子性:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。。事务在执行过程中发生错误,会被恢复(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。
一致性:在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。这表示写入的资料必须完全符合所有的预设规则,这包含资料的精确...
如何排查一条慢SQL?可以从哪些方面入手? 私有分类
如果是在项目中,可以通过SpringAOP去查询这个接口运行的时间;
如果是一个sql,可以通过explain的指令去查这个sql的执行计划。
如果有数据库终端的话,也可以通过开启mysql的慢日志查询,设置好时间阈值,进行捕获。
在慢SQL的优化过程中,可以从以下五个角度去进行思考优化:SQL优化、资源占用、业务改造、数据减少、源头替换。
在治理慢查的过程...
订单超时怎么处理?我们用这种方案 私有分类
背景
在企业的商业活动中,订单是指交易双方的产品或服务交易意向。交易下单负责创建这个交易双方的产品或服务交易意向,有了这个意向后,买方可以付款,卖方可以发货。
在电商场景下,买卖双方没有面对面交易,许多情况下需要通过超时处理自动关闭订单,下面是一个订单的流程:
如上图所示,一个订单流程中有许多环节要用到超时处理,包括但不限于:
买家超时...
springboot使用logback日志出现LOG_PATH_IS_UNDEFINED文件夹的问题 私有分类
logback现在基本上已经成为springboot日志框架中使用最多的日志实现,在使用中与各中间件集成的一些注意事项记录如下
一 Spring Boot 中 logback 读取application.properties(application.yml) 中的属性
其中使用的时候发现了一个问题,就是如果使用的lobback配置文件的名称是l...
十六年所思所感,聊聊这些年我所经历的 DevOps 系统 私有分类
从 2008 年开始,作者陆陆续续参与了多个 DevOps 系统的建设,如今,审视这些系统的建设初衷和它们的设计思路或遇到的问题,依然有不少借鉴意义。本文按照时间顺序,把每个 DevOps 系统的特点,诞生的背景,以及在当时所主要解决的问题做一个概要的介绍,同时,也会以今天的视角再次审视这些问题,同样的问题经过十几年的发展,解决方案上会有哪些不同。
前不...
日活 2.5 亿的 Twitter 使用了哪些数据库? 私有分类
Twitter 使用什么数据库存储用户每天发送的数亿条推文?是 SQL、NoSQL 还是其它持久化存储系统?
Twitter 使用什么数据库?
任何一个稍微有点规模的系统其存储层绝不会只使用一种数据库,服务于数以亿计用户的Twitter更是如此。Twitter使用的数据库主要有以下几种:
Hadoop:用于社交图分析、推荐、趋势、...
修改一行注解引起的故障:阿里云开发者 私有分类
作者记录了故障发生时的排查思路,再对问题进行详细描述并分析根本原因,最终找到解决方案。
事情起因
11.11号接到咨询反馈,有用户在沙箱测试环境的一个上传文件场景遇到异常,原因是其依赖我们团队的应用AxxxCore的一个TR接口报错,通过错误堆栈定位是服务内部依赖的一个SOFA JVM服务找不到。
can not f...
BigDecimal用错了,哭晕在厕所。。。 私有分类
来源丨经授权转自 苏三说技术(ID:susanSayJava) 作者丨苏三 前言 在日常开发中,很多小伙伴喜欢用 BigDecimal 来处理精确计算,比如钱、分数、比例啥的。 理论上,它比 double 或 float 更精确,但如果你用得不对,精度丢失的问题会让你哭晕在厕所。 今天我们就来聊聊 ,错误使用BigDecimal的6种场景,为什么会发生问题,...
单体架构就比微服务架构落后吗? 私有分类
单体和微服务谁是毒瘤?单体、分布式、微服务、SOA 到底是什么关系?我的系统该用什么架构?最近终于下定决心研究这个问题并且有所收获,欢迎一起讨论。
一、架构的发展历程
我坚定地认为要深刻地理解一项技术光靠网上一两张按照各项维度对比的表格是不够的,而是要了解这些技术出现的历史背景:他们的出现到底是解决了...
连 nc 命令都不知道太菜了吧 私有分类
来源丨经授权转自 闪客公众号
作者丨闪客
小宇:闪客,你昨天给我讲的《什么叫抓个包看看》,里面是不是用了这个命令创建一个 http 服务?
python -m http.server 8080
闪客:是呀,有什么问题吗?
小宇:哼,你太菜了,我看评论区说直接有个 nc 命令就能搞定,还说这东西是网络工具中的瑞士军刀,功能非常强大。你这...
什么叫进程被 D 了 私有分类
来源丨经授权转自 闪客公众号
作者丨闪客
小宇:闪客闪客,我在公司排查问题的时候,听到有人说某个进程被 D 了,听起来像是骂人一样,这到底是啥意思啊?闪客:哈哈,这可不是骂人。不过这句话稍微有点歧义,有可能指进程被杀死了,但这么说会有点傻缺,还不如直接说进程被杀了。
小宇:那还有什么意思呢?
闪客:更有价值的意思是想表达,这个进程持续处于了 D 状态,...
只因把 https 改成 http,带宽减少了 70% ! 私有分类
一、起因
是一个高并发的采集服务上线后,100m的上行很快就被打满了。
因为这是一条专线,并且只有这一个服务在使用,所以可以确定就是它导致的。
但是!这个请求只是一个 GET 请求,同时并没有很大的请求体,这是为什么呢?
于是使用 charles 重新抓包后发现,一个 request 的请求居然要占用 1.68kb 的大小...
微服务框架设计实践小结 私有分类
文章目录 什么是微服务 单一责任原则 独立的数据存储 使用异步通信实现松散耦合 使用熔断器快速实现故障容错 通过API网关代理微服务请求 确保API变更向后兼容 版本化微服务重大变更 使用专用基础设施托管微服务 创建独立的发布通道 建立组织效率 什么是微服务 微服务极大的改变了服务端引擎的架构方式;微服务不是一个单一的巨型的用来托管应用程序所有业务逻辑的代....
MySQL 给数据表增加一列,一定会锁表吗? 私有分类
分享概要
一、锁的概念
1.1 锁的分类
1.2 InnoDB表锁的特点和使用方式
二、给数据表增加一列,一定会锁表吗?
2.1 MySQL 5.6 会不会锁表
2.2 MySQL 8.0 会不会锁表
三、总结
...
卡拉比猜想:从三维到六维的时空隧道 私有分类
你看过漫威出品、卷福主演的《奇异博士》吗?
一个骄傲的外科神经医生失去了赖以谋生的双手,在机缘巧合之下接触了玄学,竟掌握了穿梭时空技能,最终变成英雄拯救了世界。
电影院里,观众心潮澎湃,被万花筒式的迷幻剧情与特效迷晕了眼。华丽精致的漫威出品,满屏的光怪迷离,都围绕着一个关键词——多维空间。
...
货币需求函数:口袋里的财富秘密 私有分类
引言
物转星移的20世纪金融界,弗里德曼以天生我材必有用,千金散尽还复来的豪放派姿态,站在一片祥和、实际危险重重的凯恩斯时代,扭转乾坤,用“单一规则”分析经济周期,用货币需求函数一举成为20世纪全球最为人知的经济学家。
若以一条大河比喻变化莫测的经济市场,所谓的货币需求,则是存在于表面经济波浪...
对数函数:心心相印于xy轴 私有分类
复杂恋情的演绎者
对数函数
与男友相识、相知、相恋到分手,让质子失魂落魄......世间的缘分想想真的很神奇,互不相识的异乡人来到同一个陌生城市,因为共同的兴趣喜好而相识相知,携手一路相伴五年时间,最终因为双方家庭观念不和而分手。任凭眼泪流下也唤不回相恋时光,阻挡不了缘分已尽的无奈。
&...
