Skip to content

Refactor and organize the general task list #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

## Contact

- [Twitter](https://twitter.com/nats_io): Follow us on Twitter!
- [Twitter](https://x.com/nats_io): Follow us on Twitter!
- [Google Groups](https://groups.google.com/forum/#!forum/natsio): Where you can ask questions
- [Slack](https://natsio.slack.com): Click [here](https://slack.nats.io) to join. You can ask question to our maintainers and to the rich and active community.

Expand Down
56 changes: 30 additions & 26 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -1,54 +1,58 @@

# General

- [ ] Auth for queue groups?
### Core Functionality

- [ ] Auth for queue groups
- [ ] Blacklist or ERR escalation to close connection for auth/permissions
- [ ] Protocol updates, MAP, MPUB, etc
- [ ] Protocol updates (MAP, MPUB, etc.)
- [ ] Multiple listen endpoints
- [ ] Websocket / HTTP2 strategy
- [ ] WebSocket / HTTP2 strategy
- [ ] T series reservations
- [ ] _SYS. server events?
- [ ] _SYS. server events
- [ ] No downtime restart
- [ ] Signal based reload of configuration
- [ ] brew, apt-get, rpm, chocately (windows)
- [ ] IOVec pools and writev for high fanout?
- [ ] Signal-based reload of configuration
- [ ] brew, apt-get, rpm, chocolatey (Windows)
- [ ] IOVec pools and writev for high fanout
- [ ] Modify cluster support for single message across routes between pub/sub and d-queue
- [ ] Memory limits/warnings?
- [ ] Limit number of subscriptions a client can have, total memory usage etc.
- [ ] Memory limits/warnings
- [ ] Limit number of subscriptions a client can have, total memory usage, etc.
- [ ] Multi-tenant accounts with isolation of subject space
- [ ] Pedantic state
- [X] _SYS.> reserved for server events?

### Completed Tasks

- [X] _SYS.> reserved for server events
- [X] Listen configure key vs addr and port
- [X] Add ENV and variable support to dconf? ucl?
- [X] Buffer pools/sync pools?
- [X] Add ENV and variable support to dconf (ucl)
- [X] Buffer pools / sync pools
- [X] Multiple Authorization / Access
- [X] Write dynamic socket buffer sizes
- [X] Read dynamic socket buffer sizes
- [X] Info updates contain other implicit route servers
- [X] Sublist better at high concurrency, cache uses writelock always currently
- [X] Switch to 1.4/1.5 and use maps vs hashmaps in sublist
- [X] NewSource on Rand to lower lock contention on QueueSubs, or redesign!
- [X] NewSource on Rand to lower lock contention on QueueSubs, or redesign
- [X] Default sort by cid on connz
- [X] Track last activity time per connection?
- [X] Add total connections to varz so we won't miss spikes, etc.
- [X] Add starttime and uptime to connz list.
- [X] Gossip Protocol for discovery for clustering
- [X] Add in HTTP requests to varz?
- [X] Add favico and help link for monitoring?
- [X] Better user/pass support using bcrypt etc.
- [X] Track last activity time per connection
- [X] Add total connections to varz so we wont miss spikes, etc.
- [X] Add starttime and uptime to connz list
- [X] Gossip Protocol for discovery in clustering
- [X] Add HTTP request data to varz
- [X] Add favicon and help link for monitoring
- [X] Better user/pass support using bcrypt
- [X] SSL/TLS support
- [X] Add support for / to point to varz, connz, etc..
- [X] Add support for `/` to point to varz, connz, etc.
- [X] Support sort options for /connz via nats-top
- [X] Dropped message statistics (slow consumers)
- [X] Add current time to each monitoring endpoint
- [X] varz uptime do days and only integer secs
- [X] varz uptime in days and only integer seconds
- [X] Place version in varz (same info sent to clients)
- [X] Place server ID/UUID in varz
- [X] nats-top equivalent, utils
- [X] Connz report routes (/routez)
- [X] Docker
- [X] Docker support
- [X] Remove reliance on `ps`
- [X] Syslog support
- [X] Client support for language and version
- [X] Fix benchmarks on linux
- [X] Daemon mode? Won't fix
- [X] Fix benchmarks on Linux
- [X] Daemon mode (Wont fix)