The short answer is you really want a Multi-TT hub for this application, where 2 or more of your USB devices are likely 12 Mbit/sec. Search for "Multi-TT" on Amazon, Newegg or other sites to find these hubs.
Unfortunately, this important technical detail is rarely mentioned. Most hubs use a cheaper Single-TT design. The good Multiple TT ones are rarely advertised as having this feature, not even marked on the package. Sadly, most people have probably never even heard TTs, which is probably why marketers don't bother to tell you which design their hubs use.
You can check if your hub has this feature using the Windows Device Manager. Look for the words "Hub has multiple TTs" in the Advanced tab.
On Linux, the hub type can be checked with "lsusb -v | grep TT". I am not aware of any simple way to check on Macintosh, except the "USB Prober" utility which Apple publishes in their Xcode development tools.
TT stands for Transaction Translator. The details are complex, and fully documented in chapter 11 of the USB specification, which is a free download from www.usb.org. But in a nutshell, the TT converts between 480 MBit/sec from your PC to the slower 12 or 1.5 MBit/sec speeds.
Normally when you play those musical instruments, their controllers generate MIDI messages and pack then into memory buffers, which await the moment your PC requests the data. When your PC connects directly, it sends a message called an IN token to your instrument. Your instrument can respond to the IN token in two ways, either a DATA packet, or a NAK token to indicate no data. Your PC sends those IN tokens very rapidly, so the result is nearly instantaneous delivery of your musical events as MIDI messages.
However, when your 12 MBit/sec MIDI device connects through a USB 2.0 HUB, very different communication occurs, all at 480 MBit/sec. Your PC actually communicates with the Transaction Translator in the hub. It sends 2 messages. First, SSPLIT (Start Split Transaction) message is sent to the TT. If the TT is not busy, it sends an acknowledgement. Then the TT transmits the IN token to your MIDI keyboard at the slower 12 MBit/sec speed. Meanwhile, your PC is able to communicate with other devices at 480 Mbit/sec. Your MIDI keyboard can not tell if the IN token came directly from your PC or from a hub's TT. It does exactly the same thing as if connected to your PC. The TT inside the hub receives either the NAK or DATA response. While this is in progress, your PC begins sending CSPLIT (Complete Split Transaction) messages to the hub's TT. The TT replies with a special NYET token is the TT is still busy communicating at 12 Mbit/sec, or the NAK or DATA from your keyboard.
If you have both a MIDI keyboard and a MIDI drum connected, what happens if your PC wishes to send a SSPLIT message to ask the TT to communicate with the drums, but the TT is already busy communicating with the keyboard? With only a single TT, the hub may reply NYET to a new SSPLIT request, because it is busy performing the IN+DATA at 12 MBit/sec. You definitely don't want that scenario!
Multiple TT hubs have a dedicated TT on every downstream port (which you plug devices in). With multiple TTs, the hub is always able to accept a SSPLIT request, even when the other TTs are busy communicating other downstream devices. With only a single TT, your PC may end up waiting, even through there's plenty of 480 MBit/sec bandwidth, because the hub has limited ability to convert more than 1 message at a time between the different speeds.
This description glossed over many important USB timing issues the TTs handle, but the important point is USB 2.0 hubs can use two distinctly different designs. You really want to avoid the cheaper Single-TT hubs.
USB 3.0 & 3.1 speeds were mentioned elsewhere in these answers. But the TTs in hub never convert between the 5 or 10 gigabit speeds and 480, 12 or 1.5 speeds. Instead, USB 3.0 & 3.1 hubs operate as a pair of hubs. The gigabit signals have their own dedicated pins in the newer USB connectors, which connect to a hub that runs only at 5 or 10 Gbit/sec speed. Simultaneous 480 Mbit/sec communication occurs on the original pins, so 12 and 1.5 MBit/sec devices are converted to 480 Mbit/sec by TTs, but never to 5 or 10 Gbit/sec.
Also mentioned elsewhere is "low speed", which technically means 1.5 Mbit/sec in USB jargon, but may mean 1.5 or 12 Mbit/sec in casual conversation. 12 Mbit/sec is called "full speed" in USB terminology. The USB MIDI protocol, which is technically part of the "Audio Class Specification", uses "bulk" protocol (not the interrupt protocol, as claimed in another answer). The USB spec does not allow bulk transfer protocol for 1.5 Mbit/sec speed. So unless a USB MIDI device very grossly violates the USB speed, it will always be at least 12 Mbit/sec speed. USB MIDI may be 480 Mbit/sec speed, in which case the TTs don't apply. But the vast majority of USB MIDI products today are still 12 Mbit/sec speed.
So you really want to make sure your USB hubs are Multi-TT types, if you plan to maximize performance.