Description du projet
TraduitSpécifiquement, le service doit couvrir trois grandes familles. Les documents de bureau et textes doivent se convertir entre eux et vers/depuis PDF. Les images doivent se traduire entre des formats raster et vectoriels courants, y compris multipages. L'audio et la vidéo doivent se convertir entre des conteneurs et codecs courants, y compris l'extraction audio à partir de la vidéo. Ce n'est délibérément pas un CDN d'images qui redimensionne simplement des photos à la volée, et pas un transcoder vidéo étroit ; le but est une conversion large de plusieurs à plusieurs entre documents, images et médias via une interface unique et unifiée.
Le travail doit être asynchrone car certaines tâches prennent des secondes et d'autres prennent des minutes. Nous attendons une API REST pour la soumission de tâches et l'obtention d'un ID, une file d'attente et un pool de travailleurs qui traitent les tâches sans bloquer l'appelant, la capacité de vérifier le statut, et un rappel webhook à l'achèvement ou en cas d'erreur avec un corps de requête signé. Intégrez des limites raisonnables, des messages d'erreur clairs pour les entrées non prises en charge ou corrompues, et un simple redimensionnement horizontal des travailleurs. Nous fournirons des fichiers de test pour chaque famille de formats et attendons un court guide d'opérations.
— Points de terminaison REST pour la soumission de tâches, vérification de statut et téléchargement de résultats
— File d'attente asynchrone avec pool de travailleurs et réessai en cas d'échecs transitoires
— Rappels webhook signés en cas de succès et d'erreur
— Support pour les familles de formats : documents, images, audio et vidéo
— Limites de taille de fichier et limites de taux de requêtes, erreurs claires pour les mauvaises entrées
— Déploiement Docker et bref guide d'opérations