I deployed many apps on Heroku including but not limited to: Ruby/Rails, Python/Flask&Django, Ring/Clojure, Node.js/vanilla without framework&Express(I haven't tried Hapi there, but yes Heroku support it), PHP/vanilla without framework.. I want to say they are so good at letting you deploying all different kinds of languages/framework at ease.
One caveat is that Heroku is a ephemeral filesystem on each Dyno. So if you want to save the file content on the fly, you probably also need to use services like AWS S3. One time in a hackathon I tried to deployed a shared proxy for letting different users share the same html DOMs, and I need to save all the resources user requested from remote server. Since the time limit I just completely switch the site to be hosted on elastic beanstalk (because I never tried Heroku with S3 before). Using Heroku + S3 is actually easy, later I found out. But having to use another storage host might be something you want to know ahead before you try heroku.
>> Are page speeds okay?
It's very slow for the first request, if your site haven't been visited for a while. ("If your application is unused for a while it gets unloaded from the server memory" Quoted from Stackoverflow.) But afterwards I find it fast enough. But that also depends very much on your backend service and infrastructure, so I can't make any promise even though my guess would be it will be okay.
>> Is the uptime satisfactory?
Yes from my experience. I only had very few downtime. One experience I learnt in the hard way is at least have some mechanisms to alert yourself when the site is down. (So you can get up in 3am to fix the issue!!!)
>> Do you have personal experience with high-traffic sites running on Heroku?
How high is your traffic?
>> Heroku and the promise of no systems administration sound tempting, but...
I love their Add-ons. For example, simple things like a scheduler makes the automation so easy.