接口查询刷新测试,1W次请求查询获取数据

查询 10000 次。
耗时:680 秒


A服务器负责发送查询请求,B服务器负责将结果查询返回给A服务器,当前数据表有200W条用户记录。


A:

        //测试1W次请求 查询平台服务器的时间
        function get_69(){
            $insert_num = 10000;
            echo "查询  {$insert_num} 次。<br>";
            $mark_start = time();
            
            for($i=0; $i<=$insert_num; $i++){
                //uid 为100W之内的随机数
                $uid    = rand(2000, 1000000);
                $this->curl_get69($uid);                
            }
            
            $mark_end   = time();
            
            $jiange     = $mark_end - $mark_start;
            echo "耗时:{$jiange} 秒";
        }
        
        function curl_get69($uid){
            //echo "$uid<Br>";
            $url = "http://test.i.com/test/get_userinfo/{$uid}";
            $curl = curl_init($url);

            curl_setopt($curl, CURLOPT_HEADER, 0); // 过滤HTTP头
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 显示输出结果
            curl_setopt($curl, CURLOPT_TIMEOUT,0);
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //SSL证书认证
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); //严格认证
            $responseText = curl_exec($curl);
            $httpCode = curl_getinfo($curl,CURLINFO_HTTP_CODE);
            curl_close($curl);

            $return = array(
                    'return'=>$responseText,
                    'http_code'=>$httpCode,
            );
            
            $data = @json_decode($responseText, 1);
            //print_r($data);
            return $return;
        }


B:  内存4G

        function get_userinfo($uid=0){
            $DB1    = $this->load->database('69', TRUE);
            //echo date("H:i:s")."--{$uid}<br>";
            $sql    = "SELECT * FROM t_user_test WHERE uid = {$uid} ";
            $query  = $DB1->query($sql);
            echo json_encode($query->row_array(), 1);
            exit;
        }


增加了更新本地数据库操作后:

                $row        = $this->curl_get69($uid);                
                if($row && isset($row['uid'])){
                    $this->db->where('uid', $row['uid']);
                    unset($row['uid']);
                    $this->db->update('t_user_test', $row);
                }


查询 10000 次。
耗时:1387 秒



猜你喜欢

转载自blog.csdn.net/lumengabc/article/details/53638822