I am thinking of implementing a service on the amazon cloud. Basic idea is:
- client has some files (client can be on a the user's amazon cloud, or on a regular machine)
- files are uploaded to a machine on the cloud, along with开发者_如何学C instructions for how to process the files
- cloud machine performs the file processing
- output file(s) are sent back to the client
Ideally I wouldn't want my service to run at all unless someone is requesting its use. Also, if many clients want to use it, I want to spawn more machines to run my service. Does this mean that I should implement my own server (off-cloud), that the client should first connect to, and my server would spawn some cloud machines and let the client know that cloud machine's IP address?
What is the best way to transfer files to the cloud? Is FTP a good solution? What if the client's file are on Amazon S3 cloud, should I use the S3 cloud interface for the file transfer?
Interesting..
You need the following:
- Auto-scaling - to spawn one or more servers + remove them when not in use. http://www.techmasala.com/2009/04/06/dynamically-scale-web-applications-in-amazon-ec2/
- Amazon S3 for transferring and storing files - 99% redundancy + distributed. RequestTimeout uploading to S3 using PHP
I would suggest you to use S3FS where you can mount a bucket as a drive on a machine and the rest (uploading to the actual bucket) will be taken care by the FS command.
精彩评论