Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.29;
Скачать: CL | DM;

Вниз

программа для работы с базой IB в длинной сети   Найти похожие ветки 

 
Novice   (2007-06-29 08:54) [0]

Доброго времени суток.
Внешний вид проблемы таков:
Есть программа, написанная не мной (но есть ее исходники). Работа с базой данных на Interbase (IBDatabase, IBQuery, etc.). Сервер баз данных - FireBird. Файл базы - один, состоит из нескольких таблиц - две основных, остальные - справочники. Файл находится серверной машине. Сама программа валяется на другой машине. На остальных машинах только ярлыки на эту программу. Когда запускается программа, то при просмотре всего лишь трех-пяти записей программа зависает - не реагирует ни на что и только выбивается диспетчером задач из памяти. Есть мнение - все происходит из-за большой длины сети, ее запутанности, неправильной архитектуры, большой загруженности и т.д. Подскажите, возможно ли при запуске программы скэшировать этот файл данных, чтобы максимально исключить работу с сетью? Соответственно, при окончании работы вся скэшированная база данных, с которой происходили работы, сливалась на сервер. Возможны ли другие варианты решения проблемы?


 
zz 5 ©   (2007-06-29 09:10) [1]

А в какой момент происходит зависание ? Отладчиком не пробывали поймать ? Может и не в сети проблемы ?


 
Johnmen ©   (2007-06-29 09:18) [2]


> Сама программа валяется на другой машине. На остальных машинах
> только ярлыки на эту программу.

Вот это и есть бред.
Необходимо на каждой клиентской машине иметь экзепляр программы. И его уж запускать.


 
ЮЮ ©   (2007-06-29 09:38) [3]

> [2] Johnmen ©   (29.06.07 09:18)

Возможно и бред, но разве он должен приводить в subj-евой проблеме?
Тем более, наверняка, когда-то при такой "архитектуре" всё это работало.
Проблемы, как всегда, ИМХО, в 17-ой строке. Баги редко проявляются сразу, иначе бы их не было.


 
Сергей М. ©   (2007-06-29 10:24) [4]


> Novice   (29.06.07 08:54)


Проблема наверняка в ошибке в 17-й строке


 
PEAKTOP ©   (2007-06-29 10:48) [5]


> Сама программа валяется на другой машине

На фиг ? Скопровать программу на каждую машину.


> то при просмотре всего лишь трех-пяти записей программа
> зависает

1) Клиентская библиотека gds32.dll от той версии Firebird, которая крутиться на серваке ?

2) Сам сервак ниже версии 2.0.1 ? Если выше, то новая версия скомпилина при помощи M$ Visual C++ 8.0, следовательно необходимо на клиентские тачки скопировать библиотеки msvcp80.dll и msvcr80.dll и убить старые msvcp71.dll и msvcr71.dll.

3) Сервак не использует UDF ? Воможен конфликт менеджеров памяти в случае, когда сервак скомпилен с msvcp80.dll и msvcr80.dll, а UDF скомпилена со старыми msvcp71.dll и msvcr71.dll. Надо пересобирать UDF.

И вообще, версия сервера какая ?


 
Johnmen ©   (2007-06-29 11:46) [6]


> ЮЮ ©   (29.06.07 09:38) [3]
> Возможно и бред, но разве
> он должен приводить в subj-евой проблеме?Тем более, наверняка,
>  когда-то при такой "архитектуре" всё это работало.

Я это допускаю. Тем более, не известно, что, когда это работало, работало ли это для одного клиента.


 
Desdechado ©   (2007-06-29 12:47) [7]

>  возможно ли при запуске программы скэшировать этот файл
> данных, чтобы максимально исключить работу с сетью? Соответственно,
>  при окончании работы вся скэшированная база данных, с которой
> происходили работы, сливалась на сервер.
Теоретически да, но не в твоем случае.
Проблему нужно решать, а не обходить.


 
Novice   (2007-06-30 08:17) [8]

Отвечаю по порядку:
1. >>А в какой момент происходит зависание ?<< При навигации по DBTreeView. Понажимал на два-три пункта, и все.

2. >>Вот это и есть бред. Необходимо на каждой клиентской машине иметь экзепляр программы.<< Прошу прощения за глупый вопрос, но чем это поможет? Точнее, в чем разница будет?

3. >>когда-то при такой "архитектуре" всё это работало.<< Это не работало никогда. Как запустили программу, так сразу все и пошло. Я тестировал эту же самую программу на короткой сети из двух машин, сеть - стандартная рабочая группа, длина кабеля меньше 10 метров, FireBird 1.5, все работает отлично.

4. >>И вообще, версия сервера какая ?<< FireBird 1.5....

5. >>Тем более, не известно, что, когда это работало, работало ли это для одного клиента<< Даже для одного - все равно не работает. А по теории автора этого недоразумения - должно работать примерно для пяти-десяти машин.

6. >>Проблему нужно решать, а не обходить.<< Решить я эту проблему самостоятельно могу только одним способом: взять MIDAS и перелопатить всю эту ересь на трехзвенку с тонким клиентом через DCOM/Socket соединения. Просто хотелось бы найти и другие пути.


 
Плохиш ©   (2007-06-30 10:14) [9]


> 3. >>когда-то при такой "архитектуре" всё это работало.<<
> Это не работало никогда. Как запустили программу, так сразу
> все и пошло.

Афигеть, об отладки, надо понимать, у вас ничего не слышали...

> А по теории автора этого недоразумения - должно работать
> примерно для пяти-десяти машин.

При прочтении сего рыдал горючими слезами, тут таких аФФтаров по всем конференциям косяками ходят :-)) Съэкономили, взяли студента, теперь расхлёбываете. Автор вас разводит без зазрения совести.


 
zz 5 ©   (2007-06-30 11:01) [10]


> Novice   (30.06.07 08:17) [8]

Локально хоть пробывали запуска ? Работает ?


 
ЮЮ ©   (2007-06-30 11:48) [11]


> Локально хоть пробывали запуска ? Работает ?

Даже на "короткой" сети работает:
(Я тестировал эту же самую программу на короткой сети из двух машин, сеть - стандартная рабочая группа, длина кабеля меньше 10 метров)

А вот не "длинной" - проблемы :)

Запусти, наконец, под IDE, коль исходники есть.

Неужели действительно полагаешь, что "длина сети"  имеет какое-то значение?


 
Novice   (2007-07-03 08:09) [12]

1. >>Афигеть, об отладки, надо понимать, у вас ничего не слышали...<< Я - слышал, и не только - активно пользуюсь.

2. >>Съэкономили, взяли студента, теперь расхлёбываете.<< В точку. Делал студент. А я теперь исправляй.

3. >>Локально хоть пробывали запуска ? Работает ?<< Да.

4. >>А вот не "длинной" - проблемы :)<< Может быть. Но корявость сети точно влияет - половина рабочих групп, половина доменов, какая из машин выдает всем IP и доменные имена - даже админ не знает.

5. >>Запусти, наконец, под IDE, коль исходники есть.<< Посмотрел я уже все. После чего плюнул на исправления, выматерился и переписал все на трехзвенку. Все заработало. Тема, собственно, закрыта, всем спасибо.


 
Anatoly Podgoretsky ©   (2007-07-03 08:43) [13]

> Novice  (03.07.2007 08:09:12)  [12]

2. Шило на мыло
4. Займись своим делом, а админ своим


 
Novice   (2007-07-03 12:51) [14]

1. >>2. Шило на мыло<< И это верно. А что делать, если начальство жмется платить профессиональным информатикам, нагружая вместо этого простого оператора пк, который программированием занимается от силы 7-8 месяцев... самостоятельно...


 
SlymRO ©   (2007-07-04 06:01) [15]

Novice   (03.07.07 12:51) [14]
выбивать себе звание главного/ведущего спеца и коэфициент >1 к зарплате



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

Текущий архив: 2007.07.29;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.022 c
15-1183185795
@!!ex
2007-06-30 10:43
2007.07.29
ATI Аналог 7 серии GeForce..


15-1183145334
Иксик
2007-06-29 23:28
2007.07.29
Еще один скандальный фильм Мура


2-1183462138
Vasyl
2007-07-03 15:28
2007.07.29
Кодировка


9-1157052402
Ketmar
2006-08-31 23:26
2007.07.29
http://shmup-dev.com/ -- конкурс начался


15-1183542272
Виктор007
2007-07-04 13:44
2007.07.29
Coco/R for Delphi