summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Significant speed improvementRobby Zambito2026-01-12
|
* Use appendAssumeCapacity instead of appendBounded catch unreachableRobby Zambito2026-01-11
| | | | Basically the same thing.
* Use cache line size for the cpuRobby Zambito2026-01-10
|
* Cache align hot buffersRobby Zambito2026-01-10
|
* Use much higher buffer sizesRobby Zambito2026-01-10
|
* Sleep to go fasterRobby Zambito2026-01-10
| | | | | | | | | | The problem was I was basically flushing twice for every message when doing request reply. This gives the sender the opportunity to finish writing a full message to the queue, which we then check for before flushing. This makes request reply latency benchmarks go down from like 90ms to 200us.
* Send should be uncancelableRobby Zambito2026-01-10
|
* Use Subscription.sendRobby Zambito2026-01-10
|
* Properly handle disconnectRobby Zambito2026-01-10
|
* switch to uuids for clientsRobby Zambito2026-01-10
|
* Port to latest 0.16.0Robby Zambito2026-01-10
| | | | Use juicy main ;)
* parsing cleanupRobby Zambito2026-01-10
|
* Improve errors in parse APIRobby Zambito2026-01-08
|
* More robust parsing and error propagationRobby Zambito2026-01-08
|
* support hpubRobby Zambito2026-01-08
| | | | | fixed issue where not all data was being sent request reply has a performance issue but technically works
* WAY FASTER but doesn't send all?Robby Zambito2026-01-07
| | | | Seems to not flush the last message
* starting zero alloc parsingRobby Zambito2026-01-07
|
* Rename to match actual subcommandRobby Zambito2026-01-06
|
* scope parse loggerRobby Zambito2026-01-06
| | | | also change internal name to match public name
* Cleaner SIGINT handlingRobby Zambito2026-01-06
| | | | | Use a Mutex to wait for the signal handler to fire instead of checking an atomic boolean over and over again.
* Cleanup Server.zigRobby Zambito2026-01-06
|
* Major restructuringRobby Zambito2026-01-06
| | | | This makes things much easier to use as a library
* Better cancelation handlingRobby Zambito2026-01-06
| | | | | Based on this conversation with Andrew https://ziggit.dev/t/am-i-canceling-my-std-io-group-incorrectly/13836
* RestructuringRobby Zambito2026-01-06
| | | | Add a bunch of tests for the client
* Return error.Canceled from concurrent group taskRobby Zambito2026-01-06
|
* Support queue groupsRobby Zambito2026-01-06
|
* Don't reuse addressRobby Zambito2026-01-06
| | | | | This was a temporary workaround for when I was not cleanly exiting. Now that I am, this is not necessary.
* Use client allocator to own incoming messages to a clientRobby Zambito2026-01-06
|
* Optimize PUB and HPUB parsingRobby Zambito2026-01-05
| | | | | | | This will try to take better advantage of the buffered reading. Instead of pushing one byte at a time to the array list for each section, find the end index for each section, then alloc the arraylist and copy the data into it all at once.
* Update tests to work againRobby Zambito2026-01-05
|
* Simplified queue accessRobby Zambito2026-01-05
| | | | | | Also correctly move resetting the task to the end instead of defer. We don't want to reset the task in the case of an error, so shouldn't use defer.
* Display help when there is no subcommandRobby Zambito2026-01-05
|
* Add Payload typeRobby Zambito2026-01-05
| | | | | stores short message buffers in a colocated array, overflowing to an allocated slice when needed.
* Using separate queue for high throughput messagesRobby Zambito2026-01-04
|
* Probe for optimal network buffer size.Robby Zambito2026-01-04
| | | | | | | | | We want to match the underlying system socket buffer. Filling this buffer minimizes the number of syscalls we do. Larger would be a waste. Also changed parser to use enums that more closely match the NATS message types.
* holy moly goes way fast!!!Robby Zambito2026-01-03
| | | | like 150 mbps now
* Kill dead code and use higher bufferRobby Zambito2026-01-03
|
* cleanup importsRobby Zambito2026-01-03
|
* Organize thingsRobby Zambito2026-01-03
| | | | Making it easier to use the server as a library
* Fix parse errors, ownership errors.Robby Zambito2026-01-03
|
* Restructuring parserRobby Zambito2026-01-03
| | | | Adding tests fore everything
* Fix double freeRobby Zambito2026-01-03
| | | | was freeing the wrong element before.
* Subject validationRobby Zambito2026-01-02
|
* Remove unnecessary explicit enumRobby Zambito2026-01-02
| | | | This can be computed (as it is now)
* Fix possible race conditionRobby Zambito2026-01-02
| | | | | | | since the queue was being set in an async task and we were then calling send asserting that the queue was set, we could have triggered a panic. didn't run into it but seemed likely to cause issues in the future. also compute the buffer size for operators at comptime.
* Move handshake from client to serverRobby Zambito2026-01-02
|
* Only check for ctrl+c every 10 msRobby Zambito2026-01-02
|
* Add branch hints for high performance messaging.Robby Zambito2026-01-02
|
* Fix connect parsingRobby Zambito2026-01-02
|
* Don't assume capacityRobby Zambito2026-01-02
|