The purpose of this Python application is to enable users to generate karaoke anytime, anywhere, by downloading videos from YouTube and extracting their accompaniments. The server is hosted on AWS EC2.
Due to the utilization of Tensorflow in a model within the Python application, a substantial amount of computational capacity is required, leading to elevated demands on system memory. Many platforms may not provides enough support to theses requirements.
I conducted a comprehensive analysis of the AWS EC2 offerings and, based on my assessment of the computing platform's breadth and depth, I selected the optimal instance to meet the requirements of my application workload.
When running locally, the functionality of the application, including search, download, and accompaniment splitting, is operational. However, there are operational challenges when utilizing the application on the EC2 platform.
I monitored real-time CPU and RAM usage through the "htop" command on my EC2 Ubuntu machine. Additionally, I employed try-except blocks to capture and assess any error messages.
At times, users may opt not to wait for the generator's processing. If the server continues to process requests from users who have already closed their browsers, it may lead to traffic-related challenges.
Upon submitting a request to generate music, the browser will generate a unique identifier and add it to the queue. If the browser is about to unmount, the unique identifier will be removed from the queue accordingly.
I am now looking for new software developer job
Feel free to contact me via below button