Сервер терминал

Флейм. Только просьба - не материться! :)
gopstop2007
Ветеран
Сообщения: 1186
Зарегистрирован: 25 Март 2009, 21:55

Сервер терминал

Сообщение gopstop2007 » 14 Август 2016, 20:36

Попросили собрать сервер под терминал на 5-8 человек, в день около 1-2 тыс записей, крутится на нем будет windows server 2012r2 (x64) в терминальном режиме, сама программа на кларионе (Clarion 10) TPS. Кто практически сталкивался с терминальными серверами какие параметры требуемого железа для данного количества человек - записей? Спасибо заранее, с терминалами сталкиваюсь впервые :)
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп

Аватара пользователя
Admin
Администратор
Сообщения: 3349
Зарегистрирован: 05 Июль 2005, 14:59
Откуда: Хабаровск
Контактная информация:

Сервер терминал

Сообщение Admin » 15 Август 2016, 2:21

Такие "объемы" потянет любой комп достаточный для установки x64 с памятью 3-4Gb

В офисе стоят разные терминальные сервера i3, i5, i7. Памяти 16-32Gb. Вывозят 50-60 пользователей. Правда у нас все программы с MS SQL. MS SQL - отдельные сервера. Количество пользователей на сервере у нас не ограничивается сервером. Просто разные группы распределены по разным терминальным серверам.

В магазинах "задохлики" вплоть до AMD Athlon II X2 250 + 8-16Gb, MS SQL Server + 20-35 пользователей. Все норм, видимых тормозов нет.

Зависит от софта. С TPS давно не работаем.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1030
Зарегистрирован: 06 Ноябрь 2014, 12:48

Сервер терминал

Сообщение finsoftrz » 15 Август 2016, 8:08

С таким количеством пользователей у нас работали на одном 2-ядерном процессоре с 1 гб памяти без проблем с производительностью. Сервер Windows 2003. Из современных компьютеров должен подойти любой. Желательно 2 диска для надежности. Оперативки 4 гб, она дешевая. Tps-база желательно только с локальным доступом.
Рязань решает.

gopstop2007
Ветеран
Сообщения: 1186
Зарегистрирован: 25 Март 2009, 21:55

Сервер терминал

Сообщение gopstop2007 » 15 Август 2016, 11:39

Поставил для пробы на нетбук :) server 2008r2 ram 2Gb, работает 5 человек без тормозов.
finsoftrz писал(а):... Tps-база желательно только с локальным доступом.
смысле, она вроде под терминалом и так с локальным доступом?!
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп

kreator
Ветеран
Сообщения: 3107
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Сервер терминал

Сообщение kreator » 15 Август 2016, 12:29

gopstop2007 писал(а):смысле, она вроде под терминалом и так с локальным доступом?!
Ну, мало ли кто зайдёт не через терминал. Винда критична к этому. Правда, я не знаю как защититься от этого. Если только на серваке не расшаривать папку, где лежат *.tps.
We are hard at work… for you. :)

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1030
Зарегистрирован: 06 Ноябрь 2014, 12:48

Сервер терминал

Сообщение finsoftrz » 15 Август 2016, 13:51

Да, не расшаривать. Еще может встать вопрос по безопасности. Чтобы никто к tps-файлам в обход программы не лез. Обычно на сервере файловая система ntfs, там можно стандартно закрыть от просмотра содержимое папки с tps-файлами. Совсем по взрослому - создать в такой закрытой от просмотра папке секретный подкаталог, имя которого хранится в настройке программы, и в него поместить tps-файлы. На практике, правда, никто у нас таким не пользуется, хотя система поддерживает...
Рязань решает.

kreator
Ветеран
Сообщения: 3107
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Сервер терминал

Сообщение kreator » 15 Август 2016, 14:49

finsoftrz писал(а):Обычно на сервере файловая система ntfs, там можно стандартно закрыть от просмотра содержимое папки с tps-файлами. Совсем по взрослому - создать в такой закрытой от просмотра папке секретный подкаталог, имя которого хранится в настройке программы, и в него поместить tps-файлы.
А как это? Поднимали здесь тему "как спрятать файлы в сети", но такого простого способа никто не предлагал. Нам, например, нужно спрятать фото и документы pdf, которые создаются в программе. Естественно, каталог, где они находятся, должен быть доступен из программы. Были варианты это сделать через ip-драйвер или через WinAPI функцию запуска процесса под другим пользователем. Можете поделится своим вариантом?
We are hard at work… for you. :)

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1030
Зарегистрирован: 06 Ноябрь 2014, 12:48

