Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Оптимизация взаимодействия с БД (http://www.flasher.ru/forum/showthread.php?t=201211)

Fartoviy_Spec 13.06.2013 17:38

Оптимизация взаимодействия с БД
 
Мир всем. Создаю приложение, которое выполняет ряд операций с данными, поступающими из БД MySql через PHP скрипт в качестве одного XML файла. Дело в том, что в БД уже 2500 строк и когда я в цикле из 2500 итераций произвожу действия, то происходит ошибка, типо превышено время выполнения. Соответственно данных в БД будет становиться все больше и больше.

Подскажите как можно решить данную проблему, чтобы можно было работать с большой БД.

maincode 13.06.2013 18:50

Оптимизировать код который обрабатывает ваши строки.

Если оптимизировать больше не куда - делайте обработку пачками(по 500 строк например) в одном кадре ENTER_FRAME. Т.е. создаете класс например ParserDB, этот класс запускает событие ENTER_FRAME (или Timer), в каждой итерации обрабатывайте по 500 строк, когда все строки обработаны, класс ParserDB отправляет событие Event.COMPLETE

GBee 13.06.2013 20:45

Например нагрузить этими задачами сервер? Наверняка можно еще на уровне майскл часть задач решить.

Fartoviy_Spec 14.06.2013 00:24

Спасибо. Буду пробовать все таки разбивать на пачки, так как все задачи необходимо решать в приложении.

caseyryan 14.06.2013 08:29

Цитата:

так как все задачи необходимо решать в приложении.
Какая-то неправильная архитектура.
Что за данные запрашиваются из mysql? Каким образом?
Эти базы данных уже не первый год разрабатываются, и могут, как уже сказал GBee, очень многое делать самостоятельно, если составить грамотный запрос.

Fartoviy_Spec 14.06.2013 20:41

Дело в том, что запросов то никаких у меня и нет. Я запрашиваю один xml, который содержит всю БД и в приложении уже с ним работаю.

Babylon 14.06.2013 20:45

Просто время обработки на клиенте часто превышает время запроса и выполнения операций на сервере.

Добавлено через 2 минуты
Трудно понять зачем отображать сразу 2500 визуальных объектов, траверсить или сортировать.

AlexCooper 14.06.2013 21:02

Я могу ошибаться но я так понял что Вы храните в базе запись с текстовым типом данных, текст которого является xml-структурой и при работе с ним Вы его получаете от базы, обрабатываете и перезаписываете?

Babylon 14.06.2013 21:28

Уверен AlexCooper, что вы ошибайтесь:)

GBee 14.06.2013 21:32

Автор, переделывайте архитектуру, засасывать всю БД для обработки - это особое извращение.


Часовой пояс GMT +4, время: 13:03.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.