Enterprise édition
Pipeline de sortie
NextPDF Enterprise coordonne l’exécution par lots à grande échelle des manifestes de pipeline de sortie de NextPDF Pro, avec une limite de concurrence configurable et un transfert de conformité optionnel sur les sorties terminées. C’est la couche de traitement par lots posée au-dessus du pipeline de sortie de Pro.
Disponibilité et licence
Section intitulée « Disponibilité et licence »Cette capacité est livrée dans NextPDF Enterprise (nextpdf/enterprise) et s’active avec une enveloppe de licence de palier Enterprise. Un déploiement sans ce droit ne charge pas les classes de la capacité. Comparer les éditions et obtenir une licence.
La surface de lot Enterprise s’appuie sur le pipeline de sortie de Pro (pro.output.pipeline), qui est un prérequis plutôt que la restriction d’accès. Il n’existe pas de code de capacité distinct par fonctionnalité ; l’orchestrateur de lot et le transfert de conformité sont disponibles partout où le paquet sous licence nextpdf/enterprise est installé.
Installation
Section intitulée « Installation »composer require nextpdf/enterprise:^3Aperçu conceptuel
Section intitulée « Aperçu conceptuel »BatchPipelineOrchestrator exécute de nombreuses instances de PipelineManifest en un seul lot. Chaque manifeste est exécuté via le PipelineExecutor de Pro ; l’orchestrateur ajoute la coordination du lot, une protection de ressources bornée (le nombre de manifestes par lot est plafonné), la gestion d’un délai d’expiration par lot et un transfert de conformité optionnel.
BatchPipelineConfig contrôle trois choses : le nombre maximal de rappels de workers concurrents, un délai d’expiration global de lot optionnel exprimé en millisecondes, et le fait qu’un contrôle de conformité s’exécute ou non sur chaque sortie après la fin du pipeline. Quand le contrôle de conformité est activé, ComplianceHandoff s’intègre comme une étape du pipeline qui revalide chaque PDF dérivé à travers la passerelle de conformité Enterprise, de sorte qu’un document modifié par le pipeline est revérifié plutôt que tenu pour acquis depuis son état antérieur à la modification.
Dans les déploiements de production, la répartition parallèle des workers et la contre-pression sont gérées par un sidecar d’exécution distinct ; l’orchestrateur PHP décrit ici fournit la coordination du lot et la logique de transfert de conformité, et il est invoqué par le worker de jobs plutôt que directement par les gestionnaires de requêtes.
Pourquoi ça fonctionne ainsi
Section intitulée « Pourquoi ça fonctionne ainsi »La génération par lots à haut volume se scinde en deux préoccupations : coordonner quels manifestes s’exécutent sous quelles garanties, et piloter le débit parallèle brut. NextPDF conserve la sémantique de coordination et de conformité dans cet orchestrateur PHP déterministe, et délègue la répartition parallèle des workers et la contre-pression à un sidecar d’exécution distinct. Cette frontière permet à la couche de débit de faire évoluer la concurrence indépendamment tandis que l’orchestrateur reste simple, borné et auditable. Un plafond strict de manifestes par lot maintient le pic de mémoire prévisible, de sorte qu’une seule soumission volumineuse ne peut pas dégrader le pool de workers. Le transfert de conformité revalide chaque sortie dérivée au lieu de se fier à son état antérieur à la modification, et échoue de façon fermée. Un manifeste terminé ne passe que lorsque la passerelle confirme la conformité, jamais par défaut.
Contexte de conception : Génération de documents à haut volume.
Surface d’API
Section intitulée « Surface d’API »| Classe | Responsabilité |
|---|---|
BatchPipelineOrchestrator | Exécute de nombreux manifestes en lot avec une concurrence bornée. |
BatchPipelineConfig | Concurrence maximale, délai d’expiration du lot, bascule de conformité à la fin. |
BatchPipelineResult | Agrégat : résultats par manifeste, nombres de terminés et d’échoués, chronométrage. |
ComplianceHandoff | Étape de revalidation de conformité optionnelle en fin de pipeline. |
Exemple de code — Démarrage rapide
Section intitulée « Exemple de code — Démarrage rapide »use NextPDF\Enterprise\OutputPipeline\BatchPipelineOrchestrator;
$result = (new BatchPipelineOrchestrator($executor))->executeBatch($manifests);Exemple de code — Production
Section intitulée « Exemple de code — Production »use NextPDF\Enterprise\OutputPipeline\BatchPipelineOrchestrator;use NextPDF\Enterprise\OutputPipeline\BatchPipelineConfig;
$config = new BatchPipelineConfig( maxConcurrency: 4, timeoutMs: 600_000, complianceCheckOnComplete: true,);
$result = (new BatchPipelineOrchestrator($executor, $config)) ->executeBatch($manifests, $variablesMap);
$logger->info('pipeline.batch', [ 'completed' => $result->completedCount, 'failed' => $result->failedCount,]);Cas limites et pièges
Section intitulée « Cas limites et pièges »- Le lot impose une borne supérieure au nombre de manifestes ; la dépasser déclenche une erreur de protection de ressources plutôt qu’une dégradation silencieuse.
- Un délai d’expiration global de zéro signifie aucun délai d’expiration de lot ; en production, fixe une valeur finie pour qu’un manifeste bloqué ne puisse pas bloquer le lot indéfiniment.
- Le transfert de conformité exige un PDF reconnaissable dans la sortie de l’étape amont ; s’il n’en trouve aucun, l’étape signale un échec pour ce manifeste plutôt que de passer silencieusement.
- Ce module dépend du pipeline de sortie de Pro ; il ajoute la coordination du lot, pas un nouveau modèle d’étape.
Performance
Section intitulée « Performance »Le débit évolue avec la concurrence configurée et le coût par manifeste. La concurrence doit être réglée de manière prudente par rapport au pool de workers afin que les rappels ne le saturent pas. Le plafond de manifestes par lot borne le pic de mémoire.
Notes de sécurité
Section intitulée « Notes de sécurité »L’orchestrateur de lot traite les manifestes et les variables que l’appelant fournit ; traite les entrées du pipeline comme tu traiterais n’importe quelle autre charge PDF non fiable. Le transfert de conformité est une aide à la revalidation, pas un contrôle d’autorisation.
Résidence des données et atténuations des données personnelles
Section intitulée « Résidence des données et atténuations des données personnelles »Les sorties de lot peuvent contenir des données personnelles. Le traitement est en cours de processus et local ; cet orchestrateur n’effectue aucun appel réseau sortant. Applique tes propres contrôles de rétention aux sorties de lot.
Télémétrie sûre et nettoyage des journaux
Section intitulée « Télémétrie sûre et nettoyage des journaux »Les résultats de lot indiquent des décomptes et du chronométrage, pas le contenu des documents. Nettoie les identifiants de manifestes dans les journaux s’ils encodent des données de locataire ou de dossier.
Conformité
Section intitulée « Conformité »Aucune conformité à une norme n’est revendiquée pour ce module ; c’est une couche d’orchestration. Le transfert de conformité optionnel s’en remet à la passerelle de conformité Enterprise, qui porte ses propres références.
Comportement en mode FIPS
Section intitulée « Comportement en mode FIPS »Ce module n’effectue aucune opération cryptographique.
Modèle de menace
Section intitulée « Modèle de menace »Les entrées principales sont les manifestes et les variables fournis par l’appelant. Atténuations : un plafond strict de manifestes par lot, une concurrence bornée, la revalidation optionnelle des sorties dérivées, et aucune E/S réseau dans l’orchestrateur lui-même.
Contrat de comportement
Section intitulée « Contrat de comportement »executeBatch()exécute chaque manifeste via l’exécuteur de pipeline de Pro et renvoie les résultats par manifeste avec les nombres de terminés et d’échoués et le chronométrage.- Un plafond strict borne le nombre de manifestes par lot ; le dépasser déclenche une erreur de protection de ressources plutôt qu’une dégradation silencieuse.
- Un délai d’expiration global de zéro signifie aucun délai d’expiration de lot ; une valeur finie borne un manifeste bloqué.
- Lorsqu’il est activé, le transfert de conformité revalide chaque PDF dérivé et signale un échec d’étape lorsqu’aucun PDF reconnaissable n’est trouvé en amont, plutôt que de passer silencieusement.
Frontière de publication
Section intitulée « Frontière de publication »Cette page documente uniquement le comportement observable de l’extérieur et la surface d’API publique prise en charge. Les chemins d’espace de noms internes, les classes utilitaires, les tables de mécanismes, les noms de fichiers de runbook et les préfixes de tickets sont hors périmètre.
Repli Core
Section intitulée « Repli Core »NextPDF Core n’a aucun modèle de pipeline de sortie. Un déploiement Core uniquement compose ses propres étapes directement contre l’API Core ; il n’y a ni manifeste, ni coordination de lot, ni transfert de conformité.
Repli Pro
Section intitulée « Repli Pro »Dans un déploiement Pro uniquement, la surface prise en charge est le pipeline de sortie de Pro à manifeste unique (pro.output.pipeline) : le PipelineExecutor de Pro exécute un manifeste à la fois. Pro ne fournit pas l’orchestrateur de lot, la protection de lot à concurrence bornée, le délai d’expiration par lot, ni le transfert de conformité Enterprise ; une configuration qui demande l’orchestration par lots ou le transfert de conformité dans un déploiement Pro uniquement n’a aucun composant Enterprise pour la satisfaire. Voir l’aperçu Pro pour la surface du pipeline de Pro.
Note sur la frontière Enterprise
Section intitulée « Note sur la frontière Enterprise »La coordination du lot, les bornes de protection de ressources et le câblage du transfert de conformité sont décrits au seul niveau du comportement. Le protocole interne de répartition du sidecar, la sémantique interne de contre-pression et le câblage interne de la passerelle de conformité sont hors du périmètre de la surface publique et ne sont pas reproduits ici.
Frontière de déploiement
Section intitulée « Frontière de déploiement »En production, la répartition parallèle des workers et la contre-pression sont gérées par un sidecar d’exécution distinct ; l’orchestrateur PHP décrit ici fournit la coordination du lot et la logique de transfert de conformité, et il est invoqué par le worker de jobs, pas directement par les gestionnaires de requêtes. Le dimensionnement du pool de workers, le provisionnement du sidecar et les limites de concurrence par rapport au pool de workers PHP relèvent de la responsabilité de l’opérateur. Le transfert de conformité est une aide à la revalidation, pas un contrôle d’autorisation.
Frontière de conformité légale
Section intitulée « Frontière de conformité légale »Le transfert de conformité optionnel ré-exécute une passe de validation sur les documents dérivés. Il signale des constats ; il ne certifie pas un document, ne garantit pas une suffisance réglementaire et ne constitue pas un conseil juridique. Juger si une sortie satisfait tes obligations relève de ta responsabilité.
Voir aussi
Section intitulée « Voir aussi »- Pipeline de sortie (référence Enterprise) — la référence d’API de l’orchestrateur de lot.
- Aperçu Pro — le pipeline de sortie sous-jacent.
- Aperçu Enterprise
- Matrice des fonctionnalités Core vs Pro vs Enterprise