Информация об изменениях

Сообщение Re[8]: Java в shareware от 03.03.2023 13:55

Изменено 03.03.2023 13:58 sfsoft

Re[8]: Java в shareware
Здравствуйте, Gt_, Вы писали:

Gt_>лучше распиши в жава топике верхний уровень. верно ли я понял, что серверную часть клиент ставит, что нужны апдейты с базой данных, соответственно что-то изобрести с откатом апдейта. что за база на сервере сейчас ? если чего хитрое, чего в простых гайдах можно и не найти ?


Пока здесь напишу, CTRL+C, CTRL-V можно быстро сделать

СУБД: Firebird
Сервер приложений — это свой веб-сервер, отрабатывающий JSON-RPC запросы от клиентов. Естественно многопоточный, с пулом соединений с СУБД, есть собственная реализации очереди, для долгоиграющих запросов, а также генератор отчётов (а данном случае FastReport, довольно старый, именно он и "течёт" время от времени). Отчётов около 150 и их перевод на тот же birt — долгая затея... Всё это написано на Delphi (используется самая последняя версия, есть подписка на неё). Работает шустро, никто не жалуется.

По установке у пользователей. Чаще всего никаких админов у наших пользователей нет. Да и с компьютером многие из них на "вы". Поэтому работает это всё следующим образом: наш инсталлятор копирует нужные файлы, устанавливает сервис Firebird и создает необходимые ярлыки. Т.е. запустить инсталлятор и нажать несколько раз Далее юзеры могут в большинстве своём.

По обновлениям. При запуске клиентского ПО появляется плашка, что доступна новая версия. Пользователи на своем сервере (хотя обычно это такая же рабочая машина) открывают окно сервера приложений и там жмут кнопку Обновить. Программа скачивает с нашего сайта апдейт в архиве, распаковывает его, затем создает копию рабочей БД и накатывает скрипты обновления. Если всё прошло успешно у текущего exe меняем расширение на bak, а на его место записываем новый exe. И рестартим приложение. Если произошла ошибка во время накатывания скриптов (например, юзеры сунули руки в метаданные БД и что-то сломали), то программа удаляет нерабочую копию БД и восстанавливает рабочую копию из созданной ранее. Как-то вот так всё работает.
Re[8]: Java в shareware
Здравствуйте, Gt_, Вы писали:

Gt_>лучше распиши в жава топике верхний уровень. верно ли я понял, что серверную часть клиент ставит, что нужны апдейты с базой данных, соответственно что-то изобрести с откатом апдейта. что за база на сервере сейчас ? если чего хитрое, чего в простых гайдах можно и не найти ?


Пока здесь напишу, CTRL+C, CTRL-V можно быстро сделать

СУБД: Firebird
Сервер приложений — это свой веб-сервер, отрабатывающий JSON-RPC запросы от клиентов. Естественно многопоточный, с пулом соединений с СУБД, есть собственная реализации очереди, для долгоиграющих запросов, а также генератор отчётов (а данном случае FastReport, довольно старый, именно он и "течёт" время от времени). Отчётов около 150 и их перевод на тот же birt — долгая затея... Всё это написано на Delphi (используется самая последняя версия, есть подписка на неё). Работает шустро, никто не жалуется.

По установке у пользователей. Чаще всего никаких админов у наших пользователей нет. Да и с компьютером многие из них на "вы". Поэтому работает это всё следующим образом: наш инсталлятор копирует нужные файлы, устанавливает сервис Firebird и создает необходимые ярлыки. Т.е. запустить инсталлятор и нажать несколько раз Далее юзеры могут в большинстве своём.

По обновлениям. При запуске клиентского ПО появляется плашка, что доступна новая версия. Пользователи на своем сервере (хотя обычно это такая же рабочая машина) открывают окно сервера приложений и там жмут кнопку Обновить. Программа скачивает с нашего сайта апдейт в архиве, распаковывает его, затем создает копию рабочей БД и накатывает скрипты обновления. Если всё прошло успешно у текущего exe меняем расширение на bak, а на его место записываем новый exe. И рестартим приложение. Если произошла ошибка во время накатывания скриптов (например, юзеры сунули руки в метаданные БД и что-то сломали), то программа удаляет нерабочую копию БД и восстанавливает рабочую копию из созданной ранее. Как-то вот так всё работает.

Update: сервер приложений сам регистрируется при запуске в Планировщике Windows, поэтому при перезапуске компа он сам запускается. Прав Администратора нигде не требуется, всё работает с правами обычного юзера.