Hello everybody,
I’m creating a video modifying web site and constructing the backend with Go. Whereas most options are working, I’m working into just a few technical challenges:
- Video Processing with Go:
I’m utilizingffmpeg-go
to deal with video processing duties like trimming, merging, and including transitions. Nonetheless, the processing time for bigger movies is considerably increased than anticipated. Is there a technique to optimize video processing with Go, or ought to I think about a distinct method, equivalent to working FFmpeg duties in parallel? - Actual-Time Video Previews:
I’d wish to generate real-time video previews (e.g., after a person applies a filter or makes an edit). Is Go appropriate for dealing with such duties effectively, or would I want to dump this to a specialised service? If Go can deal with it, what libraries or patterns would you advocate? - Dealing with Massive File Uploads:
Customers typically add massive video recordsdata (generally exceeding 2GB). I’m utilizing a Go-based server with a multipart kind handler, however uploads sometimes fail for bigger recordsdata, particularly on slower connections. What’s the easiest way to deal with massive file uploads in Go whereas guaranteeing reliability and efficiency? - WebSocket Integration for Progress Updates:
I’ve carried out WebSockets to inform customers concerning the progress of their video processing duties, however the updates are inconsistent. Generally the server stops sending progress updates mid-task. Is there a recognized subject with Go’s WebSocket libraries, or may this be an issue with my implementation? - Optimizing API for Frontend:
My frontend (constructed with React) steadily interacts with the Go backend to fetch video metadata and replace edits. The API calls are rising in latency as extra customers be a part of the platform. How can I optimize my Go APIs to deal with excessive visitors whereas sustaining quick response occasions?
I’d love to listen to solutions, finest practices, or examples from anybody who has expertise constructing video-heavy platforms with Go. Any assist can be drastically appreciated!
Thanks prematurely!
Is there anybody who may help me with this? I might love your steering. Thanks!
I’ve not examined this, however in idea it ought to work.
- Create a S3 object storage (not solely AWS supply this)
- Add paperwork to your S3 bucket
- Retailer the trail and metadata in a RDBMS
S3 Object storage can deal with TB and it might be doable to make use of gRPC for streaming?
Level 5 is principally what I’m good at and plainly there’s something simply not proper. What number of customers does the web site have? Even with out optimisation your backend ought to be capable to serve lots of connections and customers.
Whether it is “your private webseite” there shouldn’t be this downside in any respect, go is simply naturally already quick.
Additionally you will have WebSockets built-in and nonetheless lots of API calls. (There may be too much less data to guage this, however perhaps thats one thing to consider)
Lastly your github account has a distinct particular person and perhaps persons are not writing right here; they assume you’re a bot