In addition to Vikaspotluri123’s suggestion above about CDNs and minifying assets, you may also want to take a look at Installing Ghost with high availability (not my own site, I should mention. I found it via a goodle search one day) which outlines a HA ghost blog setup. Since you mentioned that you are using EC2, what I would suggest for a high traffic site is the following. I should note that AWS costs can grow fairly quickly, so depending on your budget, this may not all be feasible.
- use a load balancer, probably an AWS ELB, so that you have the option of spreading the load across multiple EC2 instances hosting the same ghost blog.
- possibly the database to be off-loaded into an AWS RDS.
- the HA article above uses Gluster as a common, distributed filesystem across the EC2 instances. Another option is AWS’s EFS (Elastic File System), which, unless mistaken, is also a kind of distributed filesystem that can be shared across EC2 instances.