Cho mình hỏi Streaming videos như mấy kênh tivi vtv1 mà mấy trang có ?
Nếu ít người thì bạn chỉ cần server nginx có cài đặt nginx các streaming module cần thiết và kết hợp sử dụng ffmpeg để convert qua lại giữa các định dạng mediastream. Tham khảo: https://www.digitalocean.com/community/tutorials/how-to-set-up-a-video-streaming-server-using-nginx-rtmp-on-ubuntu-20-04
Nếu nhiều người sử dụng thì bạn cần tính toán làm sao để có thể distribute được media server thay vì tập trung như ở trên. Ví dụ sử dụng thư viện mediasoup kết hợp ffmpeg. Mediasoup là một mediaserver có performance rất tốt và có nhiều phương thức hỗ trợ pipe mediastream sang các server khác để giảm tải cho server chính. Ngoài ra mediasoup còn cực kỳ mạnh mẽ cho nhiều mục đích sử dụng.
Thông tin về ffmpeg là một phần mềm hỗ trợ bạn convert tất cả các định dạng video, audio qua lại. Ví dụ khi sử dụng với mediasoup thì mediasoup sẽ xuất ra định dạng rtsp nhưng bạn có thể convert nó qua thành rtmp để phát trên các thiết bị hỗ trợ rtmp.
Tham khảo: https://mediasoup.org/
Tóm tắt lại thì để làm được một hệ thống streaming thì cần rất nhiều kiến thức về media encoder, mediastream protocol,...
Còn VTV theo mình biết thì họ đang sử dụng luôn hệ thống mediastream của AWS. Bạn có thể lên tham khảo tại https://aws.amazon.com/solutions/implementations/live-streaming-on-aws/
Hỏi về tối ưu messenger chat trong vuejs
Chỗ import bạn sử dụng dynamic import xem sao.
Upload file lên GCP nhưng bị memory leak
Bạn tách phần release ở chỗ handle finish ra thành 1 hàm gọi là release() {...}. Rồi gọi trong cả các chỗ bị error. Ngoài ra bạn kiểm tra kỹ lại xem on('finish') có đúng khi sử dụng trong trường hợp này không.
Làm sao để update khi có sự thay đổi trong CSDL?
Bạn cần tìm hiểu về các cơ chế đồng bộ thời gian thực. Nếu .NET thì có signalR còn phổ biến hơn thì có Websocket. https://learn.microsoft.com/en-us/aspnet/signalr/overview/getting-started/tutorial-getting-started-with-signalr-and-mvc
Ckeditor trên Django + React gặp lỗi
Đường dẫn trên là relative by origin của server. Bạn cần check xem http or https://server_ip:port/path_to_file xem thực sự tồn tại chưa. Nếu bạn đang upload qua 1 server có origin khác thì cần rewrite đè config upload file của ckeditor và append server_ip:port tương ứng nhé. Ví dụ: dijango để ở ip 172.0.0.1, react thì ở 172.0.0.2 thì cần handle để file có đường dẫn tuyệt đối like http://172.0.0.1:port/path_to_file vì 172.0.0.1 là ip của server dijango nơi chứa ảnh chứ không phải react.
Lỗi Error in rconfigure() method java.rmi.ConnectException: Connection refused to host: 192.168.xxx.xx; nested exception is: java.net.ConnectException: Connection timed out: connect
Bị refuse connection thường là do thằng firewall nhé bạn. Bạn có thể tạo rule cho nó hoặc tốt nhất nếu chưa hiểu về firewall thì disable luôn. Mình có 2 link hướng dẫn disable trên linux và windows ở dưới để bạn tham khảo. https://linuxconfig.org/how-to-enable-disable-firewall-on-ubuntu-20-04-lts-focal-fossa-linux https://support.microsoft.com/en-us/windows/turn-microsoft-defender-firewall-on-or-off-ec0844f7-aebd-0583-67fe-601ecf5d774f
Cách tìm ra api chạy nhanh nhất
Bạn sử dụng
Promise.race([promise1, promise2, promiseN])
Hàm này sẽ nhận vào danh sách các promise thằng nào resolved nhanh nhất thì sẽ lấy giá trị của thằng đó nhé. Như vậy là bạn có thể call cả 3 API cùng lúc rồi add nó vào 1 array chứa rồi dùng Promise.race. Cách hoạt động giống như đua xe đó. Xem thêm tại https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/race
[Thảo luận] Tại sao mongodb họ lại bắt tạo replica set thì mới cho sử dụng transaction?
Về cơ bản thì MongoDB ban đầu không sinh ra cho mục đích thực hiện các transaction nên không có hoạt động theo chiến lược OLTP. Chính vì thế để MongoDB hỗ trợ các trạng thái của transaction thì cần có một Replica đóng vai trò là rollback point nếu transaction fail hoặc là commit point nếu transaction complete.
hỏi về cách upload image trong tinymce
Theo mình đó chỉ là một trình chỉnh sửa văn bản thuần túy. Nó không hỗ trợ phương thức để lưu trữ nội tại. Vì nó không có backend. Vậy nên khuyên bạn theo hướng choose file từ tinymce sau đó gửi HTTP Request upload file đó lên server và handle đường link tới file sau khi upload. Xem thêm tại: https://www.tiny.cloud/docs/general-configuration-guide/upload-images/#imageuploaderoptions
Bị cảnh báo spam khi đăng bài viết
Có vẻ nội dung của bạn ngắn quá(Dưới 1 phút đọc)
Các kĩ năng
Tổ chức
Chưa có tổ chức nào.