Вопрос № 28115: 1С V.7.7 Торговля и склад. SQL. 2 сервера, 20 компьютеров.
Как увеличить скорость работы (например, набивки из гигантского прайса товара в накладную)? Компьютеры 3 пни, ~127 оперативки, 10 гигов винт....
Вопрос № 28.115
1С V.7.7 Торговля и склад. SQL. 2 сервера, 20 компьютеров.
Как увеличить скорость работы (например, набивки из гигантского прайса товара в накладную)? Компьютеры 3 пни, ~127 оперативки, 10 гигов винт.
Отвечает: Александр Веклюк
Здравствуйте, Матвей Вента!
1. Мне кажется, в вашем случае решающую роль играет не конфигурация клиентских компьютеров, а архитектура сети. В любом случае скорость передачи данных по шине материнской платы больше, чем по сети (будь то 1-ый Pentium или 3-ий).
2. Также следует учесть, что SQL-база ориентирована на выполнение запросов, а при выборках значительно быстрее работает DBF-версия.
При условии, что у Вас 100-мегабитная сеть имеет смысл использовать DBF-версию, а на клиентских компьютерах - клиент терминалов.
С уважением, Александр Веклюк
--------- для тех, кто верит, что все срастется
Ответ отправил: Александр Веклюк (статус: 1-ый класс)
Отправлен: 22.10.2005, 18:40
Отвечает: Крайнов Александр Юрьевич
Здравствуйте, Матвей Вента!
Координально ускорить работу 1С 7.7 стандартными средствами скорее всего не получиться, могу посоветовать следующее:
1. Проверить по какому протоколу происходит работа с MS SQL сервером. По умолчанию используется Named Papes, а желательно использовать TCP IP. Точно не уверен, но в дистрибутивах MS SQL 2000 есть возможность установки консоли, которая позволяет настроить протоколы обмена. На сервере нужна серверная часть, на клиентах -клиентская часть. Кстати, если запустить установку MS SQL на "обычном" (не server) windows, то он предложит установить клиентскую часть, вот она и нужна.
2. Почаще делать переиндексацию. Можно средствами MS SQL. В базе 1С есть хранимая процедура, помоему _Reindex_Db или типа того, точно не помню.
3. Набивку из гиганского прайса можно оптимизировать, придумав и написав удобную обработку подбора.
--------- Эх, бананы кокосы...
Отвечает: Шутяев Игорь
Здравствуйте, Матвей Вента!
Основные тормоза с 7.7 на больших базах связаны с передачей большого количества информации по сети, поскольку версия 7.7 не является клиент-серверной. Простое решение - использовать терминальный сервер и запускать программу на том же компьютере, на котором стоит SQL. При этом, конечно, это должен быть достаточно мощный сервер (желательно двухпроцессорный).
Второй вариант - с использованием программиста: написать обработку, которая скачает полностью весь прайс и будет держать его "в уме" на время ввода накладной - если это возможно, смотря по тому, что означает ваша характеристика "огромный". После загрузки (если она займет до 5-7 секунд это еще приемлемо), заполнение накладной будет быстрым, в конце сформированный документ записывается и проводится. Недостаток - если процесс ввода длительный, то данные "запомненного" прайса станут
неактуальны, но с этим в 1С во всех случаях есть сложности.
Ответ отправил: Шутяев Игорь (статус: 1-ый класс)
Отправлен: 24.10.2005, 09:28
Отвечает: Ovr1970
Здравствуйте, Матвей Вента!
Не совсем понял начальніе условия, но будем исходить их того, что 1С уже на SQL лежит.
1. Если вопрос только в набивке, то просто сделайте импорт прайса из какого-нибудь формата в 1С. И не нужно будет мучаться.
2. Если тормозит 1С и при просмотре, тогда выход только один - терминальные сессии. Один из серверов нужно будет сделать терминальным и все пользователи (или только те, что набивают прайсы) будут работать в терминале. Работа пойдет намного быстрее.
3. Если нужно будет увеличить производительность еще в 2-3 раза, тогда обязательно всех пользователей перевести на работу в терминале, а базу перевести в DBF формат.
Ответ отправил: Ovr1970 (статус: 2-ой класс)
Отправлен: 24.10.2005, 10:49