If you have tuned a replicat as much as you can and it still is unable to apply transactions on the target database as fast as they are being captured, you may want to consider splitting the load among multiple replicats. In a perfect world we would be able to use 1 replicat for all apply, but realistically there may be factors out of our control that are limiting the apply rate. I do always encourage analyzing the sessions on the target database that are applying transactions. I have often found updates to one or two of the tables may be slow due to a missing index or PK.