Outra implementação de processamento de dados

Imagine uma ferramenta com a qual você pode transformar qualquer dado em ... qualquer dado.

O exemplo mais acessível é Imagens. E se eu quiser tirar uma foto de um determinado tamanho e colocar em algum lugar uma marca d'água (também de um determinado tamanho).

E aqui está um exemplo de como isso pode parecer :

imagem

PS: Este é um artigo de revisão; se for interessante, descreverei mais detalhadamente as abordagens.

Motivação


Recentemente, em novembro de 2018, eu precisava redimensionar uma foto ...

Os serviços online por causa de seus "recursos" (publicidade, uma interface estranha etc.) tornaram esse processo o mais doloroso possível.

As ferramentas padrão do Windows 10 não me pareciam óbvias. Eu tive que baixar o GIMP e de lá fazer tudo o que era necessário - para redimensionar a foto.

Em minha defesa:

  1. Hora da ocorrência do problema ~ 1:00 (01:00)
  2. Não havia laptop funcionando na mão
  3. O Windows é apenas para jogos. Agora, às vezes, escrevo código com um teclado da apple



E então outro programador decidiu criar outro osso ... Ferramenta.

Exigências


Esta ferramenta deve ser todas as muletas muletas:

  1. UI simples
  2. API simples
  3. Organização conveniente das entidades do projeto
  4. Botões e configurações mínimos
  5. A capacidade de implementar seus ... "padrões"
  6. Código aberto: back - end e front - end

E o mais importante - todo mundo que entende o que quer deve poder usá-lo.

Várias sequências possíveis:

  1. Imagem, Imagem menor, Filtro
  2. Faça o download do conteúdo da URL, deixe apenas o conteúdo útil, deixe apenas o texto
  3. Faça o download de uma imagem e determine se há algum objeto nela (correspondência de modelo)



Implementação


Lido recentemente sobre Habré É necessário crescer para microsserviços ... e decidiu seguir isso. Já houve algumas tentativas de fazer isso através de estruturas “bonitas” (na minha imaginação): cada função (como template_match , md5 ) é como um microsserviço otimizado para resolver sua tarefa. Como resultado, tudo chegará a isso, mas não hoje :)

Total disponível:

  1. Frontend sem papéis de parede bonitos
  2. API de back-end
  3. Aipo (no desenvolvimento local eu uso Redis, e no teste e prod RabbitMQ)
  4. Trabalhadores de back-end

Eu direi imediatamente: sou muito medíocre com o Frontend, no entanto, graças ao Stackoverflow e à pesquisa no Google.



Mais exemplos


Todos os exemplos podem ser encontrados aqui , eles são combinados em "projetos".

Um deles: extrair texto de uma página HTML



Atenção : o site funciona no modo somente leitura, mas o resultado será retornado para você. Ele não poderá salvar suas alterações no Project and Pipeline.

Uma pequena explicação


Uma lista do que pode transformar dados: aqui

O que este projeto não é:

  1. Data warehouse
  2. Mineiro de Bitcoin

O projeto é muito parecido com:

  1. Zapier
  2. Yandex Nirvana
  3. Parse.com (alguns anos comprados pelo Facebook)

Source: https://habr.com/ru/post/pt430880/


All Articles