I have written a few posts already, but decided to start a thread here to keep track of the new ones.
Here’s the one I posted today: Avoiding OTP Supervisor performance pitfalls
It’s inspired by a recent discussion on the elixir-lang-core mailing list (linked to from within the blog post).
It won’t let me read it without a login/account
The link was wrong, oops! I fixed it, you should be able to read it now!
Nice article! I learned something new today.
This tidbit was especially interesting to me:
Bonus: handle_continue/2 is also useful any time you want to do some additional work after replying to a message, for example in a handle_call/3 callback.
I think that could be a useful pattern for some GenServer’s
handle_continue/2 is very new and was just recently added to OTP. It replaces the old ‘throw yourself a message’ pattern more reliably as it runs ‘before’ other possible pending messages, which makes it fantastic for handling after an
Great post, and thanks for the contribution!
I’m wondering: what are the requirements for the hash function? Would
erlang:phash2 work too? What’s the advantage of Murmur over others?
@tangui It needs to be able to hash any Erlang term, that’s the only requirement. I picked murmur because it did this out of the box (although using
:erlang.term_to_binary should make any hash function usable).
If you know something better (faster) then feel free to submit a PR
Horde’s got some big changes coming in 0.8.0, click here to read about it!
i have learned something new today
Thanks for sharing
We recently improved EventStore’s performance by 2x to 4x+ (depending on network conditions) and blogged about it here: https://moosecode.nl/blog/event_store_optimized