java自学网VIP

Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 37205|回复: 369

【java源码】基于redis锁的秒杀系统

  [复制链接]
  • TA的每日心情
    开心
    2021-5-25 00:00
  • 签到天数: 1917 天

    [LV.Master]出神入化

    2025

    主题

    3683

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66345

    宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2017-4-12 14:49:28 | 显示全部楼层 |阅读模式
    1、本项目从抽象到实现阐述了如何利用redis实现分布式锁,完成简单的秒杀功能
    ! A% |6 x' W/ W: a" l2、项目主要用到的redis锁的概念
    ( F# ~3 r& I7 |$ }- o* C秒杀中需要考虑的问题点:
    " X4 b8 b3 d6 ^/ ^" y; {+ h1、既然有并发问题,那我就让他“不并发”,将所有的线程用一个队列管理起来,使之变成串行操作,自然不会有并发问题。+ q" |/ r) o% b2 ]  V* x
    2、秒杀在技术层面的抽象应该就是一个方法,在这个方法里可能的操作是将商品库存-1,将商品加入用户的购物车等等,在不考虑缓存的情况下应该是要操作数据库的。那么最简单直接的实现就是在这个方法上加上synchronized关键字,通俗的讲就是锁住整个方法; 2 _% M+ m% P' S0 X0 }
    3、锁住整个方法这个策略简单方便,但是似乎有点粗暴。可以稍微优化一下,只锁住秒杀的代码块,比如写数据库的部分;
    + d8 S) o. h2 j0 V) ~0 |' n
    7 k* f# ?$ I0 D, V$ b& \) [

    8 K. A9 q' |  h" h百度网盘下载地址链接(百度云):java自学网(javazx.com)redisframework-master.rar 密码回帖可见
    8 x: l. ]- L4 l& Q+ n# p
    游客,如果您要查看本帖隐藏内容请回复

    1 Q, ^9 U/ g0 o0 S* ~2 R! f
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2021-1-19 10:51
  • 签到天数: 198 天

    [LV.7]自成一派

    0

    主题

    306

    帖子

    2724

    积分

    普通会员

    Rank: 2

    积分
    2724
    发表于 2017-4-12 16:16:55 | 显示全部楼层
    thank for sharing
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-4-13 10:00
  • 签到天数: 1 天

    [LV.1]初学乍练

    0

    主题

    2

    帖子

    12

    积分

    普通会员

    Rank: 2

    积分
    12
    发表于 2017-4-13 10:08:23 | 显示全部楼层
    研究源代码
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2019-2-12 19:12
  • 签到天数: 55 天

    [LV.5]渐入佳境

    1

    主题

    99

    帖子

    802

    积分

    普通会员

    Rank: 2

    积分
    802
    发表于 2017-4-14 23:05:39 | 显示全部楼层
    考虑考虑龙
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2019-2-12 19:12
  • 签到天数: 55 天

    [LV.5]渐入佳境

    1

    主题

    99

    帖子

    802

    积分

    普通会员

    Rank: 2

    积分
    802
    发表于 2017-4-14 23:06:33 | 显示全部楼层
    考虑考虑龙
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2017-9-8 19:26
  • 签到天数: 8 天

    [LV.3]初窥堂奥

    0

    主题

    20

    帖子

    120

    积分

    普通会员

    Rank: 2

    积分
    120
    发表于 2017-4-15 01:01:47 | 显示全部楼层
    哈哈哈,支持支持------
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-4-20 16:38
  • 签到天数: 1 天

    [LV.1]初学乍练

    0

    主题

    4

    帖子

    20

    积分

    普通会员

    Rank: 2

    积分
    20
    发表于 2017-4-20 16:39:41 | 显示全部楼层
    微风无法图3图4图4图4图4他
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-4-24 20:51
  • 签到天数: 1 天

    [LV.1]初学乍练

    0

    主题

    39

    帖子

    89

    积分

    普通会员

    Rank: 2

    积分
    89
    发表于 2017-4-24 22:03:28 | 显示全部楼层
    谢谢分享,赞
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017-4-28 13:38
  • 签到天数: 3 天

    [LV.2]登堂入室

    1

    主题

    8

    帖子

    50

    积分

    普通会员

    Rank: 2

    积分
    50
    发表于 2017-4-26 09:00:01 | 显示全部楼层
    66666666666666666
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-4-27 17:54
  • 签到天数: 1 天

    [LV.1]初学乍练

    0

    主题

    3

    帖子

    16

    积分

    普通会员

    Rank: 2

    积分
    16
    发表于 2017-4-27 18:00:15 | 显示全部楼层
    学习利用 希望架构完美
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|Java自学网

    GMT+8, 2024-11-21 17:32 , Processed in 0.208393 second(s), 37 queries .

    Powered by Javazx

    Copyright © 2012-2022, Javazx Cloud.

    快速回复 返回顶部 返回列表