Even though you hear all these talks about scaling and infinite possibilities, the examples that truly match your use case are few and far between. So when we set out to make Nuvola (our greenfield Symfony application) use both sharding and a master slave approach at the same time, we faced a variety of issues and none of the solutions out there were a perfect match. We dealt with having Doctrine handle both features at the same time, possible delays in propagation from master to slave, and a whole class of bugs we may or may not have introduced with this change. Is this issue surfacing just now because of this change? Was it there all along and we just never noticed? This is not a story about how things look in a perfect world, this is about what we had, what we set out to do, and how we made it work.

Comments

Please login to leave a comment

Nice talk, very good for being the first one.

Only suggestion, I would take care of a few details on the slides, because on some a few manual returns would have made them more readable.. Maybe it wasn't tested in a 16:9 setup?

Always nice to see pragmatic approaches, curious to see why the 2 second switch to master is refreshed on read-only page hits.

Overall, you powered through the nevervousness, keep it up, you did great.

Super great delivery!

Would have appreciated to see more details at php level, but I guess squeezing it in 25 minutes is pretty difficult.

Anonymous at 15:15 on 18 Oct 2019

The second perfect episode of 2016 talk.
Some code examples and infrastructure schemes will be great.

Loved the effectiveness of the talk. It follows a perfect plot: "we had this problem, we came up with this solution, we gained some knowledge along the way, here it is". Was it really your first talk? It didn't show. Thank you.

Andy Roid at 08:52 on 21 Oct 2019

Nice topic.

Maybe some more examples and lines of code could be appreciated.