There are following main techniques to reduce Lock contention:
1. Reduce the scope of lock.
2. Reduce object pooling.
3. Reduce the number of times a certain lock can be acquired.
4. Avoid synchronization at unnecessary places.
5. Implement hardware supported Optimistic locking in place
of synchronization.
https://www.ibm.com/docs/en/mon-diag-tools?topic=perspective-resolving-lock-contention