Comments Inline.
>My framework requires a relation database to manage users, authentication, etc. I want to be able to scale adding more frontend web servers.
>What do you think?
For scaling you can use elastic load balancer, add webservers or additional app servers. But it is important that you validate your architechture with your application first, depending on the traffic you are expecting.
In general its a good practice to use either relational or NoSQL database to handle authentication/client management. Ideally you should be looking at a seperate DB server for scalability and easier maintainance. You can use services provided by Amazon like RDS or of your choice (refer https://aws.amazon.com/running_databases/)
However if the setup is small you can use the MySQL DB available with ColdFusion's AMI
>Do you think session management is going to be a problem?
While using two webservers? I dont think so. You can also
1) have sticky sessions enabled
2) handle session using an elastic cache
BTW a web service should ideally be stateless.
>What about hosting my files in amazon S3? or just in the local web server?
Both are valid. ColdFusion AMI is EBS backed, so files would persist locally too. But do save a custom AMI for your purpose with all the configuration/local files.
>I think the current AMI with cold Fusion 10 is a good option.
Yes, even I think so
>I am kind of new to CF. Any advice or other considerations are welcome.
As a best practice when you are using your server in production, you should implement security lock down guide for CF10. It hardens your server against security attacks.
Thnaks,
Chandan Kumar