"One common mistake when using Magento 2 is believing that Magento 2’s built in “Full Page Cache” feature is sufficient for performance. The Full Page Cache mode is labelled by Magento as to be used in development mode, as developers are not able to see what is being cached and what is not being cached with this setting. In production, it is strongly recommended all Magento 2 stores use Varnish Cache for optimal performance."
Magento recommends Varnish as the full page cache for a production
site - the built in cache should be used for development.
Install varnish and configure Magento with the hostname or ip address and port of your varnish server
download a vcl configuration file generated by Magento to use with
the varnish server.
make sure you add the external cache to the Magento configuration
We have used Lightspeed (http://www.tinybrick.com/improve-magentos-slow-performance.html) in quite a few projects and also consider using Zoom Full Page Cache as it seems a free viable option. The speed improvement is very good, all full page cache modules work by caching the whole html page (usually for cms pages, products and categories). Even if the cache is based on files the speed boost is visible. The only case where I would not consider these modules is if you are having most of your traffic coming from logged in users, as most of the community cache modules will not cache much. If this is the case, the best option is the built-in Full Page Cache on Magento Enterprise.
It can depend on how your site/server was setup. That being said, in my app/etc/local.xml of a EE 1.13 site, using the built in Redis, I have the following:
<full_page_cache>
<backend>Mage_Cache_Backend_Redis</backend>
<backend_options>
<server>127.0.0.1</server> <!-- or absolute path to unix socket -->
<port>6380</port>
<persistent></persistent> <!-- Specify a unique string like "cache-db0" to enable persistent connections. -->
<database>1</database> <!-- Separate database 1 to keep FPC separately -->
<password></password>
<force_standalone>0</force_standalone> <!-- 0 for phpredis, 1 for standalone PHP -->
<connect_retries>1</connect_retries> <!-- Reduces errors due to random connection failures -->
<lifetimelimit>57600</lifetimelimit> <!-- 16 hours of lifetime for cache record -->
<compress_data>0</compress_data> <!-- DISABLE compression for EE FPC since it already uses compression -->
</backend_options>
</full_page_cache>
Realistically, more information will need to be known because it will depend on what kind of server you have, who your host is (and whether it is a dedicated or shared box), what caching strategies are available on the server, etc.
Best Answer
from https://www.section.io/blog/magento-performance-magento-varnish-cache/
"One common mistake when using Magento 2 is believing that Magento 2’s built in “Full Page Cache” feature is sufficient for performance. The Full Page Cache mode is labelled by Magento as to be used in development mode, as developers are not able to see what is being cached and what is not being cached with this setting. In production, it is strongly recommended all Magento 2 stores use Varnish Cache for optimal performance."
Magento recommends Varnish as the full page cache for a production site - the built in cache should be used for development.
Install varnish and configure Magento with the hostname or ip address and port of your varnish server
download a vcl configuration file generated by Magento to use with the varnish server.
make sure you add the external cache to the Magento configuration
php bin/magento setup:config:set --http-cache-hosts=varnishhost