Enable store sessions in Redis https://devdocs.magento.com/guides/v2.3/config-guide/redis/redis-session.html
or store sessions in memcache
In general you can't do much about it but to improve and optimize code.
Like any other Magento 2 site you have a few extensions installed and a developer wrote modules for various features in the store. That code has to be improved.
There are issues related to perfromance in vanilia Magent 2. If it's a kown issue/bug than you can apply patches.
Why would you need overall code performance improvements when you have a specific issue with PHP sessions ?
What you see in New Relic is not the root cause. Most likely read speed on PHP sessions are fine. Most likely it's a PHP sessions lock issue.
In Magento 2 when you load a page it doesn't do 1 request.
It does a lot of requests:
- 1 request for the html of the URL you access
- 0 to many AJAX requests (section.xml / sections data)
- in checkout page you have more AJAX requests
- static resources requests
- other ?
There are issues with PHP session lock because different requests used to render a page wait each other for read/writes operations on the same file/resouce (Redis case).
There is a PHP setting to disable session lock (do not use it). You need PHP session locking to write safely the data in session files/resources.
Long story short: you have to improve the code in your store to run faster. If the code runs faster than the time while PHP session lock is in effect will be smaller. PHP session lock won't be a big issue.
Or maybe you can invest in a better server(s) to host the store on.
I had this issue:
Magento 2.3.0 MSI isTableExists calls take too long
It was a hosting/server issue and I had to change some code in Magento 2 vanilla to have the store load pages fast.
I would start to search for code performance bottle necks. If you resolve most of them (which should be a couple or a several) than you will have a faster store.
There is no specific fix.