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

网站建设搭建步骤辽宁省建设工程信息网推荐中项网

网站建设搭建步骤,辽宁省建设工程信息网推荐中项网,wordpress怎么卖模板,深圳网站制作招聘简介 在电子商务及支付相关平台中#xff0c;常规流程是首先生成订单或支付请求#xff0c;用户随后会在规定时间内完成支付。如果用户未能在预设时限内完成支付动作#xff0c;系统通常会执行相应的过期处理机制#xff0c;即自动取消未支付的订单。 此外#xff0c;这…简介 在电子商务及支付相关平台中常规流程是首先生成订单或支付请求用户随后会在规定时间内完成支付。如果用户未能在预设时限内完成支付动作系统通常会执行相应的过期处理机制即自动取消未支付的订单。 此外这类系统还设置了多种自动化业务规则来处理其他时效性较强的场景例如 到期自动确认收货当商品配送预计到达时间过后若用户未主动确认收货系统将自动视为用户已收货并触发后续评价或售后环节。超时自动退款对于某些未及时处理的退款申请或者因物流异常等原因导致的退款系统在达到预设等待期限后会自动退还消费者款项。下单后自动通知一旦用户下单成功系统会自动触发短信或邮件通知服务向用户发送订单确认信息或其他相关信息。 以上这些功能都是为了提高系统的自动化水平和用户体验减少人工干预的需求并确保交易过程顺畅高效 实现方式 被动关闭不推荐 在电子商务系统中一旦创建了订单系统并不会主动介入进行关闭操作而是静待用户行为仅当用户实际访问或查询订单状态时系统才会实时进行评估以判断是否满足应当关闭订单的条件。缺点就是如果用户一直没有访问订单则会导致订单一直处于未关闭的状态这时数据库中会堆积大量垃圾数据 Slf4j Service public class PassiveShutdownServiceImpl implements OrderShutdown {Autowiredprivate OrderMapper orderMapper;/*** 方法一被动关闭*/Overridepublic void orderShutdown() {//假设订单id为1Long orderId 1L;Order order orderMapper.findOrderById(orderId);//省略其他相关业务判断......//判断当前是否大于到期时间if(order.getExpireTime().compareTo(new Date())-1){//修改订单状态log.info(当前时间大于到期时间);int result orderMapper.updateOrderStatus(orderId);//省略判断是否修改成功相关逻辑}} } select idfindOrderById resultTypecom.yiridancan.delayShutdown.entity.Order parameterTypelongselect * from t_order where id#{orderId} and order_status!CLOSED /selectupdate idupdateOrderStatus parameterTypelongupdate t_order set order_statusCLOSED where id#{orderId} /update 测试代码 SpringBootTest class DelayShutdownApplicationTests {Autowiredprivate PassiveShutdownServiceImpl passiveShutdownService;/** * 延期关闭测试类。通过策略模式指定方法* author yiridancan* date 2024/4/3 22:56*/Testvoid delayShutdown() {OrderShutdown orderShutdown passiveShutdownService;orderShutdown.orderShutdown();}} 定时任务推荐适用于时间精准度不高的场景 定时任务就是定时去扫描表中数据进行订单关闭实现比较简单就不提供具体示例代码 缺点 时间不精准如果一个订单到了关闭时间但定时任务时间还没到就会导致订单一直没有关闭 无法处理大订单量如果数据量大的情况下那么就有可能导致任务执行时间很长订单被扫描到时间可能就很晚那么就会导致关闭时间更晚 数据库压力大定时任务扫描表数据会占用数据库的IO资源。严重时会导致线上的正常业务 Redission推荐 Redisson是一个在Redis的基础上实现的框架它不仅提供了一系列的分布式的Java常用对象还提供了许多分布式服务。可以通过Redission中的RDelayedQueue延迟队列实现订单到期关闭它可以用于在指定的时间后执行某些操作。底层主要是用到了Redis的zset数据结构并且在这基础上增加了一个延迟队列。我们要添加一个数据到延迟队列的时候redisson会把数据超时时间放到zset中并且起一个延时任务当任务到期的时候再去zset中把数据取出来返回给客户端使用。 1.添加依赖 2.配置Redission 创建一个Redission配置类用于创建Redission 3.创建订单服务 创建一个订单服务类使用 RDelayedQueue 来实现订单到期关闭的逻辑 4.创建订单 创建订单controller层用于模拟订单创建并设置关闭时间 5.启动应用 启动应用并访问http://ip:host/orders/create?expireTime关闭时间进行默认订单创建 运行效果 创建订单成功 Redis队列数据 到期关闭结果 可见2分钟后订单id为2024-10-12 13:43:21定时关闭了 6.注意事项 确保Redis服务器正在运行根据需要调整延迟时间和其他业务逻辑处理并发和异常处理以确保在实际环境中的可靠性如遇到以下异常升级Redis版本进行处理 Redission案例源码地址如何优雅的通过SpringBootRedission对订单实现定时关闭资源-CSDN文库 总结 这里只列举了部分实现方式比如还可以通过MQ不推荐会有大量无效调度数据、时间轮、Redis的过期监听等。不同的场景适用于不同的技术方案没有决定的技术 在CSDN上一键三连是对作者辛勤创作的最好鼓励喜欢我的文章就请点赞、收藏、转发吧你们的支持是我持续分享知识的动力感谢大家的陪伴与认可
http://www.hkea.cn/news/14551010/

相关文章:

  • 长春给企业做网站的公司网站界面设计试题
  • 网站建设私单做app需要多少钱
  • 提供中小企业网站建设aqq安装下载
  • 企业网站策划方案兰州网站程序建设
  • 四川网站推广空间设计装修公司
  • 移动端企业网站杭州网站设计优异柚v米科技
  • 软件介绍网站源码wordpress英文版变中文版
  • 美食网站建设的重要性wordpress能做什么网站
  • 小型网站建设价格低网站建设课设总结
  • asp.net网站的验证码怎么使用广州建网站技术
  • 宁波网站推广公司价格欧派全屋定制多少钱一平米
  • 电子商务网站html模板惠州 网站建设公司
  • 网站维护客户wordpress 列表图片
  • 网站建设那种语言好其中包括
  • 公司加强网站建设100个顺口的公司名字
  • 佛山制作网站公司哪家好字体设计教程网站
  • wordpress 李贤威贵阳seo网站推广技巧
  • 怎么查找网站的服务器网页游戏下载
  • 用vs2013做网站案例江苏网站建设公司排名
  • 编程自学免费网站后缀int网站
  • 淘宝客网站哪里可以做响应式网站开发的
  • 郑州pc网站开发网站建设视频 备份 反代
  • 沈阳哪家网站制作公司比较好国外家居创意空间设计
  • 网站技术解决方案微信小程序注册需要钱吗
  • 吉林智能网站建设企业网站整体排名大幅下降
  • 深圳网站搜索优化工具云服务器如何安装网站
  • 网站怎么申请备案简述制作网页时需要的环节
  • 无锡优化网站业务wordpress杂志
  • 网站开发电子商务广告设计就业率
  • 用ps做商城网站好做吗在模板网站建站好吗