|
|
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. Встала такая задача: есть база на АСЕ15. Есть клиентское приложение (если интересно писано на БДС 2006 - делфя). В клиенте есть две квери, формирующие не зависимые запросы (без локов). Так вот если выполнять квери последовательно, т.е. сначала одну активируем, потом вторую, то время выполнения запроса ничуть не отличается от того, если выполнять каждую из кверей в паралелльном потоке (т.е. стартует выполнение одного потока - кверя1, тут же стартует второй поток - кверя2)... Само собой впорос - а должна ли быть вкусность в виде прироста производительности (общего времени выполнения запросов) при разводе их в разные потоки? Или может я не правильно понимаю концепцию потоков? Возможно нужны какие-то настройки сервака? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 13:19 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Mikle83 Возможно нужны какие-то настройки сервака? Когда Вы разведете эти два вопроса по потокам (ессесно, родив для каждого все "...пристани.параходы..." (4 example: TADOConnection, TADOQuery etc.)), то для сервака Ваше одно приложение будет выглядеть как обычных два. _________________ "Helo, word!" - 17 errors 56 warnings Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 13:28 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
В том-то все и дело, что для каждого запроса создается независимая TADOQuery с независимыс подключением к БД (для каждой прописывается ConnectionString). Но большое ощущение, что на самом серваке запросы обрабатываются последовательно. Т.е. создается впечатление, что сервак их ставит в очередь и сначала выполняет один, потом второй. Такое заключение я сделал основываясь на том, что в централе сначала появляется один процесс, потом следующий процесс уже с другим спидом... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 13:43 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Mikle83 wrote: Это зависит от очень многих факторов, и общее правило тут такое: если вы используете несколько потоков, т.е. делаете запросы параллельно на клиенте, и используете при этом два разных соединения (или больше) с БД, то ваши запросы МОГУТ потенциально выполняться параллельно и на сервере. Если вы этого не сделаете, то они выполняться будут строго последовательно. Ну а далее хочу спросить хотя бы сколько у вас на сервере процессоров, engine-ов, и ещё много чего. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 13:57 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Mikle83 В том-то все и дело, что для каждого запроса создается независимая TADOQuery с независимыс подключением к БД (для каждой прописывается ConnectionString). /me думает: гут... зер гут... Mikle83 Но большое ощущение, что на самом серваке запросы обрабатываются последовательно. Т.е. создается впечатление, что сервак их ставит в очередь и сначала выполняет один, потом второй. Такое заключение я сделал основываясь на том, что в централе сначала появляется один процесс, потом следующий процесс уже с другим спидом... /me думает: гм... Хохол не верит - пока не проверит: я вот, в свое время, правда для других целей, накидал дрозофилку (правда на шарпе) и все логгировал сам - у меня все сухо... BTW, Вы какие-то долгоиграющие запросы запустите - тогда и в централе увидите, что они живут параллельно... _________________ "Helo, word!" - 17 errors 56 warnings Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 14:03 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Запросы и так не слабые по времени (~15 секунд каждый). MasterZiv Ну а далее хочу спросить хотя бы сколько у вас на сервере процессоров, engine-ов, и ещё много чего. там 2 двухядерных процессора стоит... Мож есть какие-то настройки сервера - шевельнуть, чтоб он начал параллелить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 14:15 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Mikle83 Мож есть какие-то настройки сервера - шевельнуть, чтоб он начал параллелить? Каждый коннект можно приравнять кодному отдельно взятому клиенту. Получается у Вас и так от ВСЕХ клиентов ВСЕ запросы выполняются последовательно? _________________ "Helo, word!" - 17 errors 56 warnings Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 14:27 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Думаю как это проверить, но есть подозрение, что так оно и есть. Приложение в принципе испоьзуется в монопользовательском режиме - поэтому вопросов не возникало по этому поводу... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 14:36 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Mikle83 Думаю как это проверить По быстрячку ваяется дрозофилка в которой в потоке в лог пишеться PID, время перед дерганием запроса, время после выполнения запроса, запускается с n потоками и смотрим лог. _________________ "Helo, word!" - 17 errors 56 warnings Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 14:45 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Эм... по-моему такой метод не прокатит... начало выполнения запроса - это что? Открытие квери? Так оно проходит моментально - в том-то и дело для всех потоков в одно время... А время завершения запроса - уже совсем другая история - оно как раз и показывает, что запросы выполняются последовательно - т.е. один выполняется позже второго ровно на время своего выполнения в сингле... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 14:53 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Mikle83 wrote: > там 2 двухядерных процессора стоит... > Мож есть какие-то настройки сервера - шевельнуть, чтоб он начал параллелить? Engine-ов сколько ? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 15:36 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Ex_Soft wrote: > По быстрячку ваяется дрозофилка в которой в потоке в лог пишеться PID, Игорь, ты вот скажи, ты вообще для всего что угодно "дрозофилку" пишеш ? А подумать просто не легче ? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 15:37 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Who is mr "Engine"? number of engines at startup specifies the number of engines ASE brings online during the startup process. - если это он - то 1... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 15:44 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Mikle83 wrote: > number of engines at startup specifies the number of engines ASE brings > online during the startup process. - если это он - то 1... Ну так а что ж ты хочешь ? У тебя только один процессор занят ASE-вым сервисом, вместо 4-рёх. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 15:47 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
Проставил следующие значения для параметров сервака: Max Online Q Engines = 0 Max Online engines = 4 Number of engines at startup = 2 Результат не изменился, не подскажите, как корректно настроить, или где прочитать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 16:02 |
|
||
|
ASE распараллеливание
|
|||
|---|---|---|---|
|
#18+
MasterZiv ты вообще для всего что угодно "дрозофилку" пишеш ? Конечно - нЭт. Но если человек вроде и уверен, но, все же, сомневается, то как ему, кроме как экспериментальным путем показать? _________________ "Helo, word!" - 17 errors 56 warnings Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2009, 17:18 |
|
||
|
|

start [/forum/topic.php?fid=55&gotonew=1&tid=2010836]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
155ms |
get topic data: |
11ms |
get first new msg: |
9ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 9ms |
| total: | 265ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...