No final de junho, Novosibirsk utilizou o HighLoad ++ pela segunda vez. Se no ano passado o efeito da novidade desempenhou um papel significativo no fato de todos estarem felizes com tudo, dessa vez, precisamos nos preparar com muito mais cuidado, a fim de manter e superar a impressão. Primeiro de tudo, com força triplicada, assumimos o principal - o programa. Agora que os discursos ocorreram e até foram revisados seletivamente no segundo turno, o feedback dos participantes da conferência foi coletado e processado, podemos dizer com segurança que foi um sucesso.
A base do HighLoad ++ Siberia foi de 38 relatórios excelentes, cheios de experiência e conhecimento profundo. Gigantes internacionais e empresas regionais compartilharam sua experiência no trabalho com tarefas cuja solução simplesmente não existe em ferramentas padrão.
Uma conferência especial foi feita por pessoas. Sinceramente, tentamos entender qual era o problema e como fazer os mesmos eventos sinceros em outros lugares, mas não - para uma atmosfera amigável indescritível, teríamos que ir à Sibéria novamente, e éramos todos a favor. Além disso, já estamos pensando em novos produtos.
Eles trouxeram o urso com eles, nenhum representante da fauna local foi ferido.Mas o que não vamos mudar é a abordagem na escolha de relatórios. A menos que comecemos a afirmar tópicos anteriormente que já estamos aplicando: HighLoad ++ em Moscou em 4 meses e alguns relatórios já foram
anunciados . Até agora, esta é a única conferência na Sibéria sobre altas cargas, e a quantidade de informações úteis e detalhes técnicos incondicionais era de cerca de um terço do irmão mais velho de Moscou, e se nos voltarmos para a densidade nas almas dos participantes, era muito maior. Alguns relatórios, de acordo com o comitê do programa, podem ser adicionados com segurança ao topo de todos os relatórios sobre altas cargas na última década. Isso também é confirmado pelas classificações de público-alvo - a pontuação média dos relatórios é de 4,2.
Para que você possa impressionar o programa
HighLoad ++ Siberia , apresentamos alguns breves resumos. Este não é o topo da classificação para votações e você não precisa prestar atenção ao pedido - é apenas um conjunto de tópicos interessantes que são diferentes o suficiente para ser uma pequena amostra representativa. Publicaremos gradualmente todos os vídeos para a imagem completa no
canal do
youtube (inscreva-se, clique na campainha - tudo isso é blog para ver as atualizações).
Videochamadas: de milhões por dia a 100 participantes em uma conferência
Alexander Tobol (colegas de classe)Agora, em todos os mensageiros instantâneos populares, há uma oportunidade de ligar para o interlocutor. Obviamente, é conveniente usar a mesma ferramenta para qualquer comunicação. Portanto, se você possui um meio de comunicação corporativo, mas ainda não há chamadas, vale a pena adicioná-las. Por onde começar, quais protocolos e tecnologias usar, conhece Alexander Tobol (
alatobol ). Mesmo se você não planeja desenvolver um serviço de videochamada em um futuro próximo, o relatório de Alexander está cheio de detalhes graves sobre redes de dados em geral. Provavelmente, é por isso que seu relatório recebeu, ao que parece, uma classificação recorde de ouvintes em 4,9 em 5.

No ano passado, Alexander
falou detalhadamente sobre o dispositivo de chamadas P2P, mas desta vez ele lembrou apenas os pontos principais e mudou para os recursos, por exemplo, sinalização e codificação de chamadas de um para muitos. É fácil entender que, se um dos participantes tiver baixa qualidade de comunicação (e a maior parte desse tráfego for através de redes móveis), a taxa de bits terá que ser reduzida para todos os participantes da conversa. Mas, para decidir o que fazer com isso, faz sentido olhar para o que os outros alcançaram nessa direção e - obviamente - aproveitar o melhor e corrigir as falhas.

No Odnoklassniki selecionado:
- Não use codecs de software, mas codifique H.264;
- use o canal inteiro em um fluxo, ou seja, Não codifique ou envie vídeo em duas resoluções;
- use mistura final para alta qualidade e um circuito centralizado para baixa;
- até 3-4 participantes, a opção preferida é Mesh.
Na comparação final, essa solução é comparável à latência, consumo e qualidade da bateria do Zoom, mas o Zoom não é compatível com o WebRTC (e todos lemos as notícias). Quando você decide repetir o procedimento e também comparar concorrentes - não se esqueça de OK. Ou aproveite imediatamente os conselhos de Alexander, seu relatório foi novamente cheio de detalhes técnicos importantes, o que parece ser uma instrução bastante simples.
Como criar um sistema de notificação de eventos altamente carregado
Artyom Gashkin (CFT)A empresa CFT é um brilhante representante das especificidades regionais de TI - uma grande empresa fintech. Este relatório tratou do trabalho do centro de processamento CardStandard, que - pense bem - processa pagamentos por cada terceiro cartão no país.

