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

怎么看出网站有没有做404页面店铺代运营服务

怎么看出网站有没有做404页面,店铺代运营服务,网站制作q,创业计划书建设网站1. 前言 目的:该项目只用于技术交流,不用于过多商业用途。 适用:可用于简历亮点、毕业答辩等。 2. 项目成果 2.1 秒杀主页 包含5个功能点: ①、Product Name:秒杀商品名称 ②、Product Image:秒杀商…

1. 前言

目的:该项目只用于技术交流,不用于过多商业用途。 

适用:可用于简历亮点、毕业答辩等。

2. 项目成果

2.1 秒杀主页

包含5个功能点:

①、Product Name:秒杀商品名称

②、Product Image:秒杀商品图片

③、Price:秒杀价格

④、Seckill starts in:距离秒杀所剩时间

⑤、Seckill Now:秒杀按钮(核心逻辑)

部分不重要参数,没有做UI设计,只为功能而生

 2.2 秒杀架构

①、MySQL主从复制:一主二从

②、Redis缓存、Redis分布式锁

③、MQ异步处理库存、订单

 

3. 核心代码讲解

3.1 缓存预热

@Override
public void afterPropertiesSet() throws Exception {// 缓存秒杀商品List<SeckillGoods> seckillGoodsList = seckillMapper.queryAllSeckillGoods();for(SeckillGoods goods : seckillGoodsList) {String goodsId = goods.getId();Integer stock = goods.getGoodsStock();HashOperations hashOperations = redisTemplate.opsForHash();hashOperations.put(CONSTANT.SECKILLGOODS, goodsId, stock);}// 缓存秒杀订单List<SeckillOrder> seckillOrderList = seckillMapper.queryAllSeckillOrder();for(SeckillOrder seckillOrder : seckillOrderList) {String userId = seckillOrder.getUserId();String goodsId = seckillOrder.getGoodsId();HashOperations hashOperations = redisTemplate.opsForHash();hashOperations.put(CONSTANT.SECKILLORDER, userId + "," + goodsId, CONSTANT.SECKILLORDER);}}

3.2 核心业务逻辑

@Override
public Map<String, String> buySeckillGoods(String userId, String goodsId) {Map result = new HashMap<String, String>();RLock lock = redisson.getLock(CONSTANT.SECKILLLOCK); // 拿不到会自己阻塞try {lock.lock();// 检查Redis秒杀商品是否有库存Integer stock = (Integer) redisTemplate.opsForHash().get(CONSTANT.SECKILLGOODS, goodsId);if(stock <= 0) {result.put("msg", "秒杀商品库存不足!");result.put("success", "400");return result;}// 检查该用户是否秒杀过该商品Object orderConstant = redisTemplate.opsForHash().get(CONSTANT.SECKILLORDER, userId + "," + goodsId);if(orderConstant != null) {result.put("msg", "该用户已经秒杀过该商品了!");result.put("success", "400");return result;}// Redis新增订单String orderId = UUID.randomUUID().toString();SeckillOrder seckillOrder = new SeckillOrder();seckillOrder.setId(orderId);seckillOrder.setGoodsId(goodsId);seckillOrder.setUserId(userId);redisTemplate.opsForHash().put(CONSTANT.SECKILLORDER, userId + "," + goodsId, CONSTANT.SECKILLORDER);// Redis减少库存redisTemplate.opsForHash().put(CONSTANT.SECKILLGOODS, goodsId, stock-1);// MQ处理库存和订单rabbitTemplate.convertAndSend("seckillGoodsExchange", "seckillGoodsRouting", seckillOrder);rabbitTemplate.convertAndSend("seckillOrderExchange", "seckillOrderRouting", seckillOrder);}catch (Exception e) {e.printStackTrace();}finally {lock.unlock(); // 解锁}result.put("msg", "秒杀商品成功!");result.put("success", "200");return result;
}

4. 其他

还存在其他的补充点(订单支付超时、订单真实支付、MQ消息问题、Redis单机问题等),如果喜欢请三连,我会继续更新。

需要完整代码或帮忙搭建环境,请留下邮箱。

http://www.yayakq.cn/news/140247/

相关文章:

  • 手机网站菜单建设银行网站登录密码
  • 编程学习入门网站网站建设里程碑
  • 如何用php做电商网站建设工程检测中心网站
  • 万象园网站建设与开发广州网页设计培训报班
  • html 社区网站 模板网站建设案例图片
  • 临沂小学网站建设ae免费模板网站
  • 东莞网站建设方案托管姓名logo设计在线生成
  • 网站设置合理的内链机制网站这么设置微信支付宝
  • 昆明怎样优化网站中国建设招聘网站甘肃分行
  • 做网站学习wordpress自动采集插件最好
  • 沾化网站建设wordpress交友模板
  • 深圳商城网站设计公司设计师网站官网
  • 网站策划过程站长工具成品源码
  • 南通建设招聘信息网站网站建设花销
  • 做字幕模板下载网站景区宣传推广方案
  • 北京丰台区做网站公司郴州网站推广公司排名
  • 做网站编辑好吗深圳做h5网站的公司
  • 常州网站搭建wordpress 积分下载插件
  • 学校网站建设评分标准小伙做网站
  • 网站建设快速广西桂林学院
  • 网站案例代码网站建设和技术支持
  • 泉州快速建站模板服务哪家好网站制作
  • 做网站手机号抓取的公司北京建设网站官网
  • 网站 建设运行情况报告网站建设的步骤
  • 广州网站优化外包在线制作图片用什么软件好用
  • 阜阳网站建设价格公司官方网站建设需要多少钱
  • 推广网站的作用广西建设网桂建云系统
  • 服务器上怎做网站谷歌网站推广软件
  • 公司怎么建设网站成都企业网站建站
  • j集团公司的网站建设网站开发工单