首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
架构
订阅
bayiwzq
更多收藏集
微信扫码分享
微信
新浪微博
QQ
19篇文章 · 0订阅
redis指南(8): 千帆竞发 | 分布式锁原理及实现
分布式锁。就是控制分布式系统中不同进程共同访问同一共享资源的一种锁的实现。 分布式锁,可以理解为“总部“ 的概念。 总部来控制锁的占有和通知其他服务等待。各个独立的部署都从总部这里获取锁的消息。
如何在分布式场景下生成全局唯一 ID ?
另外考虑到存储压力,ID 当然是越短越好。 先说最容易理解的方案,利用数据库的自增长序列生成:数据库生成唯一主键,并通过服务提供给其他系统;如果是小型系统,数据总量和并发量都不是很大的情况下,这种方案足够支撑。 如果每次生成一个 ID 可能会对数据库有压力,可以考虑一次性生成 …
高性能秒杀系统的设计思考,超详细!
秒杀大家都不陌生。自2011年首次出现以来,无论是双十一购物还是 12306 抢票,秒杀场景已随处可见。简单来说,秒杀就是在同一时刻大量请求争抢购买同一商品并完成交易的过程。从架构视角来看,秒杀系统本质是一个高性能、高一致、高可用的三高系统。而打造并维护一个超大流量的秒杀系统需…
分布式事务专题(三):分布式事务解决方案之2PC(两阶段提交)
前面已经学习了分布式事务的基础理论,以理论为基础,针对C、TCC、可靠消息最终一致性、最大努力通知这几种。 2PC即两阶段提交协议,是将整个事务流程分为两个阶段,准备阶段(Prepare phase)、提交阶段(commitphase),2是指两个阶段,P是指准备阶段,C是指提…
Redis开发最佳实践
缓存在我们日常开发中占据着举足轻重的地位,通过缓存组件可以让我们的系统有着多方位的提升空间。而Redis就一个代表性的缓存组件。正巧最近使用Redis比较频繁,所以打算通过文章记录一下在Redis开发中遇到的问题和一些开发规范。文章已发布在Github,将会持续保持更新,欢迎s…
不容错过的 Node.js 项目架构
Express.js 是用于开发 Node.js REST API 的优秀框架,但是它并没有为您提供有关如何组织 Node.js 项目的任何线索。 虽然听起来很傻,但这确实是个问题。 正确的组织 Node.js 项目结构将避免重复代码、提高服务的稳定性和扩展性。 这篇文章是基于…
Spring事务传播属性有那么难吗?看这一篇就够了
学习东西要知行合一,如果只是知道理论而没实践过,那么掌握的也不会特别扎实,估计过几天就会忘记,接下来我们一起实践来学习Spring事务的传播属性。 其实只看概念的话已经很直截了当了说明了每个传播性的作用,此时我们再用具体的例子演示一下每个传播性属性下的行为。 此次演示我们使用的…
深入剖析Redis系列(二) - Redis哨兵模式与高可用集群
Redis 的 主从复制 模式下,一旦 主节点 由于故障不能提供服务,需要手动将 从节点 晋升为 主节点,同时还要通知 客户端 更新 主节点地址,这种故障处理方式从一定程度上是无法接受的。Redis 2.8 以后提供了 Redis Sentinel 哨兵机制 来解决这个问题。 …
一文带你深入了解 Redis 的持久化方式及其原理
Redis 提供了两种持久化方式,一种是基于快照形式的 RDB,另一种是基于日志形式的 AOF,每种方式都有自己的优缺点,本文将介绍 Redis 这两种持久化方式,希望阅读本文后你对 Redis 的这两种方式有更加全面、清晰的认识。 关于 RDB 相关配置信息不多,需要我们调整…
还没弄懂分布式场景下数据一致性问题?一文教你轻松解决!
考虑支付重构的时候,自然想到原本属于一个本地事务中的处理,现在要跨应用了要怎么处理。拿充值订单举个栗子吧,假设:原本订单模块和账户模块是放在一起的,现在需要做服务拆分,拆分成订单服务,账户服务。原本收到充值回调后,可以将修改订单状态和增加金币放在一个mysql事务中完成的,但是…