interface UserLock
abstract fun lock(userId: String): Boolean
abstract fun releaseLock(userId: String): Unit