Java's concurrency model may be stuck in the 1970s, but it actually works, unlike a lot of newer frameworks...
OP was asking for ways to broaden his concurrency knowledge, and studying message-passing, transactional models, promises, etc. will certainly do that.
How can you understand these tools thoroughly if you don't understand the foundation that they're built on?
Yes, they probably have been used in services with billions of users, but I guarantee those engineers understood the basics of threading just as well, if not better, than the tools built on top of them.
OP: This video is pretty good at explaining some core concepts: https://www.youtube.com/watch?v=MCs5OvhV9S4