Commit Graph

447 Commits

Author SHA1 Message Date
Tux 982644d31c Add /plist command and plural player count. 2015-06-22 06:06:02 -04:00
Tux 8c05655330 Always kick the new player in online mode.
Allowing the new player on is more seamless, but does not synchronize well, so I've forced a kick instead, which is a cleaner solution at the expense of minor inconvenience.
2015-06-22 04:54:15 -04:00
Tux ff602bc5e6 Player/internal tweaks:
- Switch to BungeeCord task scheduler, since it's fixed.
- Moved player checks and such to LoginEvent. The login network event is still published from PostLoginEvent.
- Fix a typo. Whee.
2015-06-22 04:35:45 -04:00
Tux 2cbe1997a0 Change thread pool from fixed size of 16 threads to a cached one.
RedisBungee's operations aren't particularly long-lived so this makes more sense. Eventually, this will simply wrap around the BungeeCord scheduler, since most of its pressing issues are resolved.
2015-06-22 04:02:19 -04:00
Tux 4834b7826f Use more efficient HMSET when possible. 2015-06-22 04:00:25 -04:00
Tux b21c02eca0 If an expired UUID/name entry is found, also expunge the other entry. 2015-06-22 03:47:21 -04:00
Tux 85bb0cc14a Move IOUtil to the util package (which is a better location). 2015-06-22 03:39:26 -04:00
Tux 787a189867 Localize ipairs. Might help out a tiny bit. 2015-06-22 00:27:18 -04:00
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 a6ab874791 One last tweak! 2015-06-21 23:23:28 -04:00
Tux 6244f5b65e Clarify that Redis does allow tables to be sent back, but not associative ones. 2015-06-21 22:44:14 -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 90612fa98a Extra Lua optimizations (minimize table lookups). 2015-06-21 20:44:44 -04:00
Tux 8d3681dc1f Make some Lua calls local to increase performance. 2015-06-21 20:27:27 -04:00
Tux 1c598868a9 whoops 2015-06-21 20:03:11 -04:00
Tux d7b3568eec Slightly simplified the Lua code. 2015-06-21 20:02:12 -04:00
Tux 85eea7746e Plugin messaging API tweaks:
- Behavior on unknown commands made more consistent (don't send any messages).
- ServerPlayers message requires a type of PLAYERS/COUNT.
2015-06-21 18:11:27 -04:00
Tux 8e6447c8e0 Reintroduce pipelining support. 2015-06-21 18:09:46 -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 d68b2713c4 Seamlessly support offline-mode more effectively by always skipping Mojang lookups. 2015-06-06 17:23:51 -04:00
Tux 665d73af0c more try-with-resources. 2015-06-06 16:39:10 -04:00
Tux 86efdeaf8e Make ServerPlayers messages looking for counts be less expensive to run by skipping the UUID lookup. 2015-05-17 14:54:35 -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 807e71e566 Allow specifying ServerPlayers PLAYERS to get players and default to just count. 2015-04-22 18:34:23 -04:00
Tux a372720e50 Add batch server<->player mapping and current proxy plugin messages. 2015-04-22 18:30:04 -04:00
Tux e82a3ac5dd Remove the canonical glist setting as server owners should override /glist with a plugin if they don't like RedisBungee's version. 2015-04-18 10:14:49 -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 f391793e45 Merge branch 'master' of https://github.com/thechunknetwork/redisbungee 2015-02-10 08:04:06 -07:00
vemacs 06c3935c39 add test for UUIDFetcher 2015-02-10 08:04:03 -07:00
Marquee c4dc10f3c7 Bump to 0.3.6 2015-02-05 22:12:35 -05:00
Marquee d1bdfc9e2e Use Google Guava InetAddresses.forString() method to make sure we don't hit network. 2015-02-05 22:11:22 -05:00
Marquee 144fe4d2fb Releasing RedisBungee 0.3.5 2015-02-05 22:05:39 -05:00
Marquee e0f50f3c5d Add license header 2015-02-04 20:11:19 -05:00
vemacs a80c3b51e1 Add a test class 2015-02-04 08:02:30 -07:00
vemacs b684064c92 Get last element 2015-02-04 07:55:45 -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 f201cdc4e8 Make NameFetcher less hazardous to ones health. 2015-01-25 00:02:30 -05:00
vemacs 20ef1ee284 Use new-new method with a better ratelimit 2015-01-09 07:45:45 -07:00
vemacs 6511e2154f Revert "Revert to old method as the new method has changed"
This reverts commit 16ce4eb696.
2015-01-09 07:44:03 -07:00
Tux 16ce4eb696 Revert to old method as the new method has changed 2015-01-07 20:28:28 -05:00
Tux 5c9664c344 Use proper exception handling in UUIDTranslator. 2014-12-29 11:40:34 -05:00