Pular para o conteúdo
getnextpdf.com

Premium edição

Para líderes de engenharia

Você está avaliando uma dependência comercial com a qual sua equipe vai conviver por anos. Esta página responde às perguntas que líderes de engenharia nos fazem antes de comprar: esforço de integração, política de atualização, aprisionamento, entrega, evidência de qualidade e superfícies de escala. Toda afirmação é verificável no código-fonte do produto ou vinculada à página de documentação que é dona dela. O NextPDF não possui nenhuma certificação de terceiros, e nada aqui é uma alegação de conformidade ou certificação.

Este guia abrange as duas edições comerciais — NextPDF Pro (nextpdf/pro) e NextPDF Enterprise (nextpdf/enterprise); consulte a matriz de recursos para a disponibilidade por edição. Ambas são ativadas com um envelope de licença; uma implantação sem o direito correspondente não carrega as classes premium dessa edição. Compare as edições e obtenha uma licença.

As edições são cumulativas. O NextPDF Pro inclui tudo o que há no core aberto, e o NextPDF Enterprise inclui tudo o que há no Pro. Várias superfícies abaixo são entregues na camada Pro (nextpdf/pro), então o Enterprise também as possui.

A versão de 30 segundos. O NextPDF é um motor PDF 2.0 para PHP moderno; o formato que ele escreve é o especificado pela ISO 32000-2. O motor core é de código aberto sob a Apache License 2.0. O NextPDF Pro e o NextPDF Enterprise são as edições comerciais proprietárias sobre ele — gráficos, códigos de barras avançados, assinatura, ferramentas de conformidade, operações de documento e as superfícies de escala descritas abaixo. Consulte a matriz de recursos completa para a divisão por edição.

Para sua equipe, a compra adquire três coisas. Primeiro, capacidades que seriam caras de construir e manter internamente. Segundo, um padrão de engenharia que você pode inspecionar: PHPStan nível 10, restrições de arquitetura e uma suíte de testes muito grande. Terceiro, um lado negativo limitado — e os três estados de saída são distintos. Uma implantação pelo canal ionCube que fique offline além de sua concessão pausa os recursos premium e retorna ao Core livre e de código aberto até reconectar. Uma assinatura vencida passa por um período de carência até o fallback perpétuo: a versão instalada continua rodando com seu direito premium, sem atualizações adicionais. E uma falha de aplicação nunca inutiliza uma implantação — o pior caso é o comportamento do Core. A mecânica comercial vive em Compra e licenciamento.

“Quanto esforço de integração devo prever no orçamento?” Um pacote Composer e uma licença. As edições premium são instaladas com composer require nextpdf/pro ou composer require nextpdf/enterprise conforme sua edição (o metapacote nextpdf/premium instala ambas) a partir de um repositório privado, usando credenciais emitidas após a compra. O requisito de runtime é PHP >=8.4 <9.0. A adoção não exige nenhuma mudança no código da aplicação: o Premium se conecta por trás dos mesmos contratos públicos que sua aplicação já usa, como documentado em Licenciamento e ativação. A configuração é abordada em Instalar e autenticar.

“O que quebra quando atualizamos?” Mudanças que quebram compatibilidade existem, e nós as documentamos em vez de escondê-las. O repositório Premium rastreia cada mudança com impacto de BC em notas de atualização por release com um caminho de migração, e sua toolchain inclui o roave/backward-compatibility-check. Algumas quebras são deliberadas: os caminhos de validação de segurança são apertados para fail-closed em vez de deixados permissivos, e as notas dizem isso explicitamente. Preveja no orçamento a leitura das notas de atualização antes de cada release; não preveja desvio silencioso de comportamento.

“Estamos aprisionados?” A saída é estrutural, não uma boa vontade contratual. O core é Apache-2.0, então sua integração usa contratos que sobrevivem sem uma assinatura. Quando uma assinatura paga termina, há um período de carência e depois um estado de fallback perpétuo: a versão instalada continua rodando, e apenas atualizações e suporte param. Você nunca fica bloqueado de um software que já implantou. Os detalhes estão em Licenciamento e ativação e no modelo de licenciamento.

