Mitap JavaJam. Debate Javista, rafting, experimentos e microsserviços

Os desenvolvedores de Java são impressionantes.

As propostas de front-end os elogiam e adotam ferramentas úteis , os designers trazem layouts com amor especial e os testadores se alegram porque tudo é automatizado e a vida é açúcar (mas ainda não falamos sobre isso).

Às vezes, temos java-mitaps para eles - reunimos especialistas e pedimos que digam algo divertido. Portanto, desta vez - colegas de Sberbank, Odnoklassniki, Yandex e Yandex.Money chegaram ao JavaJam e imediatamente publicaram vários detalhes sobre seu trabalho.

imagem

Sob o corte:

- O principal sobre o registro de aplicativos Java usando exemplos do Yandex;
- Desenvolvimento de uma ferramenta de código baixo para UFS do Sberbank;
- Automação de experimentos em Odnoklassniki usando Kotlin DSL;
- Como no Yandex.Money, eles criaram uma plataforma para microsserviços em vez de sete.

E também há uma pesquisa sobre se é apropriado chamar javists de desenvolvedores java.



Quando o trocadilho chega a um novo nível

Sobre códigos de tempo
Nas descrições de todos os vídeos no YouTube, por precaução, também são incorporados códigos de tempo com pontos interessantes, se você estiver acostumado a assistir o vídeo ali.

Guia para rafting em toras (Vladimir Krasilshchik, Yandex)


Conceitos e armadilhas importantes do registro de aplicativos Java usando os exemplos do desenvolvedor Yandex. Falaremos sobre os principais conceitos no registro de aplicativos Java, sem os quais nenhum desenvolvedor pode sobreviver.

Vou dar exemplos de comportamento inesperado de aplicativos devido aos meandros do log de minha própria prática, e você aprenderá como tornar a vida com logs mais fácil e divertida - o máximo possível. O objetivo da apresentação é compartilhar práticas que permitirão esquecer o registro em log e fazer coisas realmente interessantes.

Código interno e timecodes
1:20 - Por que não consigo ver os logs?
7:04 - Sobre o Logger, Appender e sua conexão
13:40 - Diagrama arquitetônico do software universal (UPAD)
15:14 - Palavras-chave do mundo moderno do registro em Java
20:13 - Problema 1 - Ligação múltipla
21:46 - Problema 2 - log4j ou JUL sem adaptador
25:09 - Appender de arquivo de logback "suíço"
29:57 - Problema 3 - GWT
31:16 - Problema 4 - Hibernate 4.X.X +
34:06 - Problema 5 - Não determinismo temporário
37:07 - Desenvolvimento de API
40:50 - Efetuando login em microsserviços e em um cluster
44:13 - Como isso é feito no Yandex.Market
50:36 - Sobre segurança no log
55:08 - Como esquecer os logs e começar a viver?



DevOps orientados a modelo (Denis Vasin, Sberbank)


Você provavelmente conhece a cultura DevOps, que reúne especialistas em serviços de desenvolvimento e tecnologia da informação (Desenvolvimento e Operações). Mas poucos ouviram falar da plataforma Low-code - transforma participantes em projetos relacionados em Citizen Developers.

No relatório, falarei sobre o desenvolvimento da ferramenta Low-code para UFS (Sistema Frontal Unificado) do Sberbank. E responderei às perguntas que geralmente surgem com os gerentes de MDE. Por exemplo, como gerenciar versões de modelo, separar o código gerado e manuscrito ou integrar sua própria ferramenta à infraestrutura padrão do DevOps.

Código interno e timecodes
01:05 - Tempo de vida de um produto financeiro antes e agora
04:24 - O Sberbank inventou seu Código Baixo no "sistema frontal único"
12:16 - Lesão ao nascimento Código baixo
15:53 ​​- Colaboração em infraestrutura corporativa
25:34 - Como conectar um código manual?
28:28 - Arquitetura de implantação corporativa
30:19 - Funcionalidade de controle de qualidade
33:45 - Integração no Pipeline
36:13 - Migrando do DevOps para o DevOps controlado por modelo



Automação de experimentos usando Kotlin DSL (Alexander Tarasov, Colegas de classe)


Em um projeto grande, você não pode simplesmente pegar e disponibilizar o recurso para todos os clientes. Para um começo tranquilo, realizamos experimentos que exigem alterações manuais - e isso geralmente leva a custos e erros de tempo. Para nos livrar deles, decidimos automatizar a preparação e o lançamento de experimentos.

No relatório, explicarei por que escrevemos uma DSL personalizada e como o Kotlin ajudou a torná-la compacta e conveniente. E também sobre quais problemas precisam ser resolvidos para que tudo funcione como você pretendia.

Código interno e timecodes
01:47 - O que é um experimento?
04:23 - Você não pode simplesmente pegar e lançar um recurso
05:23 - São necessárias experiências porque ...
07:38 - Problemas com experimentos
09:00 - Esquema do início do experimento
10:39 - Conceito de solução
11:25 - Demo
15:04 - O que escrever DSL
16:46 - Onde está o Kotlin e o que mais escrever DSL?
21:22 - DSL "coragem"
23:46 - Como garantir a segurança
24:38 - Otimização DSL
29:31 - Script de Kotlin
31:31 - E os problemas dele
34:45 - Conclusões + outra demo
38:29 - Resultados e o que ler sobre o tema



Plataforma unificada de microsserviços Yandex.Money (Vasily Sozykin, Yandex.Money)


No Yandex.Money, construímos uma arquitetura de microsserviço há seis anos - dividimos monólitos em pequenos serviços e implementamos novas funcionalidades na forma de componentes separados.

Três anos atrás, tínhamos sete plataformas proprietárias - quatro para Java e três para a pilha JavaScript. Acompanhar tudo isso foi caro e difícil, mas não havia necessidade de falar sobre automação. Estamos cansados ​​dessa vida e criamos uma plataforma única para serviços Java com base na pilha do Spring Boot.

Hoje, temos apenas duas plataformas e, para elas, as forças de desenvolvimento criaram tantas ferramentas de automação que o processo de testar as liberações e colocá-las em produção é completamente automatizado. Atualmente, quase não há holívoros em pull-quests, para que você possa iniciar rapidamente o desenvolvimento em qualquer um dos mais de 60 componentes.

No relatório, mostrarei como aprimoramos o processo de teste, cobrimos a maioria dos componentes com testes em pelo menos 80% e como conseguimos alcançar tudo isso.

Código interno e timecodes
00:12 - Como não perseguir um monte de idiomas e plataformas
01:02 - O que mudou no Yandex.Money ao longo de três anos
03:51 - No começo havia duas plataformas
05:29 - +1 plataforma e 10 serviços (tudo piorou)
08:32 - Padrões de manutenção de sistemas de microsserviços
08:44 - Instrumentos de construção unificados
12:11 - CI / CD como um código
15:06 - Bibliotecas comuns livres de busines
18:37 - Teste de componentes
22:56 - Limites de cobertura do teste de versão
25:13 - Plataforma unificada de microsserviço
28:40 - 20 minutos da mesclagem à produção



E aqui nós, com os caras do front-end, discutimos se os desenvolvedores de Java são ofendidos, se você os chama de javistas. Os caras dizem que é normal, mas eu duvido, mesmo que eu não seja uma javista.

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


All Articles