Нужна пауза в выполнении ПХП скрипта

123 4
6666
На сайте с 10.01.2005
Offline
505
2616

Скрипт теста, на ПХП. Выбрал ответ, щелкнул, загрузилась следующая картинка с вариантами ответов.

Типа как тут www.surrealism.ru/core

Насколько сложно воткнуть паузу, примерно в полсекунды перед (после) выводом следующего вопроса?

Каждое мое сообщение проверила и одобрила Елена Летучая. (c) Для меня очень важно все что Вы говорите! (http://surrealism.ru/123.mp3) .
Jekyll
На сайте с 04.05.2009
Offline
136
#1

Открыть скрипт /core/main.php и дописать в начале

usleep(500000);

Вроде ничего сложного :)

!B
На сайте с 16.08.2007
Offline
57
#2

я бы предложил делать паузу с помощью Javascript, т.к. слипы на сервере дают нагрузку

но это зависит больше от назначения этой паузы

6666
На сайте с 10.01.2005
Offline
505
#3
!html.by:
от назначения этой паузы

Ну оказалось, что тест пришелся народу по душе и моментами ломит толпа, то есть нужно немного снизить нагрузку на обращения к БД.

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

---------- Добавлено 30.05.2012 в 20:31 ----------

Типа так :

<?
usleep(500000);
session_start();
//error_reporting(E_ALL);
//ini_set('display_errors','1');
include 'config.php';
@header("Content-Type: text/html;charset=utf-8");

$dbprefix = '';

function clearDuplicates() {
global $dbprefix;

итд?

C
На сайте с 04.02.2005
Offline
291
#4
6666:
Ну оказалось, что тест пришелся народу по душе и моментами ломит толпа, то есть нужно немного снизить нагрузку на обращения к БД.

Используйте кеширование.

6666:
то почему-то иногда проскакивет один-другой вопросы,

Это как проскакивает? Как это выражается? кеширование картинок здесь не при чем.

6666
На сайте с 10.01.2005
Offline
505
#5

Chukcha, я не понимаю сам - как. Теоретически скрипт не будет загружать следующий вопрос, пока не юзверь не проставил чекбокс ответа.

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

Остается предположить, что дело во времени между запросами...

Jekyll
На сайте с 04.05.2009
Offline
136
#6

Там же простейшие выборки из БД, какая у вас там толпа что валит сервак?) Если у вас, например, неправильно проставлены индексы, ненормализованы таблицы и т.д. - пауза в скриптах не поможет

C
На сайте с 04.02.2005
Offline
291
#7

возможно возникает коллизия на момент записи в базу.

Вы каждый ответ храните?

Попробуйте хранить номера ответов в кукисах, а в конце обрабатывайте эту печеньку.

6666
На сайте с 10.01.2005
Offline
505
#8
Chukcha:
Попробуйте хранить номера ответов в кукисах

Пробовал. Народ моментально просек это дело и начал вписывать себе по 1000050000 победных баллов. :)

Ну короче, вроде этот..юслип работает, попробую малой кровью обойти баг.

C
На сайте с 04.02.2005
Offline
291
#9

ну не кукисах - храните в переменных сессии

6666
На сайте с 10.01.2005
Offline
505
#10
Jekyll:
какая у вас там толпа что валит сервак?

Да никакая ) Человек 100 зараз зашли и все. А записи в таблице действительно из серии 2+2=4, не должно быть багов никаких.

---------- Добавлено 30.05.2012 в 20:57 ----------

Chukcha:
храните в переменных сессии

Chukcha, тут еще такой момент, что мне этот скрипт и без того обошелся дороже чем хотелось, в плане потраченного времени. Будет юслип работать - хорошо. Нет, то я не готов все переделывать.

Еще как вариант я пробовал поставить между вопросами какой-нибудь лоадер.гиф.. но это походу выше моих техническо-умственных способностей (

123 4

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий