Увеличивается время выполнения шаблона в многопотоке

yriy158

Client
Регистрация
10.08.2013
Сообщения
490
Благодарностей
302
Баллы
63
Здравствуйте!
Возникла проблема с использованием Базы данных
В моей теме http://zennolab.com/discussion/threads/uvelichivaetsja-vremja-vypolnenija-shablona-v-mnogopotoke.42792/
мне посоветовали для сокращения выполнения шаблона в многопотоке перейти на базы данных.
Покурил форумы, чуток разобрался, настроил БД, таблицы, оформил кубики в зенке. Но опять же столкунлся с той же проблемой: при работе в 10+ потоков зависает процес получения инфы от БД
"Выполнение действия Db Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding."
При трассировании в 1 поток - все делается очень быстро. в 10+ - ничего не делается.


Запрос простой - получить с таблицы 1 рандомное значение:
select * from `TAB1` ORDER BY RAND() LIMIT 1;


Покурил форумы, вроде как такого не должно быть, работать с БД в номре можно в сотни и тысячи поток одновременно.
Что кто может подсказать?
 

yriy158

Client
Регистрация
10.08.2013
Сообщения
490
Благодарностей
302
Баллы
63
max_connections установил побольше (было 120, стало 1000) - не помогло.
Как и thread_concurrency (было 10, стало 512).
 

one

Client
Регистрация
22.09.2015
Сообщения
6 834
Благодарностей
1 275
Баллы
113
А БД локальная или удаленная? И что происходит если работать скажем в два-три потока?
 
  • Спасибо
Реакции: yriy158

yriy158

Client
Регистрация
10.08.2013
Сообщения
490
Благодарностей
302
Баллы
63
А БД локальная или удаленная? И что происходит если работать скажем в два-три потока?
БД удаленная, на ВПСке от firstvds
В два-три потока всё ок, вот уже если 10+ то начинает увеличивается время на чтения с БД вплоть до того, что ответ не приходит из-за таймаута.
 

one

Client
Регистрация
22.09.2015
Сообщения
6 834
Благодарностей
1 275
Баллы
113
Использование удаленной БД не самое лучшее решение для ускорения работы с данными. Я в своей работе использую БД локально из пакета OpenServer. Устанавливаю на тот же компьютер где установлена ZP. Возможно у Вас установлены ограничение на входящие соединения к БД из вне.
 

yriy158

Client
Регистрация
10.08.2013
Сообщения
490
Благодарностей
302
Баллы
63
Использование удаленной БД не самое лучшее решение для ускорения работы с данными. Я в своей работе использую БД локально из пакета OpenServer. Устанавливаю на тот же компьютер где установлена ZP. Возможно у Вас установлены ограничение на входящие соединения к БД из вне.
Как все сложно(( дело в том, что есть несколько зенок, а база одна. Хотелось что бы был доступ к базе не только с ПК на которой есть база, а и с других ПК. Можно как-то это реализовать? Извиняюсь за нубский вопрос, с ББ вообще не работал раньше.
 

one

Client
Регистрация
22.09.2015
Сообщения
6 834
Благодарностей
1 275
Баллы
113
Можно, но надо сначала выяснить почему и на каком кол-ве входящих соединения все сыпется.
 
  • Спасибо
Реакции: yriy158

yriy158

Client
Регистрация
10.08.2013
Сообщения
490
Благодарностей
302
Баллы
63
Можно, но надо сначала выяснить почему и на каком кол-ве входящих соединения все сыпется.
Установил денвер, создал БД, переделал проект под локальную БД - все гуд, затестил 100 потоков - полет супер, время на чтения с БД не увиличивается, и составляет доли секунды.
 

one

Client
Регистрация
22.09.2015
Сообщения
6 834
Благодарностей
1 275
Баллы
113
В этом и прелесть локального использования БД. :-) Видимо на сервере стоят какие то ограничение на внешние входящие MySQL соединения. Надо смотреть его настройки.
 

iskrakovrov

Client
Регистрация
28.03.2015
Сообщения
532
Благодарностей
172
Баллы
43

Обращаем Ваше внимание на то, что данный пользователь заблокирован.
Не рекомендуем проводить с iskrakovrov какие-либо сделки.

Привет, как то решил проблему?
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)