企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
1, 页面 倒计时 2, 倒计时结束,用户可以点击按钮抢购 3, 只要用户点击,相当于一个线程到后台服务器 (一次启动1000线程去抢购) 4, 把商品初始化到redis list a) Lpop b) rpop public class TestRedisMKill { private static final String PRODUCTID = "productid"; public static void main(String\[\] args) { ApplicationContext context=new ClassPathXmlApplicationContext("classpath:applicationContext.xml"); //向redis初始化商品 JedisPool jedisPool = context.getBean(JedisPool.class); Jedis jedis = jedisPool.getResource(); jedis.flushAll(); for (int i = 1; i <=100; i++) { jedis.lpush(PRODUCTID, "商品ID: "+i); } jedis.close(); //模拟线程抢购 for (int i = 1; i <=1000; i++) { new Thread(new Runnable() { @Override public void run() { Jedis jedis2 = jedisPool.getResource(); String lpop = jedis2.lpop(PRODUCTID); if(null==lpop) { System.out.println(Thread.currentThread().getName()+":抢购失败"); }else { System.out.println(Thread.currentThread().getName()+":抢购成功 商品ID:"+lpop); //向MQ发送一个消息 把商品ID和用户ID传到后台 启动一个线程去处理抢购成功这后的业务 } jedis2.close(); } },"张三"+i).start(); } } }