当前位置: 首页 > news >正文

做vlogger的网站有哪些督查营商环境建设网站

做vlogger的网站有哪些,督查营商环境建设网站,做网站赚多少,简易h5制作开发java调用lua脚本完成对商品库存的管理 主页链接 微风轻吟挽歌的主页 如若有帮助请帮忙点赞 //lua脚本 获取到内存不够的商品StringBuilder sb new StringBuilder();//定义一个数组存储可能缺少库存的值sb.append(" local table {} ");//获取值sb.append(" …

java调用lua脚本完成对商品库存的管理

主页链接 微风轻吟挽歌的主页

如若有帮助请帮忙点赞
请添加图片描述

//lua脚本 获取到内存不够的商品StringBuilder sb = new StringBuilder();//定义一个数组存储可能缺少库存的值sb.append(" local  table = {} ");//获取值sb.append("  local values = redis.call('mget',unpack(KEYS)) ");//如果不够就放到table之中sb.append("  for i = 1, #KEYS do ");sb.append("     if tonumber(ARGV[i]) > tonumber(values[i]) then ");sb.append("         table[#table + 1] = KEYS[i] .. '=' .. values[i] ");sb.append("     end ");sb.append("  end");//判断 库存是否sb.append("  if #table > 0 then ");sb.append("  return table ");sb.append("  end ");sb.append("  for i = 1, #KEYS do  ");sb.append("  redis.call('decrby',KEYS[i],ARGV[i]) ");sb.append("  end ");sb.append("  return {} ");

lua 脚本的内容作业个简单的判断,相信逻辑大家都明白,只是lua脚本语言本身不太熟练,这里有一个简单模板,亲测可用 不一定时最优的模板

测试

这里的redisTemplate在官方jarbao中采用的jdk序列化方式导致中文乱码,我这里注入的是自己重写的(网上抄的),因为非本文重要内容,不再详述

   @AutowiredRedisTemplate<Object, Object> redisTemplate;@Resource(name = "redisTemplate")ValueOperations valueOperations;@ResourceStringRedisTemplate stringRedisTemplate;@Test//通过lua脚本多线程操作库存void get() throws IOException {String key1  = "apple";String key2  = "banana";String key3  = "栗子";//三个商品并设置其库存量valueOperations.set(key1,15L);valueOperations.set(key2,8L);valueOperations.set(key3,6L);//lua脚本 获取到内存不够的商品StringBuilder sb = new StringBuilder();//定义一个数组存储可能缺少库存的值sb.append(" local  table = {} ");//获取值sb.append("  local values = redis.call('mget',unpack(KEYS)) ");//如果不够就放到table之中sb.append("  for i = 1, #KEYS do ");sb.append("     if tonumber(ARGV[i]) > tonumber(values[i]) then ");sb.append("         table[#table + 1] = KEYS[i] .. '=' .. values[i] ");sb.append("     end ");sb.append("  end");//判断 库存是否sb.append("  if #table > 0 then ");sb.append("  return table ");sb.append("  end ");sb.append("  for i = 1, #KEYS do  ");sb.append("  redis.call('decrby',KEYS[i],ARGV[i]) ");sb.append("  end ");sb.append("  return {} ");RedisScript<List> script = RedisScript.of(sb.toString(),List.class);ExecutorService executorService = Executors.newCachedThreadPool();for (int i = 0; i < 10; i++) {int i1 = RandomUtil.randomInt(1, 5);executorService.execute(()->{List execute = stringRedisTemplate.execute(script,CollUtil.newArrayList(key1, key2, key3), String.valueOf(i1), String.valueOf(i1), String.valueOf(i1));if(execute.isEmpty()){System.out.println("库存足够,存储成功");return;}for (Object obj : execute){String[] split = obj.toString().split("=");System.out.println(StrUtil.format("商品{} 需求量:{} 库存不足,仅剩{}",split[0],i1,split[1]));}});}//测试中执行所以需要阻塞使用防止因为多线程执行的时候因为其他线程走完导致的测试结束System.in.read();}

测试结果

在这里插入图片描述
ok,这次的lua脚本就记录完毕。
那么开始正事请添加图片描述

http://www.15wanjia.com/news/170451.html

相关文章:

  • 谷歌做不做网站网站验收流程
  • 哪个网站可以做编程题做百度竞价什么网站好
  • 什么是网站建设中的专用主机网站开发html
  • 商务网站开发设计太原网站开发团队
  • 做银行应该关注的网站重庆网站建设seo
  • 网站存在的问题制作精美网站建设口碑好
  • 网站平台建设缴纳什么税微信开店免费平台
  • wordpress怎么搭建网站快对作业小程序入口
  • 上海做网站hlanggroup网站设计一般多少钱一个页面
  • 手工艺品外贸公司网站建设方案小外包公司
  • 网站开发人员职位需要上传视频的网站
  • 学网站建设的专业叫什么通付盾 网站公司建设
  • 酒店网站做的比较好的互助县公司网站建设
  • 怎么建立和设计公司网站手机兼职赚钱正规平台怎么找
  • 有多人做网站是个人备案怎么注册网址
  • 泉州做网站公司网络广告词
  • 郑州做网站_郑州免费建站我想做代加工
  • 品牌学习网站seo排名哪家公司好
  • 做亚克力在那个网站上好电子商务网站建设 代码
  • 做脚本的网站什么是网络营销与策划
  • 建设网站类策划书做响应式网站有什么插件
  • 包装材料网站建设免费做四年级题的网站
  • 自己可以做网站吗基于phpt漫画网站开发
  • 计算机应用网站建设与维护是做什么网站制作珠海公司
  • 合肥市城乡建设局网站首页购买域名后怎么做网站
  • 开封小吃网站建设网站建设质量管理定义
  • 表白网站在线制作软件帝国cms网站地址
  • 网站重要三要素建站系统和构建系统
  • 建设淘宝客网站多少钱打开wordpress标题显示
  • 茂名网站建设方案开发互站网源码