Assim que você paga por algo, é esse processamento que informa você via SMS ou push. O banco que emitiu seu cartão - o emissor também deseja receber essa notificação online. Esse é o objetivo do projeto, sobre o qual Artyom Gashkin falou: implementar um módulo de envio de notificações que suportaria uma carga dupla. Infelizmente, Artyom não tinha o direito de nomear os dados exatos, apenas disse que a carga em módulos individuais atinge 200 transações por segundo. Ao mesmo tempo, estavam em andamento trabalhos para reduzir a carga, alterando as configurações do sistema. Os desenvolvedores queriam criar uma margem de desempenho para não voltar a esse problema pelo maior tempo possível. Os requisitos para a solução são bastante padrão, mas o mais importante é que o tempo de processamento da autorização não deve aumentar.
Tradicionalmente, o Oracle é usado para a empresa corporativa, que, se possível, é muito difícil de ser dimensionada horizontalmente. Portanto, para não aumentar a carga no banco de dados, ou seja, Para manter o número mínimo de conexões com o banco de dados, o Apache Kafka foi selecionado.
Os engenheiros abordaram a escolha da opção de implementação como deveria ser para os engenheiros - medimos o tempo para mover 400.000 registros de um tópico para outro. Esses dados podem ser interpretados como o tempo durante o qual o processamento restaurará sua capacidade de trabalho após uma falha. Paramos em um produtor com uma espera assíncrona de entrega, acreditando que 20 a 30 segundos é um tempo de recuperação aceitável. Artyom também falou sobre uma implementação específica - por um lado, tudo está à superfície, porque Kafka garante que, se dois registros forem enviados para a partição do tópico sequencialmente, eles serão entregues na mesma ordem. Por outro lado, os desenvolvedores tiveram que se aprofundar nos recursos do trabalho e da documentação. No momento, as notificações da transação são enviadas ao banco em cerca de 0,5 segundos.
Escalar o sistema resultante é fácil - se a carga aumentar, você precisará aumentar o número de manipuladores específicos. Os módulos de roteamento e notificação funcionam sem alterações e o módulo que gera notificações é responsável pela lógica de negócios. Quando você também precisar enviar rapidamente, por exemplo, senhas de uso único, será suficiente implementar novos manipuladores. Esse refinamento não afetará o sistema existente e todos os testes de regressão serão aprovados sem problemas.
Desde que a CFT foi mencionada, mostraremos como a parceria deles decorou a conferência. Eles organizaram uma área de salão inteira, na qual foram realizados concursos e jogos por dois dias. Mas o destaque do programa foi o StudioCFT - um estúdio no local para gravar podcasts com alto-falantes e um guru da conferência. Entre os convidados: Vladislav Blinov e Valeria Baranova do Tinkoff Bank, Sergey Sporyshev do ITSumma, Viktor Yeremchenko do Miro, Sergey Polovko do Yandex, além de Oleg Bunin e Alexey Obrovets (uma
conversa sobre o que os homens falam em 2019). Entrevistas postadas no
canal do
youtube da empresa.

MELHOR GEODISTA () Oeste do Rio Grande
Andrey Aksenov (Avito, Esfinge)"Use interpolação linear, meninos."
Andrei começou no estilo irônico habitual, dizem eles, se isso é compreensível, então você pode divergir. Entendido, é compreensível, mas se você também adicionar a experiência do desenvolvedor do Sphinx, na qual a pesquisa funciona no Avito, tudo ficará melhor. Andrey escolheu a função GEODIST (), usada principalmente para classificação, filtros, pesquisa no mapa etc., como tema para o HighLoad ++ Siberia.

Tarefa: encontre a distância entre dois pontos dados por duas coordenadas. Parece a sétima série, o segundo trimestre. Mas se a distância é calculada não dentro dos limites do caderno, mas pelo menos na escala de uma região da Federação Russa, a distância deve ser considerada na "esfera". Ou melhor, um elipsóide. E exatamente, um geóide. Afinal, como não se envolver com o geóide, que aproximações e técnicas antigas de otimização funcionam em grandes produções, não vamos recontar - veja o relatório.
Experiência de modelagem da equipe ComputerVision Mail.ru
Grupo Eduard Tyantov Mail.ruA equipe de visão computacional resolve problemas para projetos de produtos B2B especializados em Cloud, Mail e Vision. Este reconhecimento de rostos e atrações para fotos, texto de fotos para correio, etc. Eduard Tyantov (
EdT ) iniciou a parte substancial de seu relatório com uma declaração adequada para qualquer campo, mas especialmente relevante para a IA:
"A declaração do problema é uma fase crítica".
Nesse estágio, é necessária a colaboração contínua entre o gerente de produto e o especialista em aprendizado de máquina. Se você tentar economizar, perderá algo realmente importante ou passará vários meses aprendendo a reconhecer rostos pintados, e o modelo de produção nunca encontrará esse exemplo. A propósito, sobre outros recursos de gerenciamento de projetos, baseados em tecnologias de aprendizado de máquina, Edward falará em setembro no
UseData Conf .