Сервер терминал

Сообщение finsoftrz » 15 Август 2016, 17:37

Речь про терминальный сервер. Например, приложение находится в каком-то каталоге, в нем подкаталог для базы данных с tps-файлами. Щелкаем правой кнопкой мышки на этом подкаталоге, Свойства, Безопасность, Изменить. Добавляем наших пользователей в верхний список, в нижнем включаем только одну галку в колонке "Запретить" на "Список содержимого". Можно попробовать собрать пользователей в группу и выставить это для группы, но на какой-то версии windows 2000 работало только для отдельных пользователей. Пользователи могут работать с базой данных из программы, а удалить или скопировать файлы базы не смогут.
А с секретным каталогом так. В упомянутом выше подкаталоге создаем вложенный с каким-нибудь именем и переносим все tps-файлы в него. Оставляем только настроечный зашифрованный tps-файл, в котором храним имя этого секретного подкаталога. Это может быть нужно, чтобы какая-то левая программа не влезла в файл напрямую, аналогично, как работает наша программа (то есть в многопользовательском режиме). Имена файлов обычно можно определить по названиям таблиц, а тут они оказываются за дополнительным барьером в виде подкаталога с произвольным названием.
Рязань решает.

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1030
Зарегистрирован: 06 Ноябрь 2014, 12:48

Сервер терминал

Сообщение finsoftrz » 15 Август 2016, 17:57

Admin писал(а): Такие "объемы" потянет любой комп достаточный для установки x64 с памятью 3-4Gb

В офисе стоят разные терминальные сервера i3, i5, i7. Памяти 16-32Gb. Вывозят 50-60 пользователей. Правда у нас все программы с MS SQL. MS SQL - отдельные сервера. Количество пользователей на сервере у нас не ограничивается сервером. Просто разные группы распределены по разным терминальным серверам.

В магазинах "задохлики" вплоть до AMD Athlon II X2 250 + 8-16Gb, MS SQL Server + 20-35 пользователей. Все норм, видимых тормозов нет.

Зависит от софта. С TPS давно не работаем.
Может немного не в тему. Евгений, а как у вас организуется работа удаленных магазинов? Судя по цитате, репликация на уровне ms sql? Мне сейчас надо наладить работу небольшой сети продуктовых супермаркетов (9 магазинов). Раздумываю, стоит ли оставить на терминальном доступе или вынести рабочее место товароведа магазина (1-2 рабочих места в магазине) на отдельное небольшое приложение с коннектом к серверу через ip-драйвер. Второе имеет немало плюсов (проще обмениваться с торговым оборудованием, можно переходить в оффлайн режим при проблемах со связью или сервером, меньше нагрузка на сервере и т.п.), но приводит к дублированию некоторой части функционала основной учетной системы. К тому же фронт на специальных кассовых программах, требования по наличию связи не стоят остро...
Рязань решает.

kreator
Ветеран
Сообщения: 3107
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Сервер терминал

Сообщение kreator » 16 Август 2016, 0:23

finsoftrz писал(а):Добавляем наших пользователей в верхний список, в нижнем включаем только одну галку в колонке "Запретить" на "Список содержимого". Можно попробовать собрать пользователей в группу и выставить это для группы, но на какой-то версии windows 2000 работало только для отдельных пользователей. Пользователи могут работать с базой данных из программы, а удалить или скопировать файлы базы не смогут.
Мутная всё-таки эта тема "Права в Windows". По описанию этой опции, если её запретить, то файлы в папке не должны открываться. Может в Win Server 2003 по-другому? Может, на терминалке по-другому? Надо будет при случае админов напрячь на проверку этого дела.
We are hard at work… for you. :)

Аватара пользователя
Admin
Администратор
Сообщения: 3349
Зарегистрирован: 05 Июль 2005, 14:59
Откуда: Хабаровск
Контактная информация:

Сервер терминал

Сообщение Admin » 16 Август 2016, 2:03

