On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение





Пост N: 64
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 03.04.10 20:51. Заголовок: Помогите протестировать первую xHarbour систему


Уважаемые профи!

Наконец перевёл систему на xHarbour (терминальный режим). Если не сложно помогите найти ошибки в её работе (сам уже тестил). Если есть желание, то с удовольствием приму критику в любом виде и отвечу на все вопросы. Система содержит исходный код (+ база очень крупной оптовки за 4 месяца) и варианты Clipper (нужна настройка ОС) и xHarbour (Win32) программ. Для установки скачать в любой каталог и распаковать архив. Все виды паролей - 11. Для создания индексов clipper (s_repair.bat), harbour (srepharb.bat). Справка F1 в любом режиме, инструкции в каталоге document. Для принудительного запуска st.bat (clip)/sth.bat (harb). По системе печати, если интересно - отдельно. Состав комплекса:
1. Оперативная программа. ls.exe (clip)/hls.exe (harb)
2. Администратор и бухгалтерия. la.exe (clip)/hla.exe (harb)
3. Аналитический контур. ldust.exe (clip)/hld.exe (harb)

Буду очень благодарен за найденные ошибки и критику в любой форме! Скачка с учётом исправлений всех замечаний на 04.04.2010 (5.92) http://get.freesoft.ru/?id=108083

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 182 , стр: 1 2 3 4 5 6 7 8 9 10 All [только новые]


администратор




Пост N: 1548
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 05.04.10 11:55. Заголовок: Andrey пишет: Дельн..


Andrey пишет:

 цитата:
Дельный совет !


+1

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 861
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 05.04.10 12:41. Заголовок: AndreyZh пишет: но ..


AndreyZh пишет:

 цитата:
но ещё раз прошу - не хотите реально помочь, тогда и не нужно делать сообщения...


Не все зависит от моих "хотелок". Дело в том, что иногда вы пишете информацию, которая не является полной или корректной, иногда откровенные глупости (хочется надеяться, что по незнанию).
Все это могут читать и другие новички, и у них может сложиться неправильное мнение.
А я все таки модератор Может вас просто забанить, тем самым дав время документацию почитать?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1549
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 05.04.10 12:50. Заголовок: Петр пишет: А я все..


Петр пишет:

 цитата:
А я все таки модератор


Боюсь что уже нет

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 862
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 05.04.10 12:57. Заголовок: Спасибо Dima и что м..


Спасибо Dima и что мне теперь с эти делать

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1550
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 05.04.10 13:03. Заголовок: Петр пишет: и что м..


Петр пишет:

 цитата:
и что мне теперь с эти делать


Виртуально пожать руку Pasha и поздравить его тоже с назначением

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 863
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 05.04.10 13:30. Заголовок: Dima пишет: Виртуал..


Dima пишет:

 цитата:
Виртуально пожать руку Pasha и поздравить его тоже с назначением


Ок

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 89
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 06.04.10 12:22. Заголовок: Добрый день! Сегодн..


Добрый день!

Сегодня начал первые тесты у клиентов и был неприятно удивлён! Напомню, что неоднократно тестировал xHarbour приложения, сравнивая по скорости с clipper 5.01 аналогами и на моём ПК (XP Prof, AMD Atlon 3200, 2Gb, SATA 160Gb) вне зависимости от наличия фоновых приложений скорость у xHarbour на ВСЕХ операциях получалась в 2-3 раза выше (в основном БД была меньше 100Mb). Пока установил в 3 фирмах (во всех конфигурациях теста скорость xHarbour, как и 5-8 лет назад на 10-30% НИЖЕ):

1. фирма. Не выделенный сервер, все ПК (XP Prof, примерно класса Celer 2400/512Mb/120Gb). Harbour хуже, как в локальном, так и по сети. БД 300Mb.

2. фирма. Выделенный Windows Server 2005 (крутой). Оперативные режимы и отчёты xHarbour тормознее на 40%. БД 170Mb.

3. фирма. Не выделенный XP Prof (2 ядерный пень), рабочие станции дохлые под Win 98. xHarbour с рабочих станций медленнее на 10-20%. БД 730Mb.

Везде фоном были запущенны различные офисные программы 1С, офис, Paint, Browse. Вопросы:

1. Какие версии? Какая может быть причина? Почему у меня скорость xHarbour получалась в 2-3 раза быстрее, чем у Clipper.
2. Кто нибудь сравнивал быстродействие по сети аналогичных программ на Harbour и Clipper с одинаковым типом индексных файлов и большим размером баз данных? Какие результаты?


