Вопрос/Среда
Цель моего веб-приложения — быть удобным интерфейсом к базе данных в нашей компании.
Я использую:
- Scalatra (как минимальная веб-инфраструктура)
- Jetty (как контейнер сервлета)
- SBT (простой инструмент сборки)
- JDBC (для взаимодействия с базой данных)
Одним из требований является то, что каждый пользователь может управлять несколькими одновременными запросами, и что даже когда он/она выходит из системы, запросы продолжают выполняться и могут быть получены позже (или проверяется их статус завершения, если они были остановлены по какой-либо причине).
Я полагаю, что запросы, вероятно, должны будут выполняться в отдельном потоке.
Я даже не уверен, является ли эта проблема ортогональной или нет для пула соединений (который я определенно собираюсь использовать, BoneCP и C3PO кажутся хорошими).
Резюме
Вкратце: мне нужно очень точно контролировать время жизни запросов к базе данных, и они не могут быть привязаны к времени жизни сервлета
Какие есть способы выполнить мои требования? Я довольно много искал в Google и переполнении стека и не нашел ничего, что могло бы решить мою проблему, возможно ли это вообще?