finsoftrz писал(а):Может немного не в тему. Евгений, а как у вас организуется работа удаленных магазинов? Судя по цитате, репликация на уровне ms sql? Мне сейчас надо наладить работу небольшой сети продуктовых супермаркетов (9 магазинов). Раздумываю, стоит ли оставить на терминальном доступе или вынести рабочее место товароведа магазина (1-2 рабочих места в магазине) на отдельное небольшое приложение с коннектом к серверу через ip-драйвер. Второе имеет немало плюсов (проще обмениваться с торговым оборудованием, можно переходить в оффлайн режим при проблемах со связью или сервером, меньше нагрузка на сервере и т.п.), но приводит к дублированию некоторой части функционала основной учетной системы. К тому же фронт на специальных кассовых программах, требования по наличию связи не стоят остро...
Работаем с MS SQL через MAV. БД у каждого магазина своя. Все базы магазинов реплицируются в офис средствами MS SQL через VPN. Думали об одной базе но в итоге отказались. Качество связи хромает местами. Может не быть канала сутки. Текущие обновления в магазины и из них ходят XML файлами через почту (накладные, новый товар, изменения цен). Автоматом отправляются и принимаются. Нет связи - можно руками на флешке обменяться данными. Отчеты из офиса можно по реплицированым данным делать или напрямую из каждого магазина, т.е. в офисе запускаем отчет о продажах, он собирает все данные со всех магазинов (если есть связь).
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1030
Зарегистрирован: 06 Ноябрь 2014, 12:48

Сервер терминал

Сообщение finsoftrz » 16 Август 2016, 7:59

kreator писал(а): Мутная всё-таки эта тема "Права в Windows". По описанию этой опции, если её запретить, то файлы в папке не должны открываться. Может в Win Server 2003 по-другому? Может, на терминалке по-другому? Надо будет при случае админов напрячь на проверку этого дела.
Прямой доступ к файлам по имени работает. Проверено на win2000, win2003, win2008. Работать с открытой для доступа извне tps-базой как-то не хочется, мало ли что. Поэтому всегда включаем этот механизм защиты.
Рязань решает.

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1030
Зарегистрирован: 06 Ноябрь 2014, 12:48

Сервер терминал

Сообщение finsoftrz » 16 Август 2016, 8:20

Admin писал(а): Работаем с MS SQL через MAV. БД у каждого магазина своя. Все базы магазинов реплицируются в офис средствами MS SQL через VPN. Думали об одной базе но в итоге отказались. Качество связи хромает местами. Может не быть канала сутки. Текущие обновления в магазины и из них ходят XML файлами через почту (накладные, новый товар, изменения цен). Автоматом отправляются и принимаются. Нет связи - можно руками на флешке обменяться данными. Отчеты из офиса можно по реплицированым данным делать или напрямую из каждого магазина, т.е. в офисе запускаем отчет о продажах, он собирает все данные со всех магазинов (если есть связь).
Значит, я правильно понял. В принципе, для ситуации с супермаркетами я определился - будет небольшое локальное приложение в магазинах и удаленный доступ к основной базе данных через ip-драйвер. Все справочники можно загружать архивом с сервера с утра или по мере необходимости. В магазинах они не модифицируются. В частности, магазин сам не может закупать товары у поставщика, с которым не заключен договор в центральном офисе, или закупать какие-то новые товары на свое усмотрение. Передача файлов через ip-драйвер работает довольно шустро. А документы (приходы, возвраты, переоценку, списание, перемещение, инвентаризация) заносить в базу офиса (синхронизировать) через вызов функций ip-драйвера. Причем без постоянного соединения с сервером. Аналогично и получение информации из других магазинов (например, остатки товара, цены). Я думаю, что такая конструкция в итоге потребует меньше телодвижений при поддержке по сравнению с терминальным доступом. Все таки терминальный доступ в рамках локальной сети и через интернет вещи отличающиеся.
Рязань решает.

gopstop2007
Ветеран
Сообщения: 1186
Зарегистрирован: 25 Март 2009, 21:55

Сервер терминал

Сообщение gopstop2007 » 19 Август 2016, 8:54

Появилась еще проблема, нужно сохранять/загружать персональные настройки для каждого терминального пользователя, у меня настройки большей частью хранятся в каталоге самой программы в ini файле. Как можно универсально решить вопрос, чтобы при простом использовании программы ini файл находился в каталоге программы, а при использовании терминального режима в настройках каталога пользователя терминального сервера?
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп

kreator
Ветеран
Сообщения: 3107
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Сервер терминал

Сообщение kreator » 19 Август 2016, 10:14

Универсально - перевести всех на хранение в личном каталоге. Что этому мешает?
We are hard at work… for you. :)

Ответить