Tux
a2efb59186
Clean up lagged proxies. Fixes #23
2015-10-18 19:52:52 -04:00
Tux
87ab0e72fd
Relicensing under the Eclipse Public License.
2015-10-18 19:52:46 -04:00
Tux
cd3f5f1b7e
Better firing of network events when we need to resync.
2015-10-03 23:45:34 -04:00
Tux
4e09efe801
Resolve more synchronization issues.
...
Notably, getLastOnline() is more in sync, putting a probable end to #23 !
2015-10-03 23:36:37 -04:00
Tux
e285b3f2aa
Better resyncing of missing players on the proxy.
2015-09-27 11:49:03 -04:00
Tux
d1bfb9e162
If we find an async ping event-hostile plugin (currently only ServerListPlus), run the ping handling handler synchronously.
...
This is meant as a move to attempt to introduce a better mechanism for handling async events in a more sane way.
2015-08-25 20:12:55 -04:00
Tux
121040ad90
Introduce /rdebug command to expose some pool statistics.
2015-08-02 19:57:48 -04:00
Tux
431ff013e1
ServerConnectedEvent task doesn't really benefit from pipelining. Possible fix for #23 ?
2015-08-01 18:00:29 -04:00
Tux
f0164c3c8c
Replace Collections2.transform with forced Collection iteration.
2015-07-01 21:06:13 -04:00
Tux
b95400e810
Fix logging in
...
Looks like player "online" entries need to have stricter validation. I'll probably implement this with Lua.
2015-06-28 07:08:39 -04:00
Tux
a986481b0d
Never modify the response if using a forced host and ping_passthrough.
2015-06-25 12:09:21 -04:00
Tux
8f1aff3a11
Simplify getLocalPlayersAsUuidStrings() as it was too redundant.
2015-06-24 07:04:01 -04:00
Tux
21710fcd8e
Perform some code tweaks and fix some spelling.
2015-06-24 06:06:34 -04:00
Tux
682d180505
Fix the licensing.
2015-06-24 05:54:43 -04:00
Tux
2c22bc4439
Simplify PubSub code.
2015-06-24 05:54:19 -04:00
Tux
32f0dffd85
Reformatting and corrected several comments and messages.
2015-06-24 05:51:40 -04:00
Tux
95a2a33781
Added basic expiry to cache and tests.
2015-06-23 23:17:50 -04:00
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
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
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
d1bdfc9e2e
Use Google Guava InetAddresses.forString() method to make sure we don't hit network.
2015-02-05 22:11:22 -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