У меня есть база данных Apache Derby, работающая (в сетевом режиме) внутри Java-приложения Swing, я подключаюсь к ней через прямые вызовы JDBC через клиентское Java-приложение.
Это все очень хорошо и прекрасно работает, однако я знаю, что у меня есть дополнительное требование для реализации одновременных лицензий для этого приложения клиент / сервер.
В идеале пользователь с однопользовательской лицензией должен иметь возможность иметь 1 клиентское приложение, работающее на ноутбуке, а также второе клиентское приложение, работающее на настольном компьютере, и иметь возможность подключаться к серверу с обоих.
У меня нет такой роскоши, как веб-сервер, поэтому мне интересно, если мой единственный вариант - использовать свойство времени выполнения maxthreads в Derby и по существу вынудить пользователя выйти из ноутбука, если он хочет затем используйте приложение с рабочего стола.
Если я оставлю свойство timeslice равным 0, произойдет вызов тайм-аута getConnection, чтобы я мог отобразить сообщение для пользователя, объясняющее, что ему необходимо отключить одно из клиентских приложений.
Являются ли потоки соединения надежным способом сделать это?
Мне не хватает другого решения?