Сервер терминал
Модератор: Дед Пахом
-
- Активист
- Сообщения: 185
- Зарегистрирован: 07 Февраль 2017, 16:58
Сервер терминал
Это вполне естественно. Если программа специально не писалась для работы под терминальным сервером, а была просто перенесена туда, таких вещей избежать трудно.
Под терминальный сервер нужно писать специально. Например, использовать LOCK/UNLOCK для файла, комбинацию APPEND/BUILD вместо ADD при массовом добавлении записей, не забывать про NOMEMO, если они не нужны и т.д. и т.п.
Простейший способ поднять производительность без доработки кода я описал выше...
Под терминальный сервер нужно писать специально. Например, использовать LOCK/UNLOCK для файла, комбинацию APPEND/BUILD вместо ADD при массовом добавлении записей, не забывать про NOMEMO, если они не нужны и т.д. и т.п.
Простейший способ поднять производительность без доработки кода я описал выше...
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4664
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 8 раз
- Поблагодарили: 37 раз
Сервер терминал
Привет. Я бы спросил у них, как они запускают программу. Тормоза могут быть при файл-шаринге. Если все работают в терминальных сессиях, то никаких доработок кода и специального написания программы для работы с tps не требуется. Все должно работать со скоростью, как на локальном компьютере. Исключение может быть, если приложение в файл-шаринге сохраняло что-то на локальный диск. Это нужно заменить на каталог на сервере.
C6/C11, ШВС, tps/btrieve.
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4664
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 8 раз
- Поблагодарили: 37 раз
Сервер терминал
И в догонку. Практически на любом современном компьютере в терминальных сессиях могут спокойно работать 20-25 пользователей с одинаковой скоростью, как один на локальном компьютере.
C6/C11, ШВС, tps/btrieve.
-
- Активист
- Сообщения: 185
- Зарегистрирован: 07 Февраль 2017, 16:58
Сервер терминал
Технически, да.
Но если эти 20-25 пользователей одновременно ломанутся добавлять по 50-100 тысяч записей, то без синхронизации их действий на уровне кода не обойтись.
Просто расставить "галочки" в нужных местах недостаточно. Работать, безусловно, будет, но гораздо медленнее, чем могло бы.
Но если эти 20-25 пользователей одновременно ломанутся добавлять по 50-100 тысяч записей, то без синхронизации их действий на уровне кода не обойтись.
Просто расставить "галочки" в нужных местах недостаточно. Работать, безусловно, будет, но гораздо медленнее, чем могло бы.
-
- Бывалый
- Сообщения: 60
- Зарегистрирован: 12 Июнь 2015, 22:59
- Откуда: Новороссийск
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Сервер терминал
Работают 2 - 3 пользователя. И обновления записей максимально 10, т.е нагрузки нет. А сохраняет задача в ini стандартно размеры и положение окон. Может надо что-то делать с расположением ini файла?
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4664
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 8 раз
- Поблагодарили: 37 раз
Сервер терминал
Не понял. Медленнее по сравнению с чем? Добавление 50-100 тыс записей занимает меньше минуты в рамках транзакции logout/commit. Конкретнее зависит от конфигурации сервера. В реальной жизни работа идет или с одиночными записями, или с достаточно небольшим их количеством. Модификация в этом случае обычно занимает доли секунды. А стандартное ожидание доступности на запись в шаблонах 3 сек. И, как правило, из 20-25 пользователей большая часть работает на чтение, а не на модификацию данных.
C6/C11, ШВС, tps/btrieve.
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4664
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 8 раз
- Поблагодарили: 37 раз
Сервер терминал
Да, надо проверить, где они находятся. Должны быть на сервере. Еще посмотреть антивирус. Но в первую очередь убедиться, что запускают программу именно в терминальных сессиях, а не по сети.
C6/C11, ШВС, tps/btrieve.
-
- Бывалый
- Сообщения: 60
- Зарегистрирован: 12 Июнь 2015, 22:59
- Откуда: Новороссийск
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Сервер терминал
finsoftrz, ini находится рядом с exe. Как я понял для терминала это нормально или я не прав?
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2351
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Благодарил (а): 1 раз
- Поблагодарили: 19 раз
Сервер терминал
1. Лучше вообще отказаться от расширения INI
2. Проследите, чтобы этот файл был НЕ в системном каталоге
Это я только кажусь дураком! На самом деле я полный идиот!
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 4664
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 8 раз
- Поблагодарили: 37 раз
Сервер терминал
Нормально. Только у каждого пользователя должен быть свой ini. Либо с модификацией по названию файла, либо в подкаталоге. У меня у каждого пользователя свой рабочий подкаталог в каталоге программы, в нем ini и некоторые другие файлы настроек. Туда же сохраняются временные файлы, если надо.
C6/C11, ШВС, tps/btrieve.
- morkovin
- Ветеран
- Сообщения: 910
- Зарегистрирован: 20 Июль 2005, 14:53
- Откуда: Volgograd, Russia
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
- Контактная информация:
Сервер терминал
Проверь каким-либо ProcessExplorer, что пожирает ресурсы. У меня такое было. В каждой сессии "возбуждался" Dr.Web и предлагал выполнить полную проверку. Ес-но, юзер соглашался. В результате на серваке выполнялось одновременно 2-3-5-6 проверок. Всё начинало ужасно тормозить. В настройках ДрВеба пришлось запретить такие действия для обычных юзеров.
WBR, morkovin
-
- ✯ Ветеран ✯
- Сообщения: 5006
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 21 раз
Сервер терминал
Я бы для начала посмотрел бы конфигурацию серверов. База на этом же сервере? Или терминальный сервер для запуска, а база на другом? Поведение очень похоже на второй вариант. Программу я бы даже не смотрел в плане подгонки работы на терминале.
We are hard at work… for you.
-
- Бывалый
- Сообщения: 60
- Зарегистрирован: 12 Июнь 2015, 22:59
- Откуда: Новороссийск
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Сервер терминал
Второй вариант. И как я понял, что помочь издалека не смогу. А вариант, не трогать программу, самый приемлемый для меня
-
- ✯ Ветеран ✯
- Сообщения: 1704
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 9 раз
- Поблагодарили: 4 раза
Сервер терминал
Зачем? в терминальном сервере можно сохранять ini программы с каталоге пользователя терминального сервераfinsoftrz писал(а): ↑14 Март 2019, 12:36Нормально. Только у каждого пользователя должен быть свой ini. Либо с модификацией по названию файла, либо в подкаталоге. У меня у каждого пользователя свой рабочий подкаталог в каталоге программы, в нем ini и некоторые другие файлы настроек. Туда же сохраняются временные файлы, если надо.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп