Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.01.13;
Скачать: [xml.tar.bz2];

Вниз

тормоза под Win2003   Найти похожие ветки 

 
shaman   (2007-12-06 23:02) [0]

Написал небольшую программу для небольшого преобразования БД FireBird. В ней построчно модифицируются все записи.
На слабеньком компьютере под WinXP SP2 Prof она работает намного быстрее, чем под на сервере под Win 2003 SP1, который намного более произвордительный (пробовал на 2-х разных серверах).

В чем причина тормозов на 2003 Win?


 
sniknik ©   (2007-12-07 01:22) [1]

расширение базы смени, как на ibase.ru советуют. (оно в 2003 совпадает с какимто типом файлов винды подлежащим резервированию (сохранению при изменениях для автовосстановления), вот и получается что на каждое малейшее изменение винда всю базу копирует... скорости это естественно не добавляет)


 
Германн ©   (2007-12-07 01:32) [2]

Что ешё раз подсказывает. При "непонятках" с InterBase или с FireBird первое место, которое следует посетить - это ibase.ru.

P.S. Имхо, раз уж Розыч занялся тем, что сей форум не должен являться "интеллектуальным Яндексом", то и данная тема ложится в то же русло.


 
Anatoly Podgoretsky ©   (2007-12-07 08:43) [3]

> sniknik  (07.12.2007 01:22:01)  [1]

Эта информация не применима к 2003, в нет просто нет автовосстановления.
А вот на ХР расширение gdb подлежит автовосстановлению.


 
shaman   (2007-12-07 09:10) [4]

Anatoly Podgoretsky, тогда какую причину "тормозов" видишь ты?


 
Anatoly Podgoretsky ©   (2007-12-07 09:29) [5]

Причин может быть множество, а при данном объеме информации просто нельзя ответить. Может FireBird не любить несколько процессоров. Может у него стоит злобный антивирус и так далее на несколько сотен предположений. Одно точно это не влияние системы восстановления, поскольку ее нет на 2003.


 
shaman   (2007-12-07 09:34) [6]

Попатаюсь расширить объем информации тогда:
1. FireBird 1.5.
2. Пробовал как на одно процессорном сервере, так и на 2-х процессорном.
3. Для подключения использую InterBase Data Access Components и fbclient.dll
4. Злобного антивируса не было ни на одном сервере.


 
Anatoly Podgoretsky ©   (2007-12-07 09:36) [7]

> shaman  (07.12.2007 09:34:06)  [6]

Что показывает профайлер?


 
shaman   (2007-12-07 09:54) [8]


> Что показывает профайлер?

У меня его нет... я так понимаю это класс программ? Посоветуйте конкретную.


 
tesseract ©   (2007-12-07 10:06) [9]


> У меня его нет... я так понимаю это класс программ? Посоветуйте
> конкретную.


Гм. он измереяет время выполнения конкретных функций. Самому несложно написать. К тому же на FB можно через ibexpert замерить производительность SQL-запросов.


 
shaman   (2007-12-07 10:10) [10]


> замерить производительность SQL-запросов.

не думаю что она изменяется :) запросы остаются теми же!
дело явно в ОС.


 
Anatoly Podgoretsky ©   (2007-12-07 10:27) [11]

> shaman  (07.12.2007 09:54:08)  [8]

Неправда, это есть во всех версиях Виндоус, плюс еще есть специализированые провайлеры и для FB
По поводу первого пусть системный администратор сервера, с помощью профайлера определит где тормоза.
Профайлер для FB наверно тут и не нужен.


 
DrPass ©   (2007-12-07 10:43) [12]

Попробуй изменить протокол с локального на TCP/IP. Действительно есть проблемы с производительностью локального протокола FB1.x именно на Win2003


 
Desdechado ©   (2007-12-07 11:06) [13]

>  есть проблемы с производительностью локального протокола
С локальным протоколом проблемы есть не только с производительностью. Его вообще использовать можно только в embedded версии, в остальных чревато глюками.

По сабжу - забинди процесс FB-сервера на конкретный процессор, если у тебя архитектура супер-сервера (наверняка). Классик новички не используют.


 
shaman   (2007-12-07 11:20) [14]


> Попробуй изменить протокол с локального на TCP/IP

TCP и стоит :)


> забинди процесс FB-сервера на конкретный процессор

я уже писал выше, что на однопроцессорном сервере ситуация ИДЕНТИЧНА!


> если у тебя архитектура супер-сервера

это что значит?


 
Desdechado ©   (2007-12-07 11:42) [15]

>  на однопроцессорном сервере ситуация ИДЕНТИЧНА
А гипер-трединг у него включен?

> это что значит?
См. ibase.ru


 
ANB ©   (2007-12-07 11:55) [16]


> В ней построчно модифицируются все записи.

А насколько сложен механизм модификации ?
Такая обработка и на оракле не больно шустра.
Нельзя ли ее сделать одним апдейтом ?


 
shaman   (2007-12-07 12:52) [17]


> Нельзя ли ее сделать одним апдейтом ?

всю БД одним апдейтом? или что имелось ввиду?


> А насколько сложен механизм модификации ?

какая разница? вопрос в том, почему на ЗНАЧИТЕЛЬНО БОЛЕЕ СЛАБОМ компьютере программа отрабатывает значительно быстрее чем на сервере.


 
shaman   (2007-12-08 09:37) [18]

больше идей ни у кого нет?


 
sniknik ©   (2007-12-08 10:42) [19]

