1. A computer-implemented method for managing usage of one or more shared resources, comprising: under control of one or more computer systems configured with executable instructions, providing access for each of a plurality of users to at least one shared resource using a connection gateway, the connection gateway configured to provide all connections to the at least one shared resource for the plurality of users; monitoring behavior of each of the plurality of users with respect to at least one allocated threshold for the at least one shared resource; and if the monitored behavior of at least a first user with respect to the at least one allocated threshold for a determined shared resource exceeds a specified range with respect to the at least one allocated threshold for the determined shared resource: calculating a target number of concurrent connections to the determined shared resource to be granted to the first user based at least in part upon the monitored behavior with respect to the at least one allocated threshold for the determined shared resource and the specified range; if the target number of concurrent connections is different than a current number of allocated concurrent connections for the first user to the determined shared resource, adjusting the number of allocated concurrent connections to the determined shared resource for the first user; and if the target number of concurrent connections is the same as a current number of allocated concurrent connections for the first user to the determined shared resource, adjusting a delay for at least one of the allocated connections, the delay indicating a period of time to wait between receiving a request for access and providing the at least one of the allocated connections to the determined shared resource for the first user.