woikos
9da1784b1b
Add Blossom bandwidth limiting and tune rate limiters (v0.49.0)
...
Go / build-and-release (push) Has been cancelled
- Add token-bucket bandwidth rate limiting for Blossom uploads
- ORLY_BLOSSOM_RATE_LIMIT enables limiting (default: false)
- ORLY_BLOSSOM_DAILY_LIMIT_MB sets daily limit (default: 10MB)
- ORLY_BLOSSOM_BURST_LIMIT_MB sets burst cap (default: 50MB)
- Followed users, admins, owners are exempt (unlimited)
- Change emergency mode throttling from exponential to linear scaling
- Old: 16x multiplier at emergency threshold entry
- New: 1x at threshold, +1x per 20% excess pressure
- Reduce follows ACL throttle increment from 200ms to 25ms per event
- Update dependencies
Files modified:
- app/blossom.go: Pass rate limit config to blossom server
- app/config/config.go: Add Blossom rate limit config options
- pkg/blossom/ratelimit.go: New bandwidth limiter implementation
- pkg/blossom/server.go: Add rate limiter integration
- pkg/blossom/handlers.go: Check rate limits on upload/mirror/media
- pkg/ratelimit/limiter.go: Linear emergency throttling
- pkg/acl/follows.go: Reduce default throttle increment
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-14 08:09:39 +01:00
0a61f274d5
implement wasm/js specific database engine
2025-12-03 12:31:25 +00:00
1c376e6e8d
migrate to new nostr library
2025-11-23 08:15:06 +00:00
be6cd8c740
fixed error comparing hex/binary in pubkey white/blacklist, complete neo4j and tests"
Go / build-and-release (push) Has been cancelled
2025-11-19 11:25:38 +00:00
d4fb6cbf49
fix handleevents not prompting auth for event publish with auth-required
Go / build (push) Has been cancelled
Go / release (push) Has been cancelled
2025-11-18 20:26:36 +00:00
038d1959ed
add dgraph backend to benchmark suite with safe type assertions for multi-backend support
2025-11-17 16:52:38 +00:00
8d131b6137
Add benchmark tests and optimize database performance
...
Go / build (push) Has been cancelled
Go / release (push) Has been cancelled
- Introduced benchmark tests for various database operations, including event saving, querying, and fetching by serials, to assess performance.
- Implemented optimizations to reduce memory allocations and improve efficiency by pre-allocating slices and maps in critical functions.
- Enhanced the `FetchEventsBySerials`, `GetFullIdPubkeyBySerials`, and `QueryForIds` methods with pre-allocation strategies to minimize reallocations.
- Documented performance improvements in the new PERFORMANCE_REPORT.md file, highlighting significant reductions in execution time and memory usage.
- Bumped version to v0.23.1 to reflect these changes.
2025-11-02 18:19:52 +00:00
e521b788fb
Delete outdated benchmark reports and results.
...
Removed old benchmark reports and detailed logs from the repository to clean up unnecessary files. These reports appear to be auto-generated and no longer relevant for ongoing development.
2025-09-15 05:00:19 +01:00
fc546ddc0b
Replace errorf with errors and fmt.Errorf, remove redundant logging across database operations, minimize unused imports, and improve concurrent event delivery logic. Added CPU utilization optimization in the main runtime configuration.
2025-09-13 00:47:53 +01:00
110223fc4e
Migrate internal module imports to unified package path.
...
Replaced legacy `*.orly` module imports with `next.orly.dev/pkg` paths across the codebase for consistency. Removed legacy `go.mod` files from sub-packages, consolidating dependency management. Added Dockerfiles and configurations for benchmarking environments.
2025-09-12 16:12:31 +01:00
4e96c9e2f7
Remove debug logging across the codebase and update version to v0.3.0.
Go / build (push) Has been cancelled
2025-09-10 22:12:54 +01:00
b063dab2a3
Improve logging, error handling for ID queries, and ensure inclusive range boundaries in event management.
2025-09-10 19:04:54 +01:00
9e59d5f72b
Set default value for LogToStdout, enhance logging for request handling, query events, and filters, and fix ID handling in relaytester-test.sh.
2025-09-10 16:29:55 +01:00
91d95c6f1a
Migrate package imports from next.orly.dev to new orly domain structure; add new varint and binary encoders with comprehensive tests; enhance existing tag and envelope implementations with additional methods, validations, and test coverage; introduce shared test.sh script for streamlined testing across modules.
2025-08-31 16:52:24 +01:00