Commit Graph

121 Commits

Author SHA1 Message Date
Tux d54238023d Squeezed the last bits I possibly can out of the Lua implementation.
Performance enhancements beyond what I've done are welcome.
2015-06-22 00:13:58 -04:00
Tux 59cb27d342 Add a warning to run RedisBungeeClean if the UUID cache exceeds 750,000 entries.
While a large UUID cache will not harm RedisBungee functionality, it can be problematic in some setups, so err on the side of caution.
2015-06-21 22:13:49 -04:00
Tux 8b5eacec40 Introduce a set of performance tweaks.
The most notable changes are a refactor of DataManager to make the caching system easier to tweak, and the ability to use Lua scripts that run on the Redis server to optimize certain batch operations (currently, only getServersToPlayers() uses this).

This also paves the way for me to deprecate old versions of Redis. Anything older than 2.6 is ancient, and even 2.6 is ancient, so it ends up being a net overall benefit.
2015-06-21 17:32:28 -04:00
Tux 27bf52f13d Relicense under the Unlicense. 2015-06-09 19:37:01 -04:00
Tux 712698c76c Changed all previous uses of return(Broken)Resource to try-with-resources 2015-06-06 17:30:45 -04:00
Tux 66996a295c Use try-with-resources in checking. 2015-05-17 14:46:44 -04:00
Tux d111052ead Bump Jedis version (with some caveats). 2015-05-16 21:38:20 -04:00
Tux c46041f802 Revert "[BREAKING] Use nanoTime() for heartbeat checks"
This reverts commit 7c76b245d4.

Conflicts:
	src/main/java/com/imaginarycode/minecraft/redisbungee/RedisBungee.java
2015-04-30 19:58:03 -04:00
Tux 1c12aec718 Revert "Correct omission"
This reverts commit 195857a531.

Conflicts:
	src/main/java/com/imaginarycode/minecraft/redisbungee/RedisBungee.java
2015-04-30 19:57:39 -04:00
Tux 10466a9464 Add exempted IP addresses (closes #19) and refactored configuration. 2015-04-18 10:13:02 -04:00
Tux 195857a531 Correct omission 2015-04-17 16:35:04 -04:00
Tux 7c76b245d4 [BREAKING] Use nanoTime() for heartbeat checks
This improves Windows and timezone-related support by using a time reference that is more-or-less fixed. You will need to update your network if you update.
2015-04-17 16:34:18 -04:00
PunKeel c6c73cf731 Fix okhttp AccessControlException 2015-03-28 21:46:08 +01:00
vemacs 06c3935c39 add test for UUIDFetcher 2015-02-10 08:04:03 -07:00
vemacs a80c3b51e1 Add a test class 2015-02-04 08:02:30 -07:00
Tux ba825c1880 Convert RedisBungee to okhttp. 2015-01-25 00:18:51 -05:00
Tux b375b5402d Fix some FindBugs issues. 2015-01-25 00:04:34 -05:00
Tux 47fc9792b0 Set default maximum Redis connections to 8. 2014-11-26 17:30:25 -05:00
Tux e630116ff8 Better handling of improperly-fetched Jedis resources. 2014-11-26 17:26:51 -05:00
vemacs cb61d90d6c Unregister listener, revert getCount() changes 2014-11-26 10:00:05 -07:00
vemacs e483b9abeb There seems to be a bug in the BungeeCord scheduler, cancelling all tasks for a plugin doesn't cancel all tasks for a plugin. 2014-11-26 09:28:50 -07:00
vemacs 7df764c418 Don't spam exceptions when pinged after disable 2014-11-26 09:15:53 -07:00
Tux d438186682 Do not allow unsubscribing from RedisBungee internal channels and properly poison the PubSub handler this time. 2014-11-02 14:16:41 -05:00
Tux aa772ddf1b Reformat source code. 2014-09-21 13:56:46 -04:00
Tux e0ee2ada21 Migrate from the consumer model to ExecutorService. The consumer was not flexible and was less reliable. 2014-09-21 13:55:14 -04:00
Tux bafe894298 Removed pipelining and other fixes. 2014-09-11 16:38:40 -04:00
Tux 75939ef661 Detect inconsistency of players who are online but not registered in Redis. 2014-09-11 16:19:50 -04:00
Tux b38ff5d1b4 Add /pproxy command to request the proxy where a player is connected. 2014-08-20 21:31:02 -04:00
Tux 5102c39ee6 Removed player count caching and fixed typo (ported from the efficient-server-listing branch). 2014-08-18 15:33:51 -04:00
Tux ad67e1c60c Removed efficient per-server list fetching. It had too many issues. It will be readded when it can be fixed. 2014-08-14 20:21:56 -04:00
Tux f685661462 Enhanced server listing API (now more efficient) and fixed count issues. 2014-08-10 17:58:45 -04:00
Tux e15b4d23f3 Added missing null check. 2014-08-10 06:27:50 -04:00
Tux b37566b47f BLEEDING: New data caching mechanism for RedisBungee, which will enable greater performance as soon as it has been fleshed out. 2014-08-09 23:16:47 -04:00
Tux befd4d0d26 Store user's proxy in their hash and rename the server: keys to proxy: to make their purpose more clear. 2014-08-09 15:32:12 -04:00
mc-core.com a8a75723fb Added an api method to send messages to a custom PubSub channel. This makes the register channel feature a lot more useful. 2014-07-25 19:00:53 -04:00
Tux 7a710c1ae0 Port RedisBungee to threadGroup branch of BungeeCord 2014-07-09 22:54:12 -04:00
md_5 f9180dfb8d Make use of Bungee scheduler for threaded operations. 2014-07-02 16:38:04 +10:00
Tux 718b020bf2 Better checking 2014-06-26 03:34:16 -04:00
Tux 688246b8fe Tweaks, more pipelining. 2014-06-17 15:47:52 -04:00
Tux 460414b3e6 Use Redis pipelining for more efficiency on high-load setups. Also updated Jedis dependency. 2014-06-11 07:24:09 -04:00
Tux c6a6a9d9d0 Fix a typo. 2014-06-06 17:38:41 -04:00
Tux eca670c43d Notify if a server is behind every 30 seconds. This is a /very/ common issue. 2014-06-06 17:38:03 -04:00
Tux 14c2f95a94 Allow default RedisBungee commands to not be registered 2014-06-04 12:59:21 -04:00
Tux 527f76ac6b Ran inspections on code. Fixed compile errors. 2014-05-30 23:57:42 -04:00
Tux 61b83e5889 Clean up code, automatic crash detection, fix some bugs 2014-05-22 23:37:26 -04:00
Tux 638643dab7 Fix typo 2014-05-22 23:20:53 -04:00
Tux 9cf7fdb3c4 Add omitted returnBrokenResource 2014-05-22 17:49:00 -04:00
Tux 07e2621ab2 Just to be sure, initialize the API first thing. 2014-05-20 20:32:43 -04:00
Tux 1d99367956 Revert vemacs for the 3rd time.
@vemacs, do not change this, or I will not only revoke your access to the repo, I will also skin you alive. Using "API" methods in this context is just fine and just because it doesn't suit your fancy doesn't mean you can just change it. I am the BDFL, obey me.
2014-05-20 20:30:31 -04:00
Tux f9fbbb388a move serverId to its own field, prepare for next release (0.3.1-SNAPSHOT) 2014-05-20 16:55:50 -06:00