上一页 1 ··· 155 156 157 158 159 160 161 162 163 ··· 234 下一页

2019年1月17日

异步通信rabbitmq——消息重试

摘要: 目标: 利用RabbitMQ实现消息重试和失败处理,实现可靠的消费消费。在消息消费异常时,自动延时将消息重试,当重试超过一定次数后,则列为异常消息,等待后续特殊处理。 准备: TTL:Time-To-Live,通过给消息、队列设置过期时间(单位:毫秒),来控制消息、队列的生命周期。在达到时间后,消息 阅读全文

posted @ 2019-01-17 17:15 ExplorerMan 阅读(561) 评论(0) 推荐(0)

重启rabbitmq服务

摘要: 重启rabbitmq服务通过两个命令来实现: rabbitmqctl stop :停止rabbitmq rabbitmq-server restart : 重启rabbitmq 因为rabbitmqctl是没有restart命令的,所以重启rabbitmq服务需要这么两步。 另外,附上一些有用的官方 阅读全文

posted @ 2019-01-17 15:45 ExplorerMan 阅读(2125) 评论(0) 推荐(0)

基于Python语言使用RabbitMQ消息队列(二)

摘要: 工作队列 在第一节我们写了程序来向命名队列发送和接收消息 。在本节我们会创建一个工作队列(Work Queue)用来在多个工人(worker)中分发时间消耗型任务(time-consuming tasks)。 工作队列(又叫做: Task Queues)背后的主体思想是 避免立刻去执行耗时任务并且等 阅读全文

posted @ 2019-01-17 12:18 ExplorerMan 阅读(419) 评论(0) 推荐(0)

基于Python语言使用RabbitMQ消息队列(一)

摘要: 介绍 RabbitMQ 是一个消息中间人(broker): 它接收并且发送消息. 你可以把它想象成一个邮局: 当你把想要寄出的信放到邮筒里时, 你可以确定邮递员会把信件送到收信人那里. 在这个比喻中, RabbitMQ 就是一个邮筒, 同时也是邮局和邮递员 . 和邮局的主要不同点在于RabbitMQ 阅读全文

posted @ 2019-01-17 11:59 ExplorerMan 阅读(461) 评论(0) 推荐(0)

2019年1月15日

MySQL事务隔离级别详解

摘要: 前两天面试,问到了四种隔离级别,当时觉得大多数数据库都为read committed,结果没想到mysql是个例外。在此做一下隔离级别和各种数据库锁的使用。 首先说一下ACID四大特性: 四大特性 · 原子性 事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。通常,与某个事务关联 阅读全文

posted @ 2019-01-15 21:41 ExplorerMan 阅读(173) 评论(0) 推荐(0)

mysql的事务隔离级别

摘要: 事务的四大特性(ACID):1.原子性(atomicity):一个事务必须视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作,这就是事务的原子性。2.一致性(consistency):数据库总数从一个一致性的状态转换 阅读全文

posted @ 2019-01-15 21:24 ExplorerMan 阅读(113) 评论(0) 推荐(0)

分布式锁的几种实现方式

摘要: 目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两 阅读全文

posted @ 2019-01-15 18:39 ExplorerMan 阅读(151) 评论(0) 推荐(0)

mysql事务,select for update,及数据的一致性处理

摘要: 在MySQL的InnoDB中,预设的Tansaction isolation level 为REPEATABLE READ(可重读) 在SELECT 的读取锁定主要分为两种方式: SELECT ... LOCK IN SHARE MODE SELECT ... FOR UPDATE 这两种方式在事务 阅读全文

posted @ 2019-01-15 18:00 ExplorerMan 阅读(205) 评论(0) 推荐(0)

MySQL的SELECT ...for update

摘要: 最近的项目中,因为涉及到Mysql数据中乐观锁和悲观锁的使用,所以结合项目和网上的知识点对乐观锁和悲观锁的知识进行总结。 悲观锁介绍 悲观锁是对数据被的修改持悲观态度(认为数据在被修改的时候一定会存在并发问题),因此在整个数据处理过程中将数据锁定。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据 阅读全文

posted @ 2019-01-15 17:27 ExplorerMan 阅读(472) 评论(0) 推荐(0)

秒杀场景,异步扣减库存解决超卖的问题

摘要: 1、限流2、将库存放到redis中、接收用户请求的时候。从redis取库存,判断库存量是否大于本次订单购买量库存大于本次购买量:扣减redis中的库存、并且将订单信息推送到MQ;库存小于本次购买量:直接返回、数量不足。3、MQ消费者获取消息:1):更新数据库库存(乐观锁)2):生成订单信息,扣除用户 阅读全文

posted @ 2019-01-15 16:53 ExplorerMan 阅读(1276) 评论(0) 推荐(0)

上一页 1 ··· 155 156 157 158 159 160 161 162 163 ··· 234 下一页

导航