Цитата: FinSoft ➤ Мы ещё забыли, что для работы через интернет есть и другие варианты, кроме терминала и веба. Это приложения, взаимодействующие через сокеты.
Про умение браузеров в websocket'ы мы уже забыли, хотя я только-только их упоминал.
Цитата: FinSoft ➤ В реальной работе для сетей магазинов я использую ip server для клариона. Он лицензируется на разработчика, прикупил со скидкой в составе пакета дополнений.
Смысл был в том, чтобы обеспечить распределению работу в условиях возможной недоступности сервера в центральном офисе. Для основной системы разработана отдельная небольшая dll. В ней собраны функции для работы с базой данных, которые могут вызываться с удалённой станции. Ip server обеспечивает сервис, который прослушивает определённый порт.
Ну, т.е., клиент-серверная архитектура, использующая соединение по TCP. Растём. Следующим шагом, наверное, будет реальная распределённая система
Цитата: FinSoft ➤ Регистрируем в нем нашу dll (таких dll может быть несколько). Когда извне приходит запрос на соединение, сервис подгружает в память копию dll, дальше взаимодействие происходит с её функциями.
А разве не в этом смысл DLL? O_o А если в нём, то что здесь уникального-то?
Вообще, как-то это сильно попахивает RPC. Если с безопаснотью там проблем нет, то откуда страхи про вэб? Кто сказал, что он отличается?
Цитата: FinSoft ➤ В магазинах отдельное приложение, заточенное под специфику их работы. Полкачивают с сервера необходимую информацию, потом работают оффлайн, оформляя свои документы. По мере готовности, коннектится к серверу и пишут эти документы в центральную базу данных. Можно также запрашивать отчёты из центральной базы данных, которые приходят в xls формате и автоматически открываются на удалённой станции.
Есть еще один работающий вариант с удалённой точкой продаж. Прайс загружается из центральной базы на сервере, пробиваемые чеки сразу пишутся в серверную базу. Если интернет недоступен, то приложение в точке продаж переходит в оффлайн режим, пробитые чеки отправляются в центральную базу при восстановлении связи с сервером.
Ура! Мы изобрели FTN!
Цитата: FinSoft ➤ Коллеги делали свою реализацию ip server, и развернули на нем свои системы. Смысл в том, что сохранили наработанный код, а базы данных клиентов перенесли на свои сервера. В результате клиенты имеют win32 приложение, которое работает с базой данных через интернет напрямую, без постороннего по.
Чот я тут не понял... Какое посторонее ПО имеется в виду?
Цитата: FinSoft ➤ Вчера один англоязычный разработчик написал. Он в США, разрабатывает приложения на кларионе для некоммерческих организаций, арендует сервер в дата центре и хостит на нем, используя tsplus.
Вэб-серверу 16 Гб (и четырёх ядер/потоков) хватит для сотен одновременных пользователей (и тысяч запросов в секунду) без ущерба для производительности. (;
Цитата: FinSoft ➤ В догонку. При использовании ip сервера нагрузка на сервер ниже, чем при использовании веб сервера и, тем более, терминального сервера. Я использую его параллельно с терминальный сервером, это позволяет снизить нагрузку при большом числе пользователей.
А, например, тот же Apache/nginx - не "ip server"? А скульный сервер?
Просто представим, что пользователям не требуется терминальный сервер. Что они работают исключительно с этим "ip server". Представили? Вот и здорово. Потому что, по сути, это и есть вэб сервер. Получил запрос по сетевому протоколу - обработал его - вернул результат.
Вот от требований вашей софтины к серверу отрежьте терминал - это и будет экономия от использования вэб сервера вместо полноценного десктопного приложения. А потом легко перелезаем с Windows на линукс, и экономим здесь тоже - и на железе, и на лицензиях. Маржа разработчика/интегратора увеличивается без увеличения стоимости продукта для конечного пользователя (или даже при её снижении с целью увеличения конкурентноспособности). А ещё можно в контейнер завернуть, и сунуть в какой-нибудь кубернетис, и, вообще не парясь, масштабировать его в зависимости от нагрузки, не переплачивая за неиспользованные аппаратные ресурсы.
Но это всё имеет значение для серьёзных и массовых приложений/сервисов. Калькулятор для местного ларька можно и на коленке на Delphi накрапать.
А ещё на тему нагрузки процитирую Олега: "Не верю (с)". У меня есть пример B2B вэб приложения, которое крутится на линуксе на коробке с двумя ядрами и 2Гб оперативной памяти. При 20-30 одновеременных пользователей система даже не начинает свапиться, несмотря на использование Apache и локальный MySQL сервер. А она, на минуточку, постоянно занимается обработкой изображений и генерацией PDF.