![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| slang |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 7.3.2004 Репутация: -1 Всего: 0 |
Скрипт генерирует таблицу в БД около 10 секунд (при одном пользователе).
Пользователей может быть приличное количество (около сотни в один момент). Вероятно часть из них будет выбрасывать по ошибке длительного выполнения скрипта. Хочется, чтобы, если генерация таблицы не была завершена, произошло её удаление. А также на время генерации таблицы вышел статус её генерации. Как такое можно реализовать? -------------------- Запчасти на иномарки www.avtograd55.ru. Если есть время - зайдите и посоветуйте что исправить и что доработать. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
зачем тебе под каждого пользователя генерировать таблицу?
|
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
Я бы на твоем месте занимался оптимизацией генерации
А если уж приспичит делать статус, то задвать вопрос в разделе, который имеет к этому отношение |
|||
|
||||
| Pokoinik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 283 Регистрация: 17.3.2007 Где: /dev/null Репутация: 2 Всего: 3 |
slang, разбить генерацию на части. на клиенте аяксом подгружать обработанные куски...
-------------------- ICQ: 490-993 Существует только 10 типов людей: те, которые понимают двоичную систему, и которые ее не понимают!!! Опасайтесь людей верующих, ибо у них есть боги, которые им все прощают. Делай или не делай! Никаких попробую! Йода (Yoda), мастер-джедай |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Pokoinik, тогда уж в стек и по крону задания исполнять.
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
разбей на этапы -------------------- Amazing |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
Для всех любителей давать советы, как лучше удалить гланды через позвоночник:
http://forum.vingrad.ru/forum/topic-215740.html читаем, думаем |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Feldmarschall, порой проще и быстрее решить проблему за счет новых мощностей, заодно повышая капитализацию
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
Я понимаю твой игривый тон, но здесь это не поможет.
Ты путаешь процентный тюнинг и кривые руки. |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Feldmarschall, а оно и не нужно. Главное мы с тобой все поняли.
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| slang |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 7.3.2004 Репутация: -1 Всего: 0 |
Feldmarschall, ну я так понимаю, вы сможете порекомендовать методы оптимизации генерации.
1. есть оригинальные таблицы (3 штук: тесты->вопросы->варианты ответов) 2. требуется получить таблицу, объединяющую все три таблицы 3. необходимо перемешать вопросы внутри теста 4. перемешать ответы внутри вопроса делаю: 1. читаю информацию о тесте 2. записываю первую строку новой таблицы 3. читаю все вопросы (связанные с тестом, разумеется) в массив 4. перемешиваю вопросы 5. читаю все ответы (связанные с вопросами, разумеется) в массив 6. перемешиваю ответы 7. заполняю новую таблицу построчно, пробегая по массивам, где строка может быть вопросом или ответом (различается по содержимому поля). Это сообщение отредактировал(а) slang - 10.6.2008, 18:41 -------------------- Запчасти на иномарки www.avtograd55.ru. Если есть время - зайдите и посоветуйте что исправить и что доработать. |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
остановка алгоритма в п.2.
не требуется. никаких создавать таблиц. На этом форуме очень много вопросов, вызванных непониманием элементарных основ работы баз данных. О нормальной форме представления нет ни малейшего. причем результатом часто становятся именно проблемы в производительности. но при этом хочется все равно - не меняя ничего архитектурно, просто сказать волшебное слово, чтобы все забегало. Шалишь, не выйдет. Почти ничего из перечисленного делать заранее не нужно. зачем создавать таблицу, когда вопросы и тесты и так у нас есть? зачем перемешивать вопросы заранее, когда это можно сделать перед показом? зачем перемешивать ответы заранее, когда это можно сделать перед показом? |
|||
|
||||
| slang |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 7.3.2004 Репутация: -1 Всего: 0 |
Feldmarschall.
мне нужно перемешать вопросы и ответы единожды и сохранить этот порядок до окончания. вопросы в основном тесте (так же как и варианты ответа) могут изменяться во время ответа на тест пользователем, при этом в уже открытом тесте должно остаться все как на момент генерации теста. есть еще масса причин не использования основной базы для каждого тестируемого. и стоит отметить, что я не спрашивал что мне необходимо получить в итоге, по этой причине и не отвечал на кучу "советов" типа "тебе это не надо, подумай что ты хочешь получить...". я подумал, и получить мне нужно то, что написал, ни больше ни меньше - сгенерировать таблицу. -------------------- Запчасти на иномарки www.avtograd55.ru. Если есть время - зайдите и посоветуйте что исправить и что доработать. |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
||||
|
||||
| Fally |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: 3 Всего: 4 |
ещё бы лучше подумал, и генерировать таблицу бы не пришлось, тебе можно курсоры попробовать, и вообще, не напрягай PHP работой БД при этом в извращённой форме.. Это сообщение отредактировал(а) Fally - 10.6.2008, 19:53 |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |