我将数据发布到远程php文件,并使用post方法将数据保存到远程mysql数据库,就像它一样简单。
但是我的担心是每隔30秒到1分钟获取数据并通过Android手机的http帖子发送到服务器,即来自'N'手机,所以,数据是否会发生冲突?是否有可能丢失数据?例如:100手机
目前我正在使用000webhost.com免费托管,我计划搬家付费。
但我是否需要缓冲所有传入的数据然后保存以避免数据丢失?或继续使用我的相同方法并拥有高速服务器?
我对服务器处理传入数据的速度最大化知之甚少。如果许多数据同时来自许多手机怎么办?我是否需要手动缓冲或服务器为我做。
如果手动缓冲请分享一些代码,以便我能更好地理解。 (Android手机的电池我已经照顾并使用gps和网络提供商)
<?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';
}
}
?>
答案 0 :(得分:0)
我认为您不必担心代码中的缓冲问题。 您的代码应尽可能高效地处理每个请求。
应根据预期的流量设置您的基础架构。
如果您的服务非常繁忙,那么您可以考虑负载平衡(有多个Web服务器和/或数据库服务器处理传入的请求,具体取决于瓶颈所在的位置)