Don't use too much classes 3 or 4 will do fine. Just make sure bulky up/downloads take full bandwidth , filling up buffers is already very helpfull
The classes as shown look OK.....but you do not set any bandwidth limit. Without it , queueing is sort of useless.
Idea behind this: set bandwidth just below internet speed, so you own the queue, and your rules are effective.
QoS breaks offload , so QoS is useless on high speed links (> 100Mb/s)
Your queues can also affect inter-vlan traffic.
imho, QoS is a hard topic, I've hardly seen good explanations (here).