0

我将数据发布到远程 php 文件,并使用 post 方法将数据保存到远程 mysql 数据库,就像它一样简单。

但我担心的是每 30 秒到 1 分钟获取一次数据,并通过来自 android 手机的 http 帖子(即来自“N”台手机)发送到服务器,所以,数据会发生冲突吗?有没有可能丢失数据?例如:来自 100mobiles

目前正在使用 000webhost.com 免费托管,我打算转为付费托管。

但是我需要缓冲所有传入的数据然后保存它会避免数据丢失吗?还是继续我的相同方法并拥有高速服务器?

我对服务器可以处理传入数据的最大速度知之甚少。如果许多数据同时来自许多手机怎么办?我需要手动缓冲还是服务器为我做。

如果手动缓冲请分享一些代码,以便我更好地理解。(我已经照顾并正在使用 gps 和网络提供商的 android 手机电池)

<?php

$longitude = $_POST['lon'];
$latitude= $_POST['lat'];
$imei= $_POST['imei'];
$speed = $_POST['sp'];
$date = $_POST['date'];
if($longitude != "" && $latitude != "")
{
$mysql_host = "xxx";
$mysql_database = "xxx";
$mysql_user = "xxx";
$mysql_password = "xxx";

$con=mysql_connect($mysql_host,$mysql_user,$mysql_password ) OR DIE ("Unable to select db".mysql_error());

if($con)
{

    mysql_select_db($mysql_database);

        //check if imei number already exists

        $sql="select emp_name from mob_reg where imei='$imei'";
        $result=mysql_query($sql);

        if((mysql_num_rows($result))== 0)
        {
            echo "invalid";

        }
         else
        {
     $sql="insert into details(imei,lon,lat,speed,date) values('$imei','$longitude','$latitude','$speed','$date');";
     mysql_query($sql) or die("couldnt insert");
        }


}
else{
    echo 'invalid';
}
}
?>
4

1 回答 1

0

我认为您无需担心代码中的缓冲。您的代码应尽可能高效地处理每个请求。

您的基础设施应根据您期望的流量进行设置。

如果您的服务将非常繁忙,那么您可以考虑负载平衡(让多个 Web 服务器和/或数据库服务器处理传入请求,具体取决于瓶颈所在)

于 2013-08-24T08:09:07.843 回答