Last 12 weeks · 0 commits
2 of 6 standards met
removes the sync.mutex out of the message queue in favor of a lock less concurrent safe queue. go fmt on the master branch seems out of date or something as go fmt now forces tabs. Merge #12 first to see actual changes. Or hit that ignore whitespace diff button I think this in memory queue is faster than channels, but it doesn't block so it would require more refactoring likely with sleeps to handle an empty queue in order to replace all the channels with the queue implementation. This is very useful in real world environments where the queue is rarely starved. If the sleeps aren't tuned right and the queue was starved it would add latency over the channel implementation, however under significant load the queue would never starve and be faster than channels.
I was hoping to learn server programming by watching the VODs from the start, building and running the commits: https://github.com/ThePrimeagen/tyrone-biggums/blob/1ddb63fac0a26c6c37ec39ceb7b6175b127fdcbc/README.md?plain=1#L37 But it seems like you where streaming on youtube when you started the project, then set the past live streams to private. Could you set the past live streams to unlisted and provide the links please?
I saw your video on YouTube and was surprised that the bullet game code written in Rust was not performing as good as (if not better than) Go. This made me curious and I went through the Rust code. I've created an alternate implementation of the game in Rust which doesn't use any and very few s. Hopefully this one should perform better than the current implementation. To compile and run: If you want to change log level: You can test this using the same in current code.
First things first, I don't think the node.js can out perform golang. That being said when running a SYSCALL heavy code with a lot of delegation you should bump the thread pools size from 4 to 128 at least (using the env UV_THREADPOOL_SIZE). More docs here: http://docs.libuv.org/en/v1.x/threadpool.html#thread-pool-work-scheduling
Repository: ThePrimeagen/tyrone-biggums. Description: Clearly a repo about websockets and their comparison... Stars: 470, Forks: 50. Primary language: ReScript. Languages: ReScript (99.6%), TypeScript (0.2%), Rust (0.2%), Go (0.1%), JavaScript (0%). Open PRs: 3, open issues: 4. Last activity: 3y ago. Community health: 42%. Top contributors: ThePrimeagen, pro465.