Write a function that takes two semantic version strings (e.g., "1.2.3" and "1.10.1") and returns 1 if the first is higher, -1 if the second is higher, and 0 if they are equal.
Implement an in-memory class or function that tracks API requests per user ID. It should accept a user ID and a timestamp, returning true if the user is allowed to make a request (maximum 3 requests per 10 rolling seconds) and false otherwise.