“Minha equipe pode ler o código que executamos?” Sim, no canal certo. O Premium é entregue de duas formas: codificado em ionCube (o padrão de menor custo) e código-fonte assinado em texto claro — PHP legível, assinado criptograficamente, com preço mais alto. Ambos carregam direitos de licença idênticos, e código legível nunca é permissão para copiar ou redistribuir; o EULA rege ambos. A comparação completa está em Dois canais de entrega.

“Quais sinais de qualidade eu posso realmente verificar?” A base de código Premium é desenvolvida em PHPStan nível 10 com a extensão de regras estritas em todo o código-fonte do Pro e do Enterprise, além de restrições de camada de arquitetura do Deptrac. O repositório carrega mais de 1.500 arquivos de teste entre suítes unitárias, de integração, de conformidade e de compliance, e seus scripts de teste de mutação impõem um mínimo de 95% de pontuação de mutação. Estes são fatos do repositório de desenvolvimento que você pode confirmar no canal de código-fonte assinado — não são auditorias de terceiros nem certificações.

“Quais são as superfícies de desempenho e escala?” Três, e todas são camadas opcionais em vez de reescritas. O accelerator é um sidecar em Rust consumido por meio das interfaces de contrato do Core. O output pipeline (NextPDF\Pro\OutputPipeline\PipelineExecutor) executa manifestos de documento de várias etapas com resolução de dependências. O stream engine renderiza lotes concorrentes de forma determinística:

public function renderBatch(array $manifests, array $variablesByJobId = []): array

O NextPDF\Pro\Stream\Engine\ConcurrentRenderEngine restaura a ordem de entrada, de modo que os bytes de saída correspondam a uma renderização sequencial independentemente da concorrência. Ele falha com NextPDF\Pro\Stream\Exception\RenderEngineException em uma conclusão ausente, duplicada ou desconhecida — nunca um descarte silencioso. Não publicamos números de benchmark aqui; faça o benchmark da sua própria carga de trabalho durante o teste.

“O accelerator cria uma dependência rígida de código nativo?” Não. O sidecar é conectividade opcional, e o provider relata a disponibilidade em vez de lançar exceção:

public function isAvailable(): bool
public function embedding(): EmbeddingServiceInterface
public function vectorIndex(string $collectionId = 'default'): VectorIndexInterface

Esses métodos não declaram nenhum @throws; a acessibilidade do sidecar é relatada por isAvailable(). Os tipos retornados são interfaces de contrato do Core (NextPDF\Contracts\EmbeddingServiceInterface, NextPDF\Contracts\VectorIndexInterface), que é, na prática, a costura sem mudança de código.

“O que acontece offline ou em ambiente isolado (air-gapped)?” Depende do canal, e este costuma ser o fator decisivo. O canal ionCube verifica sua licença online — aproximadamente uma checagem a cada 7 dias renovando uma concessão de cerca de 14 dias. Offline além da concessão, os recursos premium pausam e o motor retorna ao Core livre, retomando quando a conectividade volta. O canal de código-fonte assinado verifica sua licença localmente e roda totalmente offline, inclusive em ambiente isolado. Consulte Dois canais de entrega.

“O que a verificação de licença envia?” No canal ionCube, uma checagem envia apenas um identificador de licença e um hash de fingerprint com salt — nunca o conteúdo dos seus documentos. Uma implantação de código-fonte assinado totalmente offline não envia absolutamente nada. A superfície de decisão de licença é um único avaliador público que sua equipe de plataforma pode compreender:

public function evaluate(?LicenseKey $license, ?DateTimeImmutable $now = null): EntitlementResult

Ele não declara nenhum @throws; todo estado de licença, incluindo a ausência total de licença, mapeia para um EntitlementResult em vez de uma exceção.

“Quem nos dá suporte, e como começamos?” Ajuda de produto e técnica vem do suporte PATEON; cobrança, faturas e reembolsos são tratados pelo nosso Merchant of Record — veja quem contatar. Você pode iniciar um teste gratuito de 14 dias na sua conta, ou solicitar uma concessão de avaliação que roda o conjunto completo de recursos por trás de uma marca d’água removível.

