并发问题 关于Redis

【吐槽】Jimesembria
付费请人解这个BUG , 有没有php同学有兴趣,(问题原因是理论上是5分钟内不生产同样金额的订单, 但是由于并发原因没控制好)
10:34:02
【话唠】ˇmonster-福 2018/8/28 10:34:02

昨晚帮你分析了,用redis是最好的。。
【活跃】Mcode 2018/8/28 10:34:12

我刚刚想说的@ˇmonster-福州
【活跃】Mcode 2018/8/28 10:34:22

用redis

Jimesembria撤回了一条消息
10:35:15
【传说】小林-厦 2018/8/28 10:35:15

设备?
【吐槽】Jimesembri 2018/8/28 10:35:21

【吐槽】Jimesembri 2018/8/28 10:35:37

php没有这种限流算法吗?
【吐槽】Jimesembri 2018/8/28 10:37:08

@小林-厦门 要多管理个应用。
【话唠】ˇmonster-福 2018/8/28 10:37:09

限流算法肯定是可以的,但是你怎么保证一个令牌不会同时被两个人查走?
10:37:33
【话唠】ˇmonster-福 2018/8/28 10:37:33

最终还是要用redis,队列之类的来保证原子操作
【吐槽】Jimesembri 2018/8/28 10:37:34

所以就需要CAS做并发控制。
【话唠】ˇmonster-福 2018/8/28 10:38:12

cas不是做单点登录的么
【吐槽】Jimesembri 2018/8/28 10:38:47

CAS Compare And Swap
【吐槽】Jimesembri 2018/8/28 10:39:09

有点类似于乐观锁
10:39:39
【吐槽】Jimesembri 2018/8/28 10:39:39

CAS就是一直尝试, 比较是不是期望的值, 然后再替换。
【话唠】ˇmonster-福 2018/8/28 10:39:48

既然你有思路了,那就去实现吧
【吐槽】Jimesembri 2018/8/28 10:40:15

不懂php 所以需要咨询下php有没有这种实现方式。

Jimesembria撤回了一条消息
【吐槽】Jimesembri 2018/8/28 10:41:18

php有没有办法多个并发公用一段内存空间?
【话唠】ˇmonster-福 2018/8/28 10:41:37

用。有扩展
10:41:50
【潜水】Y 2018/8/28 10:41:50

php队列实现的不好,所以一般这东西都习惯用redis来控制,能做到先入先出的原则,保持一致性
【吐槽】Jimesembri 2018/8/28 10:42:13

用redis确实是可以实现这个功能的。
【话唠】ˇmonster-福 2018/8/28 10:42:51

shmop 共享内存扩展。。用起来更麻烦。还是redis最方便也最好用。
【吐槽】Jimesembri 2018/8/28 10:43:08

好吧。 如果实在不行就只能用redis了。
【吐槽】Jimesembri 2018/8/28 10:43:30

@ˇmonster-福州 谢谢了。
【潜水】Y 2018/8/28 10:43:36

不是实在不行用redis,而是用别的不一定比redis更好

