论web系统竞价问题网络延迟引起跳秒问题的解决方案

                                                            论web系统并发竞价问题网络延迟引起跳秒问题的解决方案

         由于最近各种蛋事儿,还要每天夜跑,所以小哥并没有更新博文,最近不少事情让小哥对人生有了新的认识,在浅谈技术 之前,给大家总结一哈放到下面,大家共勉。不要说小哥矫情装逼 ,小哥只是偶尔。。。。

   

                                                                              一、付出不亚于任何人的努力


                                                                              二、要谦虚,不要骄傲


                                                                              三、要每天反省


                                                                              四、活着,就要感谢


                                                                              五、积善行、思利他


                                                                              六、不要有感性的烦恼
         好了,废话不多说了,下面进入主题:
         当在web系统中,如果你用的是tomcat,那么保证tomcat性能的情况下,它可以支持的最大并发量约为150-200左右,当并发量很大的时候会导致我们的服务很慢更甚者停滞。在这里我说两种解决方案,1. 是给tomcat配置nginx反向代理,2.直接用多只猫来负载均衡。
但是我这里说的并不是如何实现负载均衡的问题。而是竞价系统中时间跳秒问题的解决。
  开始系统是每一秒都去后台取一次时间,这样就会在来取的时候出现延迟,导致前台看到的时间是从8秒直接跳到5秒,最后想到的办法是,我们可以五秒或者十秒去后台取一次数据。

前台的定时器:

  //倒计时
   
    function show_time(){
    $("#timeContentId").text(toDays(senc));
    if(0<senc && senc<2000)
    biddingTimeRefreshNew.refresh();
    senc=senc-1000;
    setTimeout("show_time()",1000); 
    }

刷新时间的方法:
   //数据竞价时间
var biddingTimeRefresh = {
    createNew:function(){
      biddingTimeRefresh.refresh = function(){
        $.ajax({
                  type:"POST",
                  url:"online-bidding!refreshBidTime.do",
                  dataType:"json",
                  data:{
                       _projectId:'${myProjectVO.projectId}'
                  },
                  success:function(datas,textStatus){
                    //正常返回数据处理
                      if(datas.success){
                        /*   //核对倒计时
                           if(datas.data.myPro.biddingStage.name == 'JJ'){
                            //竞价倒计时时间
                              $('#timeContentId').text(datas.data.biddingTimeInterval);
                           }else{
                            //报价倒计时时间
                            $('#timeContentId').text(datas.data.repTimeInterval);
                           } */
                     senc=datas.data.sec;
                      }
                    
                  }
              });
               setTimeout( function(){ biddingTimeRefresh.refresh(); } ,8000 ); 
          
        };
          return biddingTimeRefresh;
    }
 }

就是让延迟的部分本地走,然后返回来重置初值继续倒计时就ok,这样跳秒的现象几乎不会出现





























































































































































评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值