1

У меня очень простая программа, которая отправляет POST на мой сервер на Godaddy с помощью Volley. Я создал несколько запросов в цикле. Код отлично работает для первых нескольких запросов, но случайным образом дает ошибку 503. Существует конкретная модельAndroid volley error 503 после 40 запросов POST

Моей таблица имеет только один столбец, т.е. имя пользователя

Я искал везде почти 2 дней, чтобы выяснить, почему я получаю сообщение об ошибке 503. Я понимаю, что это из-за проблемы с сервером, но я не могу понять, в чем проблема.

Вот мой код

import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.util.Log; 
import android.view.View; 
import android.widget.Button; 
import com.android.volley.AuthFailureError; 
import com.android.volley.Request; 
import com.android.volley.RequestQueue; 
import com.android.volley.Response; 
import com.android.volley.VolleyError; 
import com.android.volley.toolbox.StringRequest; 
import com.android.volley.toolbox.Volley; 
import java.util.HashMap; 
import java.util.Map; 
public class MainActivity extends AppCompatActivity { 
Button btnInsertData; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    btnInsertData = (Button) findViewById(R.id.button); 
    btnInsertData.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      int counter = 1; 
      while(counter<=20){ 
       insertData("user" + counter); 
       counter++; 
      } 
     } 
    }); 
} 

private void insertData(final String data){ 
    String url = "http://...php"; 

    StringRequest stringRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() { 
     @Override 
     public void onResponse(String response) { 
      Log.i("Volley response", response); 
     } 
    }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 
      try{ 
       Log.i("Volley Error", error.getMessage()); 
      }catch(Exception e){ 
       Log.i("Volley Error", "No error found"); 
      } 
     } 
    }) { 
     @Override 
     protected Map<String, String> getParams() throws AuthFailureError { 
      Map<String, String> map = new HashMap<String,String>(); 

      map.put("userName",data); 

      return map; 
     } 
    }; 
    RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext()); 
    requestQueue.add(stringRequest).setShouldCache(false); 

    Log.i("Status:", "Request created"); 
} 
} 

Это мой файл PHP

include_once './db_functions.php'; 
$db = new DB_Functions(); 

$user = $_POST["userName"]; 
$query = "INSERT INTO testTable (userName) VALUES ('".$user."')"; 
$result = mysql_query($query); 

echo "status_new: ".$result." query: ".$query; 

Это ошибка, я получаю

01-03 22:07:37.936 4434-8440/com.qallify.testapplicationvolley E/Volley:   [7441] BasicNetwork.performRequest: Unexpected response code 503 for http://....php 

ответ

0

Если вы на компании GoDaddy хостинга, вам скорее всего, попадают в пределы ресурсов, описанные здесь: https://nl.godaddy.com/help/resource-limits-12001

+0

Спасибо @swordbeta Я сейчас на уровне 1, который, кажется, разрешает 100 одновременных запросов (в соответствии с предоставленной вами ссылкой). Я получаю ошибки, даже когда я запускаю код для 20 запросов. –

+0

Вам нужно будет посмотреть журналы сервера, чтобы узнать, что не так. – swordbeta

+0

Ошибки в ошибке 503. Ошибки отсутствуют. Ошибки, возникшие при создании файла php, который я уже установил –

Смежные вопросы