Skip to main content

Performance Configuration

Configure performance-related settings.

Performance Settingsโ€‹

performance:
async-database: true
cache-size: 100
cache-expiration: 60

Database Performanceโ€‹

async-databaseโ€‹

Type: Boolean
Default: true
Description: Enable async database operations

Note: Always enabled, cannot be disabled. All database operations run asynchronously to prevent server lag.

Cachingโ€‹

cache-sizeโ€‹

Type: Integer
Default: 100
Description: Number of orders to cache in memory

Adjustments:

  • Small servers (< 50 players): 100 (default)
  • Medium servers (50-200 players): 200-300
  • Large servers (200+ players): 500+

Considerations:

  • Higher values = better performance but more memory
  • Lower values = less memory but more database queries
  • Monitor memory usage when adjusting

cache-expirationโ€‹

Type: Integer (seconds)
Default: 60
Description: Cache expiration time

Behavior:

  • Cached orders expire after this time
  • Fresh data is loaded from database
  • Prevents stale data

Adjustments:

  • Frequent updates: 30-60 seconds
  • Normal usage: 60 seconds (default)
  • Low activity: 120+ seconds

Performance Optimizationโ€‹

For Small Serversโ€‹

performance:
async-database: true # Always enabled
cache-size: 100 # Default is sufficient
cache-expiration: 60 # Default is sufficient

For Medium Serversโ€‹

performance:
async-database: true
cache-size: 200 # Increase cache
cache-expiration: 60 # Keep default

For Large Serversโ€‹

performance:
async-database: true
cache-size: 500 # Larger cache
cache-expiration: 120 # Longer expiration

GUI Performanceโ€‹

See Configuration Overview for GUI settings and configuration options.

Database Typeโ€‹

See Database Configuration for SQLite vs MySQL recommendations.

Monitoring Performanceโ€‹

Key Metricsโ€‹

  • Command Response Time: Should be < 1 second
  • GUI Load Time: Should be instant
  • Database Query Time: Monitor for slow queries
  • Memory Usage: Monitor cache impact
  • TPS Impact: Should be minimal

Performance Indicatorsโ€‹

Good Performance:

  • Fast command responses
  • Instant GUI loading
  • No TPS impact
  • Low memory usage

Performance Issues:

  • Slow commands (> 2 seconds)
  • GUI lag
  • TPS drops
  • High memory usage

Troubleshootingโ€‹

Slow Performanceโ€‹

Check:

  1. Cache size too small
  2. Database performance
  3. Server resources
  4. Other plugins interfering

Solutions:

  1. Increase cache size
  2. Switch to MySQL
  3. Optimize database
  4. Check server resources

High Memory Usageโ€‹

Check:

  1. Cache size too large
  2. Too many cached orders
  3. Memory leaks

Solutions:

  1. Reduce cache size
  2. Reduce cache expiration
  3. Monitor memory usage