E somente quando a declaração estiver clara para todos os participantes do projeto, podemos começar a trabalhar em uma tarefa que começa com a preparação dos dados. Obviamente, eles precisam ser limpos, tanto por marcação ruim quanto por lixo dentro das classes, e por divisão excessiva ou insuficiente em classes. E, às vezes, os dados precisam ser gerados e, para a tarefa de reconhecimento de caracteres, é suficiente pegar o PIL e distorcer o texto, em outros casos, você precisa ser muito mais inventivo.
Voltando-se diretamente para o treinamento, no campo da aprendizagem métrica, Eduard, contando com a vasta experiência do Mail.ru, recomendou inequivocamente o
Angular Softmax para reconhecimento de padrões e classificação em princípio, e falou sobre truques que o tornam mais eficaz.

E a inclusão de um conhecimento bastante simples de destilação e decomposição quase dá em nada dá + 0,5-1% à PA. A codificação de pares de bytes funcionou muito bem para textos e o treinamento em FP16 com Apex da Nvidia economiza 20% (vinte!) De tempo para praticamente brindes.
Como transportar modelos para produção é uma grande conversa separada, porque os cientistas de dados usam o PyTorch e ninguém quer implantá-lo. Uma boa opção, como lidar com isso, apareceu recentemente. Os desenvolvedores do PyTorch perceberam a dor de seus usuários e lançaram o TorchScript, que serializa o modelo Python em um gráfico estático. Com essa conversão, tudo funciona exatamente da mesma maneira que no Python, e a primeira onda de bugs já foi detectada - você pode usá-lo.
Amazon Scaling
Vasily Pantyukhin (Amazon Web Services)Este relatório é um exemplo típico de como obtemos experiência internacional de empresas internacionais. É isso mesmo - chamamos as crianças de língua russa que cresceram em nossa cultura de engenharia e em nossas conferências. Palestrantes estrangeiros são bons para publicidade, mas, na verdade, os participantes geralmente avaliam seus relatórios não muito altos. Nossas conferências profissionais, no sentido geralmente realizado na Rússia, visam o intercâmbio de experiências profissionais. No exterior, os relatórios são populares nas notícias da empresa que nenhuma conferência técnica especializada realizará em nosso programa. Por que isso é uma questão à parte, mas estamos ceteris paribus tentando escolher falantes de russo. Isso, do ponto de vista da ausência de uma barreira da linguagem e da diferença de mentalidade, é bom para entender o material.
Voltando à AWS, milhões de usuários são atendidos simultaneamente por seus serviços, alcançando os resultados desejados. O sistema é dimensionado automaticamente, ajustando-se de maneira resiliente a cada usuário, para que pareça que ele está sozinho neste universo. Assim pensou Vasily Pantyukhin, até que ele se tornou um arquiteto na Amazon. Agora, é claro, ele sabe o que está por trás dos serviços em nuvem da AWS e compartilhou alguns aspectos interessantes com os convidados da conferência. Quais servidores físicos estão por trás do conceito efêmero de nuvem, quais otimizações são usadas para eles, como o serviço mais escalável do AWS Lambda é organizado, como a Amazon cria seus próprios bancos de dados e como a rede é organizada.
Acima de tudo, o discurso de Vasily impressiona com a inspiração com a qual ele fala sobre soluções e com o fato mencionado de ter mergulhado no dispositivo interno, ele só começou a confiar mais nos serviços da empresa. Este relatório é útil como uma revisão para aqueles que estão apenas começando a AWS e para aqueles que precisam de detalhes técnicos - ou seja, todos.
Vasily também realizou uma
reunião sobre o tema “Gráficos amigáveis ao cérebro”, que, a julgar pela discussão no
bate -
papo , foi muito útil. Mas não estará no registro, este é um formato especial. Portanto, um truque de vida para o futuro: se em nossa conferência você escolher entre um relatório e um mitap, dê preferência a um mitap e, em seguida, observe o relatório na gravação, felizmente, todos nós gravamos e exibimos o vídeo em alguns dias.
Backend do NodeJS
Yuri Gavshin (Parafuso)Bolt - movendo-se rapidamente do inglês - uma plataforma para a prestação de serviços de transporte: táxi, transporte privado, motos e aluguel de scooter elétrica. Nos últimos três anos, a empresa cresceu mais de dez vezes em todos os aspectos; portanto, os principais requisitos para o back-end são: produção rápida, tolerância a falhas e resiliência (um serviço em queda não afeta o desempenho dos vizinhos), escalabilidade.
A base da pilha é o NodeJS. Sua característica distintiva é a entrada / saída sem bloqueio e a operação assíncrona com a rede. Não há uma opinião clara se essa é uma boa ideia e como serviços complexos podem ser feitos no NodeJS na comunidade ainda. Parece que não há muitas razões para escolher o Node em vez de uma linguagem de servidor madura, mas um curto tempo de colocação no mercado é apenas uma delas, portanto, a experiência de produção no desenvolvimento de um back-end altamente carregado é muito interessante. Além disso, Yuri contou em detalhes e com exemplos como usar efetivamente os profissionais e nivelar as desvantagens do NodeJS; por exemplo, ele recomendou o uso do TypeScript e a mudança para async / waitit. Ele prestou atenção a uma característica como a inconveniência da construção de monólitos. O NodeJS força os desenvolvedores a limitar o tamanho dos serviços, e isso, de acordo com a equipe Bolt, é uma vantagem. Ele tocou nos tópicos de teste e monitoramento.