начни сначала "расширение базы смени, как на ibase.ru советуют", пусть там нет автовосстановления, но расширение уже себя "компрометировало", т.е. чтобы быть уверенным нужно проверить. (может одного механизма и нет но те процессы которые вызывают тормоза вызываются и другими)

ну и главная "идея", всетаки заглянуть на ibase, хоть одним глазком... что они там советуют по твоему поводу?


 
sniknik ©   (2007-12-08 10:51) [20]

блин заглянул сам, не "глубоко", практически первый совет фаг с чего начинаешь обычно, создание базы...

как создать базу данных?

Это можно сделать в IBConsole, IBExpert, через IBDatabase.CreateDatabase, через IB API и так далее, главное только:

   * обязательно указать полный путь к базе данных. например c:\dir
   * желательно указать протокол tcp, даже если сервер на этой же машине (localhost:c:\dir. см. пункт)
   * желательно указать расширение файла БД, оно может быть любым, но расширение gdb вызовет проблемы под XP и W2003. Правильно будет например c:\dir\data.ib или c:\dir\data.fdb
   * желательно указать размер страницы 4096 или 8192 байт (см. пункт)
   * желательно указать диалект 3 (см. пункт)
   * желательно указать DEFAULT CHARACTER SET WIN1251 (см. faq)


все. вопрос решен. всего только стоило проверить первое же предположение, а не ждать два дня готового решения...


 
sniknik ©   (2007-12-08 11:01) [21]

Германн ©   (07.12.07 01:32) [2]
и теперь я с тобой полностью согласен, действительно "интеллектуальный Яндекс", авторы не участвуют в решении собственной же проблемы, просто тупо ждут пока ктото найдет готовое решение.
причем в форме "предположения" они его игнорируют, замечают только в форме рецепта с гарантией (а то еще и не раз повторенного). иначе даже не "чухнутся" чтото менять...

p.s. мне все больше нравятся собаки...


 
Рамиль ©   (2007-12-08 11:23) [22]

В Windows 2003 нет автоматического архивирования! Тормоза из-за расширения могут быть только в XP.


 
Рамиль ©   (2007-12-08 11:24) [23]

Посоветовали же посмотреть перфоманс монитором, в чем тормоза. Зачем из пустого в порожнее переливать?


 
Рамиль ©   (2007-12-08 11:25) [24]

И вообще, для одного запроса одного клиента восьмипроцессорный xeon запросто может оказаться медленнее обычного десктопного Core Duo


 
Anatoly Podgoretsky ©   (2007-12-08 12:09) [25]

> sniknik  (08.12.2007 11:01:21)  [21]

> p.s. мне все больше нравятся собаки...

Точно также преданно смотрят в глаза, но при этом еще и молчат.


 
Правильный_Вася   (2007-12-08 18:01) [26]


> В Windows 2003 нет автоматического архивирования!

в какой редакции?
а какая у автора?


 
DrPass ©   (2007-12-08 23:14) [27]


> Рамиль ©   (08.12.07 11:25) [24]
> И вообще, для одного запроса одного клиента восьмипроцессорный
> xeon запросто может оказаться медленнее обычного десктопного
> Core Duo

Для Firebird"а-суперсервера, который не поддерживает мультипроцессорность, и в идеале вообще должен вязаться аффинити-маской на какое-либо ядро/процессор, это не "запросто", а "факт" :)


 
Германн ©   (2007-12-09 01:32) [28]


> sniknik ©   (08.12.07 11:01) [21]
>
> Германн ©   (07.12.07 01:32) [2]
> и теперь я с тобой полностью согласен, действительно "интеллектуальный
> Яндекс", авторы не участвуют в решении собственной же проблемы,
>  просто тупо ждут пока ктото найдет готовое решение.
> причем в форме "предположения" они его игнорируют, замечают
> только в форме рецепта с гарантией (а то еще и не раз повторенного).
>  иначе даже не "чухнутся" чтото менять...
>

Значит надо закрывать обсуждение в таких случаях. А не переносить его в "Прочее".
Ну и вдобавок. Надо закрывать обсуждение сразу, как только автор заявляет что хелпа у него нет. Тут не богадельня. Бесплатные супы пусть ищут в других местах.


 
Sergey Masloff   (2007-12-09 19:15) [29]

Ну про расширение это уже устарело. Во-первых (точно не помню но с большой вероятностью) и на XP после второго сервис-пака или какого-то из обновлений .gdb в автовосстановление не попадает, не говоря уж про 2003 на котором это вообще не проявлялось (я тогда еще активно работал с IB и под 2003 его тестировал начиная со стадии беты).

 Может просто на слабом компьютере база была локальная а с сильным сервером работаем по сети. Так как "модифицируются все записи" - это слова самого автора то вся база постоянно ездит по сети туда-сюда. Вот и все причины. Локальный протокол намного быстрее, а еще и latency учесть а скажем записи по одной фетчатся - там на каждую запись несколько пакетов по сети идет в ту и другую сторону - и все встает на места по производительности. Конечно это только один из возможных вариантов



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.01.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.52 MB
Время: 0.015 c
15-1197234171
Grain_II
2007-12-10 00:02
2008.01.13
алгоритм предсказания результатов грядущих выборов


15-1196853263
alshtam
2007-12-05 14:14
2008.01.13
как висту снести???


2-1197639400
Reals
2007-12-14 16:36
2008.01.13
Как определить что пользователь вставил сьемный диск.


15-1197295580
slavakaram
2007-12-10 17:06
2008.01.13
Массовая рассылка почты с помощью idSMTP


15-1197061780
Максим
2007-12-08 00:09
2008.01.13
Пример





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский