banner

blog

Apr 21, 2024

Conectando os pontos: design de API em um mundo distribuído

Apresentações da página inicial do InfoQ Conectando os pontos: Design de API em um mundo distribuído

Ben Gamble explora o design de APIs através das lentes de um desenvolvedor e consumidor de APIs internas e externas.

Ben Gamble passou mais de 10 anos liderando engenharia em startups e empresas de alto crescimento. Como fundador, CTO, produtor e líder de produto, ele preencheu a lacuna entre a pesquisa e o desenvolvimento de produtos. Tendo trabalhado com o que há de mais moderno em realidade aumentada, escalonando jogos em 3D e logística no mesmo dia, ele conhece bem os desafios técnicos.

O software está mudando o mundo. QCon capacita o desenvolvimento de software, facilitando a disseminação de conhecimento e inovação na comunidade de desenvolvedores. Uma conferência dirigida por profissionais, a QCon foi projetada para líderes de equipes técnicas, arquitetos, diretores de engenharia e gerentes de projetos que influenciam a inovação em suas equipes.

Apresentado por: Tomasz Grabiec - Distinguished Engineer da ScyllaDB e Tzach Livyatan - VP de Produto da ScyllaDB

Tome as decisões corretas descobrindo como os desenvolvedores de software seniores das empresas que adotam precocemente estão adotando as tendências emergentes. Registrar agora!

Gamble: Meu nome é Ben Gamble. Atualmente trabalho em um lugar chamado Aiven. Eu trabalho nas equipes de relações com desenvolvedores como uma espécie de Sommelier de software de código aberto. Estou aqui para combinar um pouco de Kafka, um pouco de Postgres e talvez um pouco de queijo para acompanhar. Minha história é um passado um tanto conturbado entre tudo, desde o desenvolvimento de jogos MMO, desde as principais camadas de rede até o desenvolvimento de dispositivos médicos para diagnósticos reais no local de atendimento. Eu andei um pouco pelo lugar. Na verdade, escrevi a produção Pascal nos últimos 12 meses, que era fazer streaming de MQTT em um local anterior em que trabalhei. Atualmente estou aprendendo Rust, para poder contar melhores piadas sobre crustáceos. Porque há uma coisa acontecendo no mundo e que vem acontecendo há, eu acho, alguns milhões de anos, e se chama Carcinização. É aqui que a natureza tenta repetidamente transformar as coisas em caranguejos. Na verdade, isso é algo realmente documentado e você pode descobrir mais sobre isso no computador se pesquisar. É dessa forma que a natureza ama os caranguejos e quer que tudo seja um só. É por isso que trabalho na Aiven, porque tem um lindo logotipo de caranguejo. Eventualmente, todos vocês também poderão nos usar. Aiven é uma plataforma de hospedagem de código aberto para hospedar suas necessidades de dados. Fazemos coisas como o Postgres em grande escala. Fazemos coisas como Kafka em grande escala. Estamos lá para facilitar o acesso ao software de código aberto.

O grande tema aqui é que aqueles que não conseguem lembrar o passado estão condenados a repeti-lo. Esta é uma antiga citação de George Santayana, sobre o significado da razão, de 1905. A pintura aqui é do Smithsonian. É realmente sobre as grandes ideias do homem serem a mesma coisa novamente. Este é o tema que você pode ver em tudo, desde a arte até a vida, mas também na engenharia de software, já que na maioria das vezes estamos fazendo a mesma coisa novamente e, idealmente, melhor. Com isso em mente, vamos pensar em APIs e lembrar dos monólitos. Lembre-se dessas coisas, elas eram adoráveis. Eles eram grandes sistemas que você poderia levantar e eles simplesmente executariam. Eram uma estrutura única, esculpida em pedra, um pouco parecida com aquela antiga do filme. O principal aqui é que quase sempre houve algo entre você, seu sistema e seus clientes, geralmente um balanceador de carga. Havia uma série de ferramentas construídas dentro dele. Então você quase sempre tinha um banco de dados relacional abaixo de tudo. Dependendo de qual época você era, isso pode ser qualquer coisa, desde MS SQL até Oracle, até Db2 e, em tempos mais recentes, MySQL e Postgres, e até mesmo algumas variantes mais modernas disso. O legal aqui é que realmente só tivemos uma grande coisa no meio. À medida que você aumentava a escala, você apenas adicionava mais unidades de RAM ou CPUs mais rápidas, principalmente naquela época, você poderia literalmente atualizar sua CPU todos os anos e provavelmente estaria bem.

COMPARTILHAR