Tudo o que foi deixado nos bastidores do relatório e muito mais podem ser descobertos pelos desenvolvedores do serviço no estande da empresa. Além da pilha tecnológica, eles também discutiram a mudança para a Estônia - mas isso já está dentro da estrutura da reunião, na qual tradicionalmente havia um local e um horário. Pequenas reuniões espontâneas e discussões animadas são o motivo pelo qual são necessárias conferências. Onde mais você pode assistir aos truques de codificação ao vivo do Zabbix ou compartilhar as dores da documentação.

Em geral, desta vez, fomos apoiados por mais empresas. Achamos que passamos no teste no ano passado e provamos aos moradores que estamos trabalhando em benefício deles.
Onde ele nasceu, lá ele veio a calhar
É o que parece para nós. E essa é a principal idéia que perseguimos, realizando nossas conferências fora de Moscou. Para que desenvolvedores legais não sejam obrigados a migrar para a capital ou escritórios no exterior de grandes empresas, porque somente haverá tarefas desafiadoras para eles, é necessário desenvolver comunidades regionais profissionais. Por exemplo, convidamos especialmente ativistas comunitários de Novosibirsk e Krasnoyarsk e, ao mesmo tempo, de São Petersburgo e Krasnodar, para que compartilhassem sua experiência e bombardeassem com êxito sua região.
É verdade que vale a pena notar que ainda recomendamos viajar para Moscou. O conteúdo de nossas conferências não se repete; portanto, se você quiser saber tudo o que está acontecendo no mundo das cargas pesadas, nos encontraremos em novembro em Skolkovo.
Rede, etc.
Eles começaram a comer uma atmosfera amigável no dia anterior em uma reunião de palestrantes. Esta é a nossa tradição agora - depois de publicar no site, mas antes da conferência, organize reuniões. Para que os palestrantes se conhecessem e ao comitê do programa, eles viram que as pessoas ao redor eram iguais, pararam de se preocupar com o desempenho e chegaram na segunda-feira de bom humor, prontos para compartilhar sua experiência única.

E então já durante a conferência, também tínhamos espaço para comunicação e até entretenimento. Não é a mesma coisa, imerso em hardcore, às vezes você precisa mudar. Os suportes para isto são os mais.
O Sberbank tinha tiro ao alvo como jogos ao ar livre, além de videogames mais familiares para as pessoas de TI.

O sportsmaster não pôde ficar de fora - eles instalaram o hóquei de mesa, que não ficou vazio por um minuto. E enquanto esperava a festa terminar e chegou a sua vez, você poderia perguntar aos desenvolvedores sobre os produtos da Sportmaster, que, obviamente, não se limitam à loja online.

Após uma pausa contínua do café, excelente para se comunicar com colegas e fazer novos conhecidos, estender e reforçar os participantes, os principais salões invocavam relatórios.

Aqueles que não sucumbiram foram para mitaps.

Quando, depois disso, o cérebro já mudou para o modo turbo, qualquer tarefa em um pedaço de papel e quebra-cabeças se torna nada e é resolvida de duas maneiras.

E à noite, um descanso merecido.Realmente, novamente com um forte componente intelectual, preparamos um questionário "Quiz, pliz" para os convidados.

Em suma, tivemos um bom tempo. Atenciosamente.

O que vem a seguir
, , , HighLoad++ Siberia 2020 .
, , . , , . , .
, ,
.
DevOps ,
TeamLead Conf ,
KnowledgeConf - como a comunidade de escritores técnicos de Novosibirsk está muito ativamente envolvida em sua organização - ofereça-a e descobriremos como implementá-la.