После обеда ещё потестю в паре фирм с очень хорошей техникой, но зоопарком ОС от Win2000-Seven. Но уже "сомневаюсь". Очень надеюсь на Ваши ответы, прогнозы и рекомендации по настройке ОС (пока не смены формата БД).



Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 1387
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 06.04.10 13:31. Заголовок: Так в чем заключаетс..


Так в чем заключается проблема ? Раньше тест xHb был быстрее, чем сейчас ?
Первое предположение - раньше Вы тестировали на релизе годичной давности, а сейчас собрали на текущей версии. Проверьте это предположение.
А конкретно можно что-то сказать, если Вы покажете свой тест.


Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 33
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 06.04.10 13:54. Заголовок: AndreyZh пишет: Оче..


AndreyZh пишет:

 цитата:
Очень надеюсь на Ваши ответы, прогнозы и рекомендации по настройке ОС


Попробуй разобраться с предназначением/использовать для работы следующую функцию из ядра xHarbour:


 цитата:
/*
*
* Operating system functions for Win32
*
* Program to check and set Windows Registry settings
* for safe networking - all versions of Windows to XP SP2
*
*
* Also includes check for buggy VREDIR.VXD under Win95
* and if the correct patch file is found - run it.

*/

#include "directry.ch"

FUNCTION OS_NETREGOK( lSetIt, lDoVista )
LOCAL rVal:= .T., cKeySrv, cKeyWks
IF lSetIt == NIL
lSetIt:= .F.
ENDIF
IF lDoVista == NIL
lDoVista:= .T.
ENDIF
IF !lDoVista .AND. OS_ISWINVISTA_OR_LATER() // 06/12/09 changed from OS_ISWINVISTA()
*
ELSEIF OS_ISWIN9X()
rVal:= QueryRegistry( 0,"System\CurrentControlSet\Services\VxD\VREDIR","DiscardCacheOnOpen",1, lSetIt )
ELSE
cKeySrv:="System\CurrentControlSet\Services\LanmanServer\Parameters"
cKeyWks:="System\CurrentControlSet\Services\LanmanWorkStation\Parameters"
lSetIt:= lSetIt .AND. ( OS_ISWINNT() .OR. OS_ISUSERANADMIN() ) // 06/12/09 Only Try to set registry if Admin authority for Win2000 or later
// Server settings
rVal:= rVal .AND. QueryRegistry( 0, cKeySrv, "CachedOpenLimit", 0, lSetIt )
rVal:= rVal .AND. QueryRegistry( 0, cKeySrv, "EnableOpLocks", 0, lSetIt) // Q124916
rVal:= rVal .AND. QueryRegistry( 0, cKeySrv, "EnableOpLockForceClose", 1, lSetIt)
rVal:= rVal .AND. QueryRegistry( 0, cKeySrv, "SharingViolationDelay", 0, lSetIt)
rVal:= rVal .AND. QueryRegistry( 0, cKeySrv, "SharingViolationRetries", 0, lSetIt)
IF OS_ISWINVISTA_OR_LATER()
// // 06/12/09 If SMB2 is enabled then turning off oplocks does not work so SMB2 is required to be turned off on Server
rVal:= rVal .AND. QueryRegistry( 0, cKeySrv,"SMB2",0, lSetIt )
ENDIF

// Workstation settings
rVal:= rVal .AND. QueryRegistry( 0, cKeyWks, "UseOpportunisticLocking", 0, lSetIt)
rVal:= rVal .AND. QueryRegistry( 0, cKeyWks, "EnableOpLocks", 0, lSetIt)
rVal:= rVal .AND. QueryRegistry( 0, cKeyWks, "EnableOpLockForceClose", 1, lSetIt)
rVal:= rVal .AND. QueryRegistry( 0, cKeyWks, "UtilizeNtCaching", 0, lSetIt)
rVal:= rVal .AND. QueryRegistry( 0, cKeyWks, "UseLockReadUnlock", 0, lSetIt)

IF OS_ISWIN2000_OR_LATER()
rVal:= rVal .AND. QueryRegistry( 0, "System\CurrentControlSet\Services\MRXSmb\Parameters","OpLocksDisabled",1, lSetIt )
ENDIF
ENDIF
RETURN( rVal )


Дополнительно рекомендуется изучить эту ссылку.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1204
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 06.04.10 14:48. Заголовок: AndreyZh пишет: Как..


AndreyZh пишет:

 цитата:
Какие версии? Какая может быть причина? Почему у меня скорость xHarbour получалась в 2-3 раза быстрее, чем у Clipper.


