Destaques
Uma organização costumava ser apenas uma linha que só podia conter uma pessoa. Agora é uma página que você gerencia: convide um colega, atribua uma função e permita que ele crie chaves pagas pela empresa. O Proxy Finder também parou de responder "tentativas esgotadas" e começou a especificar o bloqueio encontrado, e o Browser passou a semana garantindo que conta a mesma história duas vezes para uma página.
O que há de novo
Organizações que você pode realmente gerenciar
Adicionar um colega costumava exigir o envio de um e-mail para nós, fazendo com que equipes comprassem duas assinaturas separadas.
Sua organização agora tem sua própria página no Dashboard, com três funções disponíveis. O proprietário mantém a assinatura cobrada pelas chaves, portanto existe exatamente um, e a propriedade é alterada por transferência. Administradores gerenciam uso, faturamento e membros. Membros utilizam os recursos. Os convites são enviados por e-mail e funcionam mesmo para quem nunca se cadastrou.
Qualquer pessoa em uma organização pode criar chaves pertencentes a ela e transferir uma chave pessoal para a organização, evitando que um desenvolvedor precise usar uma chave pessoal cobrada dele para trabalhos da empresa. O uso de uma chave da organização é faturado no plano do proprietário, e cada confirmação indica de quem é o plano cobrado. Qualquer membro pode renomear uma chave; regenerar, desativar e excluir continuam restritos a proprietários e administradores, pois essas ações interrompem o uso de todos os colegas imediatamente.
Um filtro de Proprietário funciona em Visão Geral, Métricas Detalhadas, Atividade Recente e na sua lista de chaves. Uso e Limites e Faturamento continuam pessoais, já que um membro não precisa visualizar a cota do proprietário.
Proxy Finder para de adivinhar
"Download maxTry limit reached" aparecia da mesma forma se todas as saídas estivessem bloqueadas, se todas estivessem inativas ou se tivéssemos buscado a página real e sua própria regra a tivesse descartado. Esses três casos exigem soluções completamente diferentes.
Uma tarefa com falha agora inclui attemptReport: quantas saídas nunca responderam, quantas foram recusadas por uma defesa reconhecida e quais fornecedores fizeram isso, quantas foram rejeitadas pelo seu validate.status e quantas retornaram HTTP 200 sem nenhuma defesa detectada, falhando apenas no seu validate.data. Uma frase de resumo simples acompanha essas informações.
Mas essa última contagem é a mais importante. Uma regra de conteúdo que não encontra correspondência parece idêntica a um bloqueio sob todos os ângulos que mediamos antes, e nenhuma nova tentativa resolverá isso. (Mais sobre como as regras de validação decidem o sucesso.)
A outra parte é o perfil. O Proxy Finder alternava saídas e nunca a assinatura do cliente, portanto, um site que recusasse um perfil de navegador o recusaria em todas as saídas do pool. Uma recusa agora altera o perfil em uma nova tentativa que já iria acontecer, mantendo inalterados os requests e créditos por tarefa. Fixe profile manualmente e nada muda. Nos alvos mais difíceis, vale lembrar, a saída utilizada ainda importa mais do que o perfil enviado.
Browser para de se contradizer
Pedir um User-Agent ao Browser costumava ser pior do que não pedir. Três camadas tinham, cada uma, sua própria ideia de quem era a request, então uma única request podia declarar Windows, Mac e uma versão que a frota nem estava executando, tudo ao mesmo tempo. Agora é um único valor, definido uma vez e mantido em todos os lugares: na inicialização, na página e nos workers que a página inicia.
Os Client Hints são derivados dessa string, portanto sec-ch-ua, a plataforma e navigator.platform concordam com ela. A response retorna a string exata que enviamos, o que é importante porque os cookies de liberação ficam vinculados à saída e ao User-Agent juntos. A validação do renderizador agora também responde da mesma forma no documento e em um worker, mais um dos sinais fracos que se acumulam.
Mais três melhorias foram implementadas juntas:
- O relógio acompanha a saída. O Browser é executado no fuso horário do país onde sua saída está localizada, de modo que uma página que renderiza horários locais exibe o que um visitante daquela região veria. Quando o país não é conhecido, o relógio não é alterado.
- O WebRTC permanece no mesmo caminho que todo o restante. Uma configuração de proxy cobre o que um navegador envia via TCP. O WebRTC não está nesse caminho, então uma página que solicita candidatos ICE a ele recebe uma resposta separada. O Browser desativa isso sempre que uma request utiliza uma saída.
- URLs com âncoras custam o que deveriam custar. Uma URL que terminava em
#reviewscostumava estourar o tempo limite em todas as tentativas. Agora ela voltou à velocidade normal.
Rotas mais baratas e um Dashboard com contagem precisa
A Imperva injeta seu script em páginas íntegras, não apenas em suas páginas de bloqueio, e o Auto não conseguia diferenciar as duas situações, escalando páginas válidas para um navegador sem necessidade. Em um site de aluguel de carros, isso custava 75 créditos e 27,5 segundos ao longo de seis tentativas; agora é apenas uma tentativa, 10 créditos e cerca de seis segundos e meio. Alguns sites fornecem uma sessão dentro do próprio bloqueio retornado a uma request sem sessão, e todas as quatro engines agora a reenviam imediatamente antes de escalar.
O card de créditos da Overview exibia tudo o que era consumido e rotulava como faturado. No modelo de cobrança por sucesso esses valores são diferentes, e a diferença é dinheiro real, então ambos estão no card: o valor faturado como o número principal e o consumido logo abaixo, por produto e no total. O card de Requests é dividido da mesma forma. Período e nível de detalhe também são controles separados agora, variando de 30 minutos a um ano, além de um intervalo personalizado, substituindo o seletor que exibia "1D" e abria trinta dias.
No Playground, o botão de transferência agora oferece o perfil da última response, para que uma request enviada com um perfil que você não digitou repita a versão que funcionou. Todos os parâmetros estão na referência da API.
Por baixo do capô
O Proxy Finder mantém mais histórico por host: 32 saídas em vez de uma dúzia. Em um teste A/B em produção, o desempenho foi equivalente em alvos fáceis e melhor nos difíceis, onde o tempo mediano para carregar uma página caiu de 5,5s para 3,8s, enquanto a latência em toda a frota permaneceu estável. Um alvo teve o comportamento oposto e ainda não sabemos o motivo, portanto ele terá uma medição dedicada.
Uma tarefa destinada a falhar vai falhar de qualquer maneira. A diferença é se você fecha o chamado em um minuto ou passa a tarde medindo a coisa errada.