Um honesto pode e não pode, com a página que é dona de cada fato.

Seu requisitoO NextPDF atende?Evidência e responsável
Runtime PHP modernoSim — requer PHP >=8.4 <9.0. Versões anteriores do PHP não são suportadas.Produto composer.json; Instalar e autenticar
Empacotamento padrãoSim — pacotes Composer privados: nextpdf/pro ou nextpdf/enterprise por edição (nextpdf/premium instala as duas camadas), com credenciais emitidas após a compra.Compra e licenciamento
Adotar sem reescritaSim — sem mudança no código da aplicação; o Premium resolve por trás dos contratos do Core que você já chama.Licenciamento e ativação
Padrão de análise estáticaSim — desenvolvido em PHPStan nível 10 com regras estritas em todo o código-fonte do Pro e do Enterprise.Produto phpstan.neon.dist
Disciplina de testesSim — mais de 1.500 arquivos de teste; teste de mutação com barreira de 95% de MSI mínimo nos scripts do repositório.Scripts do composer.json do produto e a árvore de testes
Governança de BCParcialmente — quebras de BC acontecem e são deliberadas para correções de segurança fail-closed; cada uma é documentada com um caminho de migração.Produto UPGRADING.md
Operação em ambiente isolado (air-gapped)Sim no código-fonte assinado; o canal ionCube é limitado por sua concessão de ~14 dias.Dois canais de entrega
Código-fonte legívelSim — apenas no canal de código-fonte assinado, a um preço mais alto; ler não é direito de redistribuição.Dois canais de entrega, EULA
Certificação formalNão. O NextPDF não possui nenhuma certificação e não concede nenhuma; suporte a um padrão não é conformidade nem certificação.Esta página; modelo de licenciamento
Exigência de aceleração nativaNão exigido — o sidecar em Rust é opcional; controle por ProAcceleratorProvider::isAvailable().Código-fonte do produto, mostrado acima
  • Vencimento da concessão ionCube. Uma implantação pelo canal codificado que fique offline além de sua concessão pausa os recursos premium e retorna ao Core, retomando ao reconectar. Se sua postura de rede não puder garantir conectividade periódica, escolha o canal de código-fonte assinado em vez disso.
  • Quebras de BC deliberadas. A validação relevante para segurança é apertada para fail-closed entre releases. Fixe versões, leia as notas de atualização antes de cada bump e execute uma checagem de BC no CI. Não trate atualizações como drop-in.
  • Sem certificação. Declaramos capacidades, nunca certificação. Se seu programa exige conformidade certificada, valide a saída com suas próprias ferramentas de aceitação antes de confiar nela — nenhuma página de documentação do NextPDF substitui isso.
  • O desempenho depende da carga de trabalho. O ionCube Loader adiciona uma sobrecarga de decodificação, geralmente pequena; não publicamos nenhum benchmark universal. Faça o benchmark dos seus próprios documentos durante o teste antes de se comprometer com um canal.
  • A saída de avaliação leva marca d’água. As builds de avaliação rodam cada capacidade, mas marcam sua saída de forma visível; elas não são adequadas para entrega em produção. Uma licença paga remove a marca d’água sem mudança de código.
  1. Inicie um teste. Um teste gratuito de 14 dias está disponível na sua conta — um por e-mail, sem cobrança hoje, e não renova automaticamente. Planeje o requisito do ionCube Loader gratuito nas builds codificadas, inclusive no CI.
  2. Rode um piloto delimitado. Instale via Composer, integre um fluxo de documento real por trás de seus contratos existentes, execute sua suíte de testes e faça o benchmark da sua carga de trabalho. A avaliação roda o conjunto completo de recursos por trás da marca d’água removível, então nada fica oculto na análise.
  3. Escolha um canal de entrega. Decida entre codificado em ionCube e código-fonte assinado usando seus requisitos de conectividade e auditoria — veja Dois canais de entrega.
  4. Solicite seu envelope de licença. A compra passa pelo nosso Merchant of Record; sua licença é concedida pela PATEON sob o EULA. Comece em o portal de licenças.