Все зависит от ваших исходников, т.е. как вы работаете с БАЗОЙ .... Если используете оператор SET FILTER, то в Клипере он быстрей чем на Харборе, из-за его реализации (там присутствует оптимизация по фильтру). Я уже писал об этом.
А так как вы тестировали на локальной машине, то и исходники свои не оптимизировали на сеть.
Мне пришлось перелопачивать свои исходники и переделывать выборку по базам....

AndreyZh пишет:

 цитата:
Кто нибудь сравнивал быстродействие по сети аналогичных программ на Harbour и Clipper с одинаковым типом индексных файлов и большим размером баз данных? Какие результаты?


Да я сравнивал. Базы по 300-400 полей. Объем от 60-200 Мб. Выборка из базы (условная индексация) 0.2-10 сек.
Если нужно обработать группу записей, то делай выборку (условный индекс) обрабатывай, потом закрывай индекс.
Для сети - отказывайся от SET FILTER (под Харбором он медленный ! Читай выше...) и переделывай свой алгоритм обработок.
Харбор все равно быстрей чем Клипер даже по сети. У меня задача на 50000 абонентов на Клипере считалась 5-6 часов, а на Харборе тот же самый алгорим считал за 2 часа.
Я сам на переделку угробил тоже много времени, но зато сейчас хоть легче стало. Сейчас пытаюсь построить работу с базами так, чтоб можно было перейти на LetoDB....
И буду иметь у себя в задаче СРАЗУ: 1) локальный вариант, 2) сетевой (Файл-Сервер), 3) Терминальный
и 4) сетевой (Клиент-Сервер)

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1554
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.04.10 14:57. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Дополнительно рекомендуется изучить эту ссылку.


AndreyZh пишет:

 цитата:
Увы - даже с русским языком плохо, с англицких ещё хуже



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1555
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.04.10 14:58. Заголовок: Andrey пишет: Если ..


Andrey пишет:

 цитата:
Если используете оператор SET FILTER, то в Клипере он быстрей чем на Харборе, из-за его реализации (там присутствует оптимизация по фильтру). Я уже писал об этом.


У него RDD NTX , о какой оптимизации речь (может я чего пропустил) ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1205
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 06.04.10 15:01. Заголовок: Dima пишет: У него ..


Dima пишет:

 цитата:
У него RDD NTX , о какой оптимизации речь (может я чего пропустил) ?



Это тогда я пропустил....
Я про свой опыт написал. И еще это относится к Клиперу 5.3 !


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 90
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 06.04.10 15:08. Заголовок: Добрый день! Спасиб..


Добрый день!

Спасибо за ответы - вечером буду серьёзно думать! Сейчас с админом будет тестить с "крайней" на сегодня конторе, но на первый взляд ситуация аналогична всем предыдущим. Справочно set filter и другие "тормозные" операции не использую, в нескольких режимах есть loca for <> whil <> на десяток записей. Но не в этом суть вопросов.

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

Есть программа (ранее просто массированный ввод и извлечение информации, сейчас перевёл основную систему на xHarbour). Код и механизмы работы с dbf + ntx абсолютно идентичны с сборке на clipper и xHarbour. Тесты дома на базах до 100 mb давали двойное преимущество по скорости программ xHarbour - у клиентов на их сетях, ПК, ОС и базах размера больше 200 mb программа на xHarbour стала (пусть иногда немного) проигрывывать clipper программе.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1206
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 06.04.10 17:15. Заголовок: AndreyZh пишет: нес..


AndreyZh пишет:

 цитата:
нескольких режимах есть loca for <> whil <> на десяток записей


Переделать на конструкцию:
индексный файл + SEEK а уж потом whil <> ....
Скорость возрастет !

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 91
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 06.04.10 19:06. Заголовок: Добрый вечер! Я в п..


Добрый вечер!

Я в печали по поведению xHarbour, в моей задаче... Пока о моей задаче в целом (результаты, уже финальных тестов по скорости). Тесты проводились корректно (в начале первый прогон, затем прогон для снятия данных).

1. Локальный ПК. Сложный отчёт. База 90Mb. Замечу, что большое количество записей в некоторых таблицах большой роли не играет (дома перепроверил на фирме с другой спецификой операций):

Clipper.. - 1' 35"
xHarbour - 40"

2. Рабочая станция, база на сервере, копий проги на других ПК не запущено. База 90Mb, другой (более лёгкий отчёт):
Clipper... - 48"
xHarbour - 34"

3. Рабочая станция, база на сервере, ЗАПУЩЕНЫ КОПИИ ПРОГИ на других ПК. База 90Mb, другой (более лёгкий отчёт):
Clipper... - 3' 12"
xHarbour - 8' 24"

