Por que o assistente de arquivos do WeChat não é ponto a ponto?

1. Fenômeno

        Desde o uso diário do assistente de arquivo WeChat, toda vez que transfiro um arquivo do computador para o celular por meio do assistente de arquivo, descubro que o arquivo é primeiro transferido para o servidor e depois transferido do servidor para o celular após a conclusão. Levou duas horas para carregar e baixar. Por que o celular não pode iniciar o download ao fazer upload no lado do PC, e o servidor cria uma fila de pipeline para processar os dados de streaming de maneira FIFO e cria uma cópia dos dados e os armazena no servidor, para que o acesso em tempo real aos dados pode reduzir o tempo pela metade?

2. Análise

  1. O autor supõe que o método de transferência de arquivos
            é transferir arquivos de maneira segura por meio do protocolo TCP. Antes da transmissão, o arquivo precisa ser pré-processado e dividido em pacotes individuais, carregado no servidor com uma determinada estratégia, como uma janela deslizante, e retransmitido se os dados forem perdidos. O servidor classifica os pacotes pelos bits de sinalização e, finalmente, remove o revestimento do protocolo e reúne os dados.
  2. O servidor de tarefas no lado do servidor
           obtém os dados do cliente como receptor e os sincroniza com outras extremidades como remetente. No momento, o WeChat suporta apenas um terminal de PC e um terminal móvel para fazer login. Na verdade, o servidor atua como intermediário e salva uma cópia do arquivo.
  3. Por que não transmitir sincronizadamente (o conteúdo a seguir é apenas inferência)
    assuma as seguintes funções: Cliente A <=> Servidor S <==> Cliente B
            ① O servidor precisa manter uma série de filas de cache, se A->S->B , B está bloqueado, o que afetará o upload de A;
            ② O servidor precisa estabelecer um mecanismo de proxy P2P para lidar com as duas retransmissões de erro de A->S e S->B: se A->S falhar, A precisa retransmitir, A->S é bem-sucedido, mas S->B falha, então S pode pegar o cache da cópia e passá-lo para B
            ③ O servidor precisa salvar a cópia será afetado por ②, somente quando A->S falhar os dados da cópia sejam modificados

3. Conclusão (baseada na cognição superficial)

        Como ferramenta gratuita, o WeChat possui um serviço de transferência de arquivos que já é muito bom, e com certeza não forçarei serviços mais extremos. E o QQ tem dois modos de transmissão on-line e transmissão off-line. Afinal, o QQ tem negócios relacionados à moeda Q que são mais lucrativos. A receita do WeChat é derivada intuitivamente da publicidade e outros não ousam falar bobagens.
        A última pequena sugestão é que, quando as duas extremidades do WeChat estiverem na mesma LAN, a transmissão direta da LAN pode ser usada e, em seguida, o backup do servidor pode ser carregado online lentamente, para que a velocidade seja garantida e os dados sejam copiados.

Supongo que te gusta

Origin blog.csdn.net/CUG_ZG/article/details/87802834
Recomendado
Clasificación