AWS-based file synchronization service system architecture
In view of the fact that resources on Web services can be identified through their URLs and adopt a stateless client-server architecture, the development team can be an inter-department, enterprise, you can also create an application to complete file sharing and synchronization.
Describes the core architecture of the file sharing and synchronization platform that leverages AWS for scalability and cost effectiveness.
1. The file synchronization service endpoint is Elastic Load Balancer, which distributes incoming requests to a group of Application Servers Based on AmazonElastic Compute Cloud (Amazon EC2) instances. Based on application requirements, Auto Scaling can automatically adjust the number of AmazonEC2 instances.
2. to upload a file, the client first needs to request the Service Permissions and Security token.
3. After checking the user identity, the app server obtains a temporary credential from the AWSSecurity Token Service (STS), which allows the user to upload files.
4. users upload files to Amazon Simple Storage Service (Amazon S3). Amazon S3 can easily store and retrieve any amount of data at any time.
5. The description data, version information, and unique identifier of the file are stored in the table of AmazonDynamoDB through the application server. As the number of files maintained by the application increases, Amazon DynamoDB can increase accordingly to access any amount of data and serve any traffic level.
6. file change notifications can be sent to users via Amazon Simple Email Service (Amazon SES) via Email. This is an easy-to-use and low-cost Email Solution.
7. other clients share the same file and query the service endpoint to check whether any updated version is available. The local file checksum for this query is compared with the file checksum listed in the mazon DynamoDB table. If a new file is found, the service endpoint can retrieve the file from Amazon S3 and send it to the client application.
This article permanently updates the link address: