Assuming you have a large site with a lot of traffic, generating static files would probably be the best thing you can do. But what options do you have if some of your pages need to be dynamic and you also have multiple servers that handle the requests? If I understand the documentation correctly, you can set up the static publisher to also rsync modified files to other servers, but this means that you can no longer have any dynamic content, is this correct?
No, you can still have dynamic content if you have multiple front end webservers but each of those webservers needs to be setup to use the same single database (rather than 1 on each machine) and you'll also need to sync the entire silverstripe installation for the dynamic pages to work rather than just the static html. That is unless you have some setup on your load balancer to ensure requests to non static pages are served from the non static server but I've never experimented with that.