COMO ESCALAR? Como auto completar os 5200 municípios do Brasil para milhares de usuários?

Поделиться
HTML-код
  • Опубликовано: 14 дек 2024

Комментарии • 120

  • @DevSoutinho
    @DevSoutinho  7 месяцев назад +3

    ✅ Tem dúvidas sobre arquitetura de camadas? Tratamento de erros? Quais as bases para colocar um projeto no ar de forma automática com Integração Contínua? Conheça meu curso do canal o Construindo CRUDs com qualidade hotm.art/mWYNKk3

    • @marcosvinicios282
      @marcosvinicios282 7 месяцев назад

      e só pesquisar json municípios e estado aparece no GITHUB só colocar no o javascript implementar no option do select do html e muito facil

  • @FilipeDeschamps
    @FilipeDeschamps 7 месяцев назад +51

    2:12 showwwwww meu queridão!!!! muito massa ver o BrasilAPI aparecendo no seu canal 💪

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +8

      DEEEESCHAMPS 🫂 valeu você pela iniciativa!!!

    • @ofamigeradoudd
      @ofamigeradoudd 7 месяцев назад +8

      Teló... cadê vc?

  • @devHB
    @devHB 7 месяцев назад +5

    Esse conteúdo com foco na resolução do problema é perfeito.
    Tutorial passo a passo é "pescaria".
    Conteúdo provocativo é inspiração.
    Vlw Soltinho 👊

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Valeu pelo feedback meu querido!!! 😍 segunda ou terça vem a próxima parte 🔥

  • @crisgonn
    @crisgonn 7 месяцев назад +3

    Tenho interesse sim! Vai ser top ver essa implementação

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Da uma olhada na aba comunidade 🥷🔥

  • @ets2playerbr
    @ets2playerbr 7 месяцев назад +1

    Primeiro, uma observação: quando Tocantins foi criado, não surgiram novos municípios. Eles já existiam, só que eram goianos. Ao desmembrar o estado de Goiás em 2, esses municípios passaram a ser tocantinenses. Eu não sei se mudaram os CEPs, acho que não, porque eles estão muito próximos dos de Goiás. Considerando que é uma continuação de Goiás, acho que continuam sendo os mesmos. Referente a consulta, acho que uma saída interessante pode ser ir armazenando os CEPs pesquisados em uma lista local. Então, em uma requisição, pesquisa primeiro localmente. Se o CEP já foi pesquisado antes, ele estará na lista. Caso não seja encontrado, vai pra fonte externa. Eu implementaria um arquivo json que iria sendo editado em tempo real com os novos dados acrescentados.

  • @MilsonPazienza
    @MilsonPazienza 7 месяцев назад +1

    Muito bom, parabens pelo vídeo e ganhou um novo inscrito.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Muuuuuuito obrigado meu querido!

  • @RamonCidade
    @RamonCidade 7 месяцев назад +1

    Muito bom o vídeo, acho que vale enfatizar com quem tá iniciando é que a grande sacada para solucionar esse problema é a estrutura de dados correta: o mapa ou chave-valor
    Um redis ou memcached também cairia bem

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Perfeito!!! No vídeo sequência que saiu essa semana em cima desse, eu trago esse exemplo logo de cara 🤝

  • @ricsilvavideos
    @ricsilvavideos 7 месяцев назад +2

    Cara, esse conteúdo vale OURO! Adorei a abordagem em cima do problema e da solução e não em cima do código. Bom demais!!! Você conseguiu trazer pro vídeo a realidade do dia a dia de quem programa de verdade! Foda!!! Parabéns!!! E obrigado.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Vaaaaleu pelo feedback meu querido! 😍 a meta é fazer com que independente da linguagem a pessoa aproveite o conteúdo /o

  • @danricardo
    @danricardo 7 месяцев назад +1

    Gostei do vídeo ! lança o Ep 2

  • @wesleyjcr
    @wesleyjcr 7 месяцев назад +1

    Parabéns pelo vídeo, muito bom!

  • @programadorpython
    @programadorpython 7 месяцев назад +1

    Belo video!
    Uma outra alternativa para evitar a consulta no brasilapi em tempo de requisição seria um script para atualizar o s3 1 vez ao mês.
    No cenário de novos municípios, não tem problema 1 mês de atraso da nova informação, afinal não é todo mês que surge novos municipios kkk
    Melhor ainda seria se o brasilapi retornasse o count de municipios consolidado, dessa forma nem precisaria bater na api se o count não atualizar.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Peerfeito! \o\

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Inclusive, saiu o vídeo novo com várias dicas pra resolver isso pra valer!

  • @FelipedosSantosAssis
    @FelipedosSantosAssis 7 месяцев назад +1

    Salve Mário!!! Um cenário bem trivial mas nos leva a soluções interessanntissimas! Este seria um caso bem interessante em usar soluções como o Redis. Não só isso, mas da uma idéia bem simples e pratica onde podemos adotar técnicas para cacheamento.

  • @herickprazeres
    @herickprazeres 7 месяцев назад +1

    Muito top essa aula e essa forma de um mapa mental da funcionalidade para auto completar. Com certeza gostaria de ver a implementação de como gravar esses arquivos no Azure. Parabéns pelo conteúdo.. toooop demais..

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Valeu pelo feedback! Tem 2 vídeos nessa pegada já, o anterior eu explico como o React sobe um local host 3000 no comando npm run dev /o

  • @eduardoferras5228
    @eduardoferras5228 7 месяцев назад

    Parabéns pelo conteúdo, principalmente sua explicação detalhada de cenários e gostaria muito que fizesse um vídeo sobre a implementação do S3 funcionando neste cenário.

  • @gabrielpapke
    @gabrielpapke 7 месяцев назад +1

    Traz mais vídeos de whiteboard, achei da hora

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Tem um da semana retrasada sobre como o react sobe o localhost:3000 na sua maquina

  • @Gustavo_Brust
    @Gustavo_Brust 7 месяцев назад +1

    Muito interessante! Ficou bem explicado o conteúdo, acho que você deveria trazer mais vezes o desenvolvimento da ideia no whiteboard por quê ficou algo bem facil de assimilar.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Já tem um video da semana passada, mas já tô gravando o próximo hehe

  • @apenasjoyc
    @apenasjoyc 7 месяцев назад +2

    tenho interesse em aprender sim

  • @AlbanoMaywitz
    @AlbanoMaywitz 7 месяцев назад

    Boa Noite Souto, adorei o conteúdo!! Adoraria ver como seria implementar algo assim!

  • @badempower
    @badempower 7 месяцев назад +1

    Fala Coutinho, muito foda esse vídeo parabéns🎉🎉🎉 um ponto que posso acrescentar é que nao é tao incomum "surgirem" novos municípios, pelo motivo dinheiros... o Brasil tem muitos distritos de cidades que quando se transformando em cidade começam a receber verba federal como tudo depende do número de habitantes vale a pena ficar ligado nisso no plano B pra estar semipresencial atualizado

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Perfeito! Valeu pelo feeeback 😍😍😍 isso aí é bom de encaixar um fluxo num endpoint de admin da vida

  • @petregluiz
    @petregluiz 7 месяцев назад +2

    @DevSoutinho tem uma opção no S3 de colocar um TTL no arquivo, assim vc bateria no seu cachê, se o arquivo existir, consome ele, se não, busca da API e salva ele no S3.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      GENIAL! Não sabia dessa

  • @xFelipeM
    @xFelipeM 7 месяцев назад +1

    Obrigado pelo conteudo!

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Obrigado você pelo comentário aqui meu querido 😍

  • @raulbarros6941
    @raulbarros6941 7 месяцев назад +1

    Ótimo vídeo! Parabéns! Ps: curti a camisa da Caelum :D

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Bons tempos que eu dava aula lá haha

  • @CaioLemos-GraduacaoNerd
    @CaioLemos-GraduacaoNerd 7 месяцев назад +1

    Conteúdo bom demais! Sou de fã meu parceiro

  • @Slipdan
    @Slipdan 7 месяцев назад +1

    Grande vídeo.
    Em um projeto do ano passado me deparei com esse problema. Acabei fazendo o seguinte: Um Json com os estados bem parecido com o que o CHATGPT gerou pra ti.
    No dropdown com os estados, quando o user escolhia o estado eu chamava uma função pra popular o dropdown das cidades com os dados da base da api do IBGE.
    Hoje vejo que não é o mais correto e tem alguns erros que poderiam acontecer que nunca seriam explicados ao user mas na época pareceu uma boa idéia.
    Apesar disso o sistema não tem imensas requisições pois é um sistema interno. Mas na época considerei salvar os municipios manualmente tb.
    Agora com o seu vídeo fiquei bastante curioso sobre essa possibilidade de utilizar a AWS e já estou na fila para esse novo vídeo.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Booooaaa!!! Valeu pelo relato, ele tá no forno aqui 🥘

  • @VoceBR97
    @VoceBR97 7 месяцев назад +2

    Interessante essa questão do S3 junto com validação em x dias...

  • @cuca_dev
    @cuca_dev 7 месяцев назад

    Muito massa esse conteúdo, com certeza vai expandir o pensamento lógico da galera no design de sistemas além de difundir o uso da Brasil API pra quem ainda não conhece.
    Acho que talvez seja legal manter os processos de white board e deixar a prática como exercício pro pessoal, até porque é muito mais fácil aprender como fazer um “CRUD” no S3 do que ter esse pensamento de design de sistemas.

  • @raphaelcomph-dev
    @raphaelcomph-dev 7 месяцев назад

    Achei bacana a forma de pensar. Claro que existe 1 milhão de formas de fazer, mas particularmente pra esse caso específico achei muito overengineering as alternativas 1 e 2. Há uns meses atrás precisei fazer um autocomplete e utilizei apenas 1 campo no formato "nome do município (Sigla do Estado)". Coloquei todos os municípios num enum no frontend (tamanho do arquivo ficou em aprox. 330kb) e exibia apenas os 15 primeiros registros a medida que o usuário digitava. Achei a performance mais barata do que uma chamada de API (ou no caso 2 chamadas como a solução 1 e 2).
    Agora uma busca por CEP é bem mais complexa e essas soluções 1 e 2 seriam muito bem aplicadas.

  • @ViniciusValente
    @ViniciusValente 7 месяцев назад

    Se o back for node pode usar também o MEMORY-CACHE. Tem soluções parecidas de cache de variável para outras linguagens.

  • @denilsonsantosbaptista5334
    @denilsonsantosbaptista5334 7 месяцев назад

    Tenho interesse em aprender 😊

  • @Gabweb95
    @Gabweb95 7 месяцев назад +2

    Tão bom quanto degustar o elixir hahah

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      HAHAHAHAHHA provido pela janela

  • @leuofiridia
    @leuofiridia 7 месяцев назад +1

    Eu não iria no S3 pra essa solução específica, meteria um memory cache no backend mesmo, ou um Redis

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Mas pensa que tu precisa ter a persistência disso em algum nível. Se tu desligar e ligar o sistema algum nível de guardado fixo do cachê tu tem que ter saca?

  • @brianferreira15
    @brianferreira15 7 месяцев назад +1

    A solução 02 é a melhor, porém n acho q usar o S3 seria uma boa, como vc mesmo disse, S3 é um repositório de arquivos, e ler arquivos é demorado, acho q em vez o S3 a melhor abordagem seria usar um redis ou talvez um memcached, e caso os recursos sejam mínimos da pra fazer cache até mesmo em uma base de dados MySQL. mas o ideal mesmo seria no Redis.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      O S3 hoje é super rápido e tem os tiers (do mais rápido até o super lento), e depois da primeira leitura vc consegue deixar na RAM. Nesse cenário ficaria melhor que o redis, e vc consegue ter o controle de tempo que eu falei dos 30 dias (partindo do ponto que tudo ficaria stateless)

  • @felipe-rodriguees
    @felipe-rodriguees 7 месяцев назад

    acredito que seria melhor salvar em cache e usar um job pra fazer a requisição novamente, caso o BrasilAPI esteja fora continua utilizando o cache que está em memória, o erlang/elixir permite fazer isso tranquilamente com GenServer, podendo também salvar em banco ou em arquivo, ou seja, faz uma requisição, salva em memoria e em banco, faz um job pra cada 30 dias, se retornar renova a memoria em cache e em banco e utiliza, como todos os processos são totalmente isolados não teria nada sobrescrevendo em cima de uma memoria cacheada, bem melhor que usar o S3.

  • @mamupelu565
    @mamupelu565 7 месяцев назад +1

    Eu faria com um banquinho relacional, mas deve ser pq essas águas do S3 são meio desconhecidas para mim. Apoio a ideia de fazer uma explicação bem completa de como tudo funciona.

  • @lucascamargo3329
    @lucascamargo3329 7 месяцев назад +3

    Estou fazendo algo parecido em um projeto pessoal. Busco os dados sobre a FIPE do brasil. E pra não ficar batendo sempre da api deles. Eu salvo em um mongodb.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +2

      Perfeito! Eu acabei optando por não salvar no banco, pq a disponibilidade do S3 HOJE acaba sendo até mais alta daí feito uma vez só deixar na memória carregado e é uma necessidade a menos de conexão :P

    • @lucascamargo3329
      @lucascamargo3329 7 месяцев назад +2

      @@DevSoutinho vou tentar implementar dessa forma também. Eu não tinha pensando nisso haha

  • @CaioLemos-GraduacaoNerd
    @CaioLemos-GraduacaoNerd 7 месяцев назад +1

    Em vez de usar a S3, não dá pra utilizar a última forma de salvar junto do projeto (se considerar uma instância ec2 já até aproveita o armazenamento dela) mas adicionando um controle de cache? Daí em vez de salvar um array com os resultados, vai salvar automaticamente um json com um objeto com updated_at e um items contendo os resultados

  • @yurilsaps
    @yurilsaps 7 месяцев назад +1

    Se eu entendi o brasilApi deveria ter um metadata sobre a data da ultima insercao de um novo municipio, ai vc soh faz o dowload do material e faz um request nos "updates do brasilAPI", pode fazer um job pra manter sua base sync com o brasil api rodando uma vez por hora soh pra saber se teve um update. Afinal se entrou um novo minucipio e vc soh vai atualizar o cache em 30 dias, sao 30 dias sem vendas

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Assim, a gente tá sempre passivo disso acontecer. Mas normalmente algum usuário abre chamado, a gente perde conversão, vê um número constante caindo em X etapa…
      Concordo contigo! O espírito do vídeo é justamente esse pensar em como implementar e tu tá com um BOM PR pra mandar pra eles em 😍

  • @feldinho
    @feldinho 7 месяцев назад +1

    eu faria um cloud function (lambda) agendado pra rodar toda semana pra carregar todos os dados de todos os estados e salvar num jsão num object storage (s3).
    se der errado, ele só fica defasado, mas continua funcionando.
    o json vai ter seus 350KB se as chaves forem pequenas, o que não é nada pras conexões de hoje. vira uma requisição só e pra um CDN que não cai nem ferrando e a latência fica zero pro usuário depois do primeiro load.
    lidar com cache é um porre, e o backend não cai se ele não existir. :)

    • @feldinho
      @feldinho 7 месяцев назад +1

      explicando o que eu falei sobre o cachê: por mais que esse cache seja sussa, tem que prever condições de “stampede” onde mais de uma requisição dispara a renovação do cache ao mesmo tempo. aí tem que implementar alguma coisa tipo expiração prematura probabilística. me pergunta como eu descobri isso aí. :P

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Usar lambda é um “plus a mais” top! valeu por compartilhar aqui /o vou trazer num próximo vídeo algo com essa pegada

  • @inaciofabricio5709
    @inaciofabricio5709 7 месяцев назад +1

    Eu ja precisei fazer isso, mas eu coloquei tudo em banco de dados mesmo.

  • @sergio.808s
    @sergio.808s 7 месяцев назад +1

    ótimo video, eu estou estudando uma nova liguagem e estava procurando um projeto legal, posso utilizar o seu miro p criar ?

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Fica a vontade Sérgio! Fico feliz que tenha curtido 😍

  • @kleberribeiro1487
    @kleberribeiro1487 7 месяцев назад

    Gostaria de aprender!!!

  • @fabriciolourenco4951
    @fabriciolourenco4951 7 месяцев назад

    Em uma Ec2 na aws com banco ClickHouse lendo de um arquivo .parquet baixado do s3 e tendo uma api na ponta lendo desse banco de dados e respondendo às requisições, e um serviço extra, que cria esse arquivo novo todo mes seria uma solução boa? Pois ClickHouse lendo direto de um arquivo .Parquet é mil vezes melhro que ler direto de um arquivo json, pois esse banco de dados faz leitura tabular dos dados .

  • @lurickardo2344
    @lurickardo2344 7 месяцев назад +1

    Uma duvida, e se eu armazenasse o cache em um Redis se comunicando diretamente front-redis. Teria algum problema?
    Pois assim não precisaria de um backend, ainda estaria cacheado e reduziria muito o processamento.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Olha, EU não faria isso. Pq o meu ponto maior aqui é que se daqui X tempo o BrasilAPI ficar fora do ar, eu quero garantir que eu tenho esse dado pra continuar operando até trocar por uma nova fonte. Isso partindo do ponto que minha infra seria stateless, eu posso desligar e ligar quando eu quiser que tudo volta. O redis nesse caso, até onde eu mexi, seria pra algo mais “temporário” a um nível curto de tempo e não longo prazo. N da pra confiar em ter um cache de 2/3 meses sem de fato persistir em algum lugar, igual eu sugiro persistir o arquivo.
      Faz sentido?

  • @ohugosz
    @ohugosz 7 месяцев назад

    É simples de resolver...

  • @sidneiferreira5542
    @sidneiferreira5542 7 месяцев назад

    Eu fiz algo parecido, mas com arquivo local, baixei o arquivo do banco do IBGE e implementei uma arvore binaria de busca com os estados/municípios já ordenados, sem a arvore ficou muuuuuuuuuuuito lento.

  • @MichelLacerda
    @MichelLacerda 7 месяцев назад

    Para não depender de uma API eu baixei os dados o IBGE uma vez e salvei usando postgis

  • @JavaxTv
    @JavaxTv 7 месяцев назад +1

    Ter um backend independente rodando um job na brasil API tipo toda semana, novamente, independente do website e gerando esses arquivos na S3, e seu front buscar direto da s3 tb seria um caminho? ou seria mto overkill? dessa forma estariamos tentando garantir que até mesmo na 'primeira' interaction o front não dependa do brasil api naquele momento

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Acho que não seria overkill. Mas tu pode aproveitar o próprio request do usuário pra resolver o problema, forma que eu trago no vídeo. Ai você economiza ter algo ligado sempre e só define a cache policy

  • @ribastudio
    @ribastudio 7 месяцев назад +2

    vai fazer a parte da S3? Sim ou com certeza?

  • @irenaldojs
    @irenaldojs 7 месяцев назад +17

    Quem ai pensou em um arquivo javascript exportando um objeto com { estado : [municipios] } levanta a mão 😂

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +2

      Na hora da emergência 👀

    • @tiagocunhafernandes6607
      @tiagocunhafernandes6607 7 месяцев назад +6

      O cache não é diferente disso…. É praticamente esse arquivo que está salvo no s3

  • @magaiasoueu
    @magaiasoueu 7 месяцев назад +1

    Caso por algum motivo você não deseje depender da disponibilidade de um serviço externo como S3, salvar em memória da aplicação seria uma escolha ruim? Fazendo um update semanal ou requisitando pra brasilApi quando o sistema reiniciar por algum motivo

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Não seria! No final do vídeo eu ainda sugiro pra salvar em memória quando o serviço sobe ou na hora que recebe o request 🤝

  • @GamersInActionPlay
    @GamersInActionPlay 7 месяцев назад +1

    O meu interesse é mais a questão de como realizar esse multiplo dropdown, pois isso ae quando precisei realizar em flutter não consegui achar nenhum conteúdo bom sobre, acabei aprendendo com um professor da Academia do Flutter, mas antes disso eu nem era aluno, então a dificuldade era maior.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Saquei! Na web ele é nativo! Basta usar 2 tags select com options. Que tudo funciona

  • @lucastrias
    @lucastrias 7 месяцев назад +1

    Cara, 100k requests de 5000 municípios que atualizam uma vez por século eu sirvo do meu relógio, overengineering sem tamanho discutindo custo. E dois drop-down nao são um auto complete, este sim um problema legal de resolver

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Fala Lucas! Tudo bom? Como eu trouxe no vídeo, a própria API sugere que não façamos o full scan e talz. Tentei propor uma forma de consulta sob demanda e que nos traga independência caso eles venham a cair. A lógica em si pode ser aproveitada em vários outros cenários.
      Seja manual ou automático tu vai ter que baixar. Mas é isso, no final não tem jeito certo 🤝

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      E como o volume em si é pequeno, fazer o autocomplete no browser com um throttle/denounce fica sussa, pq tu baixou os dados na hora que seleciona o estado /o

  • @dipereira0123
    @dipereira0123 7 месяцев назад +1

    Talvez eu tenha perdido essa explicação no video, mas alguém sabe explicar o pq os correios simplesmente não disponibilizam uma base?

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      O IBGE disponibiliza uma base. Que o próprio BrasilAPI usa, mas o ponto acaba sendo disponibilidade disso mesmo.

  • @aoli_lab
    @aoli_lab 7 месяцев назад +1

    Muitos municípios mudam de nome com o tempo... Tem que se ligar nisso.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Sim! Por isso sugiro um update mensal no final do vídeo /o

  • @Jack-ss4re
    @Jack-ss4re 7 месяцев назад

    Uma duvida(sou iniciante), a ideia de criar um backend e criar um S3 para guardar os dados do BrasilAPI não atrapalha na performance? Já que quando o frontend fizer a requisição pro nosso backend, o nosso backend vai ter que consultar o dado na S3 pra retornar? Talvez eu tenha entendido errado?

    • @Jack-ss4re
      @Jack-ss4re 7 месяцев назад

      Tipo, não seria melhor salvar os dados no nosso próprio servidor backend? Isso seria possível?

  • @ThaylorCarvalho
    @ThaylorCarvalho 7 месяцев назад +2

    Manda a implementação!

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      O link do whiteboard com o código base tá na descrição /o aí fica faltando só a parte do s3 mesmo hehe

  • @mrblackcarneiro
    @mrblackcarneiro Месяц назад

    A solução é simples. Salva os estados e municípios num banco de dados relacional. Em seguida, cria uma view materializada ou usa um redis da vida para cache. Pronto, é só criar seus endpoints chamando essa estrutura.

  • @rodolfosantos2120
    @rodolfosantos2120 7 месяцев назад +1

    Agora coloca listagem de bairros nesse BO aí

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Existem limites Rodolfo ahahahahh mas por CEP a lógica seria parecida /p

  • @carlosamorim94
    @carlosamorim94 7 месяцев назад +1

    Adoro seu conteúdo, pois não aprendemos a simplesmente codar igual maluco, vc ensina ENGENHARIA DE SOFTWARE e pensamento analítico!

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Valeu demais pelo comentário 😍 a meta é essa mesma, ir variando nos assuntos e sempre trazer problemas legais 🤝

  • @luizvaz
    @luizvaz 7 месяцев назад

    Caramba, ninguém conhece _Rate Limit_ e _Redis_ ???
    Outra coisa, não haverá novos municípios.
    A constituição de 1988 proibiu a criação de novos.

  • @brunogomes2909
    @brunogomes2909 7 месяцев назад +1

    Pelo amor de Deus Mario! Tem criança chorando e idoso passando mal aqui esperando a continuação desse vídeo com a implementação rs

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад

      Hahahahahah olha! Tirando a parte do S3. O código do vídeo tá lá no miro, só pegar /o

  • @jadsonmedeiros6815
    @jadsonmedeiros6815 7 месяцев назад +1

    Na minha humilde opinião, usar sistema para dependendo de serviços externos é perigoso e se deve ao máximo desacoplar isso. Mesmo fugindo de chamadas constantes ao BrasilApi, ainda teria um serviço de backend externo que meso sendo mais robusto, também pode ficar indisponível com muitas chamadas. Eu ainda iria de uma chamada a api para pegar os dados uma vez no mês por exemplo só para atualizar os dados que eu inseri localmente, já que não mudam tão frequentemente.

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Total! No finalzinho do vídeo eu levanto essa

  • @dooh2
    @dooh2 7 месяцев назад +1

    Eu só pensei em pesquisar no gpt 😂🤦🏻 (iniciante na área é f#da😂)

    • @DevSoutinho
      @DevSoutinho  7 месяцев назад +1

      Hahahahahaha faz parte! O importante é botar em prática pra garantir que ele passou certo

  • @fernandobranco2443
    @fernandobranco2443 7 месяцев назад +1

    Boa Esperança do Norte (MT) é a primeira cidade a estrear nas urnas desde 2012, mas realidade ainda destoa de surto de emancipação dos primeiros anos de redemocratização no Brasil
    Cidade foi criada esse ano 😮

  • @AlexFelipeDev
    @AlexFelipeDev 7 месяцев назад +1

    Nesses casos que o dado não muda tanto, eu curto a ideia de salvar em armazenamento local, como é o caso de um SQLite da vida ou algo similar.
    Quanto a atualização, pode usar flags que impedem de buscar online e pegar offline inicialmente, então aplica uma regra para alternar o valor da flag, seja usando datas ou algum tipo de websocket/feature flag que permite uma aplicação externa de indicar quando é necessário fazer a atualização.

  • @italopereirabarbosa733
    @italopereirabarbosa733 7 месяцев назад +1

    Mario parece que tu vê vídeo de uma galera do Tibia viu kkkkk

  • @FelipeMarkson
    @FelipeMarkson 7 месяцев назад +1

    Muito legal! Um pouco de over engineer... Mas bem didático.
    Acho que minha solução seria SQLite em memoria + arquivos sem S3.
    Novos municípios são muito raros de acontecer.
    Quando acontecem, são geralmente inexpressiveis em receita.
    Quando for necessário, só fazer uma mudança no arquivo que está no repositório git :)

  • @FilipeASantana
    @FilipeASantana 7 месяцев назад

    Você não pode ser preso!