并发问题 关于Redis的更多相关文章

  1. java高级精讲之高并发抢红包~揭开Redis分布式集群与Lua神秘面纱

    java高级精讲之高并发抢红包~揭开Redis分布式集群与Lua神秘面纱 redis数据库 Redis企业集群高级应用精品教程[图灵学院] Redis权威指南 利用redis + lua解决抢红包高并 ...

  2. golang 并发demo 写入 redis

    原文链接:golang 并发demo 写入 redis 源代码: package main import ( "fmt" "runtime" "str ...

  3. 高并发简单解决方案————redis队列缓存+mysql 批量入库(ThinkPhP)

    问题分析 问题一:要求日志最好入库:但是,直接入库mysql确实扛不住,批量入库没有问题,done.[批量入库和直接入库性能差异] 问题二:批量入库就需要有高并发的消息队列,决定采用redis lis ...

  4. 【高并发架构】Redis缓存高并发之-主从架构

    Redis主从架构 到目前为止,Redis Cluster 能实现很好的性能,但如果只是缓存几个G的数据,那么单机Redis就足够了,但缓存主要用来读的,单机的QPS有一定的极限,一两万QPS一台应该 ...

  5. 【高并发架构】Redis特点及构件模型

    数据结构 redis 相比 memcached 来说,拥有更多的数据结构,能支持更丰富的数据操作.如果需要缓存能够支持更复杂的结构和操作, redis 会是不错的选择. redis 主要有以下几种数据 ...

  6. 多线程并发问题解决之redis锁

    一 问题背景 我们做的是医疗信息化系统,在系统中一条患者信息对医院中当前科室中的所有诊断医生是可见的,当有一个诊断医生点击按钮处理该数据时,数据的状态发生了变化,其他的医生就不可以再处理此患者的数据了 ...

  7. 应对高并发场景的redis加锁技巧

    // 获取锁getLock() {    // 是否有正在执行的线程    boolean hasLock = false;    try {        hasLock = redisClient ...

  8. 总结:如何使用redis缓存加索引处理数据库百万级并发

    前言:事先说明:在实际应用中这种做法设计需要各位读者自己设计,本文只提供一种思想.准备工作:安装后本地数redis服务器,使用mysql数据库,事先插入1000万条数据,可以参考我之前的文章插入数据, ...

  9. redis并发问题

    redis中的并发问题 使用redis作为缓存已经很久了,redis是以单进程的形式运行的,命令是一个接着一个执行的,一直以为不会存在并发的问题,直到今天看到相关的资料,才恍然大悟~~ 具体问题实例 ...

随机推荐

  1. Oracle中对现有表增加列

    altertable Tablename add(column1 varchar2(20),column2 number(7,2)...) --Oracle中修改列名不可以,但是可以删除列,增加列 a ...

  2. java基础(2)--进制

    进制 进制基础, 目的:理解计算机只能处理2进制的数据和指令 1)10进制计数规律 数字: 0 1 2 3 4 5 6 7 8 9 基数:10 权:  1000 100 10 1 权是基数的n次幂 2 ...

  3. CommStringLib

    #include "syswatcher/CommStringLib.h" //#include "String16.h" #undef LOG_TAG #de ...

  4. c语言字符处理函数常见使用集合

    1.最近看一些开源项目代码时,总会看到 c 语言中一些  "str" 开头的处理字符串的用法,有的之前没用到过,特此记录,随时看到随时添加. 这里不提出源码,只是一些使用说明加例子 ...

  5. LeetCode第[54]题(Java):Spiral Matrix

    题目:螺旋矩阵 难度:Medium 题目内容: Given a matrix of m x n elements (m rows, n columns), return all elements of ...

  6. "Entity Framework数据插入性能追踪"读后总结

    园友莱布尼茨写了一篇<Entity Framework数据插入性能追踪>的文章,我感觉不错,至少他提出了问题,写了出来,引起了大家的讨论,这就是一个氛围.读完文章+评论,于是我自己也写了个 ...

  7. python基础7 - 函数2

    4. 使用元组让函数返回多个值 利用 元组 同时返回温度和湿度 def measure(): """返回当前的温度""" temp = 39 ...

  8. 深入理解Lambda

    概述 Lambda是一个表达式,也可以说它是一个匿名函数.然而在使用它或是阅读Lambda代码的时候,却显得并不那么容易.因为它匿名,因为它删减了一些必要的说明信息(比如方法名).下面就来说说Lamb ...

  9. C# 集合类 Array,Arraylist,List,Hashtable,Dictionary...

    我们用的比较多的非泛型集合类主要有 ArrayList类 和 HashTable类.我们经常用HashTable 来存储将要写入到数据库或者返回的信息,在这之间要不断的进行类型的转化,增加了系统装箱和 ...

  10. 四十五 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的bool组合查询

    bool查询说明 filter:[],字段的过滤,不参与打分must:[],如果有多个查询,都必须满足[并且]should:[],如果有多个查询,满足一个或者多个都匹配[或者]must_not:[], ...