Diagnosing slow Always On commits
The problems I was experiencing:


Synchronous secondary replica falling behind semi-permanently
Huge log backups


These were solved by enabling trace flag 3459. In my case it was extremely easy to see that the flag immediately fixed the wait type of parallel_redo_flow_control
dirty_page_table_lock
parallel_drain_redo_worker and showed a rapid decrease in size of the redo queue.

I wonder why, in the bug report, Microsoft calls this "assertion": https://support.microsoft.com/en-us/help/3200975/fix-assertion-occurs-when-you-use-parallel-redo-in-a-secondary-replica

Credit to Jason AKA CirqueDeSQLeil from SQLServerCentral.com
https://www.sqlservercentral.com/Forums/1871286/AlwaysOn-Missing-Redo-Thread