4. Локальный ПК. Сложный отчёт. База 560Mb:

Clipper.. - 3' 18"
xHarbour - 4' 52"

5. Рабочая станция, база на сервере, копий проги на других ПК не запущено. База 560Mb, другой (более лёгкий отчёт):
Clipper... - 1' 30"
xHarbour - 2' 15"

6. Рабочая станция, база на сервере, ЗАПУЩЕНЫ КОПИИ ПРОГИ на других ПК. База 90Mb, другой (более лёгкий отчёт):
Clipper... - 5' 30"
xHarbour - более 10 минут.

Попытки админа поиграть параметрами сети не привели к коррекции результатов. Из этого делаю вывод, что при малом объеме данных xHarbour более продуктивно использует Ram и различные кэш являясь при этом более медленной системой.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 92
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 06.04.10 19:16. Заголовок: Попробую ответить на..


Попробую ответить на Ваши пожелания.

Andrey
 цитата:
Переделать на конструкцию: индексный файл + SEEK а уж потом whil <> .... Скорость возрастет !



А як же? Конечно такая конструкция loca for <> whil <> используется при наличии "основного" ключевого поля, при этом условия For плавающее, т.е. индекс нельзя предусмотреть.

Dima

 цитата:
У него RDD NTX , о какой оптимизации речь (может я чего пропустил) ?



Наверное давно активно работали с Clipper 5.01? В него только начали вносить "элементы" технологии RDD для работы с базами/индексами fox, dBase, paradox, а с NTX clipper машина работает напрямую... Полностью на RDD перешли только с 5.2, что резко снизило (на 20-30%) скорость работы, в том числе с индексами NTX (это одна из причин моего отказа от перехода (по основной системе) на "свежии" версии, хотя на другой и сделал переход, т.ч. статистика достаточная).





Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 93
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 06.04.10 19:35. Заголовок: Dima gfilatov2002 ..


Dima
gfilatov2002

Техническую документацию понимаю Всё, что описано Григорием уже давно пройденный в исследованиях этап...


Andrey

 цитата:
Да я сравнивал. Базы по 300-400 полей. Объем от 60-200 Мб. Выборка из базы (условная индексация) 0.2-10 сек.
Если нужно обработать группу записей, то делай выборку (условный индекс) обрабатывай, потом закрывай индекс.



Не стояла задача оптимизации по скорости - она более чем достаточна.. Просто xHarbour меня сильно соблазнил, тем, что не меняя "ничего" можно резко (в 2 раза повысить скорость приложения). Но этот опыт лишний раз меня убедил, что сравнения систем (баз данных и т.д.) нужно проводить на "пограничных" состояниях


 цитата:
и переделывай свой алгоритм обработок



Это и является основным способом радикальных ускорений конкретных режимов. Для примера <4. Локальный ПК. Сложный отчёт. База 560Mb:
Clipper.. - 3' 18" xHarbour - 4' 52"> годовой анализ рентабельности товаров в зависимости от сезонности. Отчёт "стырил" с навороченной конфы 1С - для сравнимой фирмы (18 8.1 MS Sql) она проводила данный анализ за несколько часов


Pasha

 цитата:
Так в чем заключается проблема ? Раньше тест xHb был быстрее, чем сейчас ?



Нет - выявилась "яма" в скоростных возможностях xHarbour!


Здесь облом! Начинается этап пользовательских тестов на устойчивость данных при массированном вводе информации с 3-8 рабочих мест...




Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1556
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.04.10 20:13. Заголовок: AndreyZh А слабо по..


AndreyZh
А слабо показать на самодостаточном живом примере что Xharbour работает уступает по скорости Clipper ?

AndreyZh пишет:

 цитата:
выявилась "яма" в скоростных возможностях xHarbour!


Может быть "яма" в ваших алгоритмах ?

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 1388
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 06.04.10 20:45. Заголовок: 1. Я все-таки совету..


1. Я все-таки советую обратить внимание на Harbour. По части совместимости с clipper он сейчас мало в чем уступает, а по некоторым моментам превосходит xHarbour. А по скорости Harbour сейчас превосходит xHarbour в среднем в 2 раза. Об это пишут и разработчики xHb, да я и сам проводил эти тесты.

2. Надо использовать трюк в функции fsCommit в модуле rtl\filesys.c. Об этом здесь многократно писалось.

3. Для совместно открытых файлов используйте блокировку индекса на чтение

dbOrderInfo(DBOI_READLOCK,,, .t.)

Этот дает выигрыш в производительности в разы.


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 182 , стр: 1 2 3 4 5 6 7 8 9 10 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 175
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет