ICallbackEventHandler запрашивает каждую 1 секунду - PullRequest
1 голос
/ 24 января 2011

У меня есть код, который запускает ICallbackEventHandler каждые 1000 мс. Когда я запускаю этот код локально, данные реагируют быстро, как раз в 1 секунду.

Затем я загрузил это на сервер, и иногда данные отвечают 1 секунда, иногда 3 секунды, а затем иногда 6-7 секунд, почему это так?

Ниже приведен фрагмент кода, который выполняет этот рекурсивный вызов на сервер каждую секунду:

function MessageServerResponse(param, context) {
    if (param.length > 0) {
        var splitParam = param.split("~");
        var id = splitParam[0];
        var data= splitParam[1];

        $('#' + id).prepend(data);
    }

    setTimeout("MessageServerRequest();", 1000);
}

1 Ответ

1 голос
/ 24 января 2011

если вы единственный человек, который использует сервер, ответ будет всегда 1 секунда. и вы не можете ожидать, что клиент преданно откликнется на ваш сценарий

1 мой трюк, чтобы сделать это быстрее

  • если вы используете обычный постбэк, укажите как можно меньше в форме. больше HTML в форме означает больше передачи данных
  • если вы используете панель обновления, просто уменьшите ее или выделите панель обновлений для повышения производительности
  • для jquery, я бы предложил $ .ajax ({cache: true})
...