Кстати мой вариант подразумевает shared хостинг - все на одном хосту и не слишком требовательны
2 вариант это Docker с упаковкой всего в контейнеры
3 вариант это полноценные виртуалки на KVM
Мне заказчик заказал для разблокировки ученических компов.
Куплен был сканер. Написаны процедуры взаимодействия с ридером, его программирования и отдачи данных для логина. К сожалению заказчик ушел в туман, так что это все я не завершил.
Основное руководство тут https://learn.microsoft.com/en-us/windows/win32/se...
Бог дал Моисею одну из заповедей "Не сотвори себе кумира", в Unix есть философия утилита должна делать одно дело, быстро и без ошибок, AWS недавно сказало что излишнее количество микросервисов нужно сокращать.
В вашем случае я советую прислушаться к этим советам. Все эти 4 сервиса не разъединять (хотя SailPoint все же стоит отделить).
Дальше, в самой базе хранить id всех этих сущностей, Ведь допустим для SailPoint важны атрибуты времени работы, адреса и организации, а все остальное можно подтянуть уже позже отображения карточки.
Обратите внимание блоки соотносятся как 1:2
Логично что произошел скейлинг в сафари.
Поэтому создаете картинку с 2 большим разрешением и добавляете что то типа
Запускайте totalcommander и нажимайте пробел над каждой папкой если много занимает думайте оно вам надо? И если нет то удаляйте через панель управления.
Я вот зашел и увидел что Adobe Lightroom Classic занимает 3 гига. Хотя у меня фотошоп стоит. Можно и снести
Хм. Вообще не вижу проблемы хотя бы я заменил виртуализацию на Hyper-V.
Ubunty ставите ltsc и забываете на 2-4 года.
Дальше ставите MySQL + Nginx + Node + PHP + Python.
Создаете скрипт который делает следующее:
* вносит изменение в DNS что то типа vasya.labs.loc
* добавляет пользователя vasya и устанавливает пароль
* добавляете папку /home/vasya/public_html
* добавляете конфиг /etc/nginx/sites-enabled/vasya.conf
* добавляете базу для васи и пишете пароли в файл в его домашней директории
* перезапускаете nginx
Итого установка и обновление убунты и обновлений происходит 1 раз и штатно без шаманства
Пользователь получает адрес типа vasya.labs.loc
При желании можно парсить пользователей из csv файла
Node + PHP + Python конкретной версии сам пользователь и назначает используя virtualenv, nvm, phpenv
Выбирайте
MySql, Apache, Nginx, PHP
И настраивайте руками, желательно это сделать в виртуалке или WSL.
Намного меньше будет сюрпризов при развертывании
Как всегда стоит посмотреть документацию, прокрутите ниже и увидите рекомендуемые либы.
Паттерн шины событий можно использовать с помощью внешней библиотеки, реализующей интерфейс эмиттера событий, например mitt (opens new window)или tiny-emitter (opens new window).
Глобальное управление состоянием, например с помощью Vuex (opens new window).
Я бы поставил "затычки" в новом приложении ведущие в старое.
Метод не идеальный но позволяет вот прям и сейчас получить новый функционал.
Хотя в общем затраты на переезд будут больше.
API
Application Programming Interface
Из этого следует что это какое то подобие общения с программой, которое описано в RTFM .
И если у вас не хватило терпения прочитать, заплатите деньги