Microservicios con Spring Boot - Creando el Primer Microservicio

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ธ.ค. 2024

ความคิดเห็น • 95

  • @RaulPortilloAlvarez
    @RaulPortilloAlvarez  2 ปีที่แล้ว +4

    HOLA!!!, si es de tu agrado puedes apoyarme invitándome un café ☕: www.paypal.com/donate/?hosted_button_id=GW79NV9RF22H6

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola Jose, de momento no dispongo de mucho tiempo para hacer cursos de pago, espero en un futuro poder hacerlos, saludos.

  • @uri8736
    @uri8736 10 หลายเดือนก่อน +2

    es el primer tutorial de microservicio que me encuentro en el que van al lio directamente, cuando se tiran por las ramas a explicar cada detalle me pongo de los nervios. Excelente contenido.

  • @takahirokizuga3201
    @takahirokizuga3201 2 ปีที่แล้ว +10

    Soy de ese Dev que no siguen la ruta de aprendizaje y toma el toro por los cuernos y la cola, y tu forma de explicar es sin duda excepcional, muchas gracias!, Recomendare este curso con mi equipo de trabajo dado que estamos aprendiendo Microservicios.

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Gracias por tu comentario y tu apoyo, espero les sea de muchas utilidad! Éxitos.

  • @nabemohamed5732
    @nabemohamed5732 2 ปีที่แล้ว +2

    Explicación suber tranquila y asentada.
    El conocimiento no compartido es una receta médica sin letras.....
    Saludos desde Mexico...🥰🥰🥰🥰

  • @jeimyjulianamelendezcorder239
    @jeimyjulianamelendezcorder239 6 หลายเดือนก่อน +1

    Wow, que buen video, me ha sido muyy útil ahora de regreso en el mundo del desarrollo !!, mil gracias

  • @gabrielfelipeaguilarbarrer9171
    @gabrielfelipeaguilarbarrer9171 2 ปีที่แล้ว +6

    muchas gracias ya sabia cosas de spring pero me has ampliado el panorama sigue con tu trabajo, de verdad ayudas mucho a futuras generaciones

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Gracias Gabriel, no olvides suscribirte, dejar tu me gusta y compartir para hacer crecer el alcance del canal. Saludos.

  • @danielcamachof
    @danielcamachof 2 ปีที่แล้ว +1

    Brother, muchas gracias por compartir tu conocimiento, un saludo desde Bogotá, Colombia!

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว +1

      Hola Daniel, gracias por el apoyo, no olvides compartirlo y suscribete para no perderte el contenido nuevo, saludos.

  • @silvioramirezhdez1847
    @silvioramirezhdez1847 3 ปีที่แล้ว +4

    Muchas gracias por el aporte, felicitarte por la claridad en tus explicaciones y lo valioso del contenido que compartes. No me perdería por nada esta serie de videos, contenido a fin a los recursos que tocamos cada día en el desarrollo de aplicaciones modernas y sobre todo un excelente modelador detrás de la enseñanza que sabe transmitir el conocimiento. Quedo al pendiente de cada contenido, nuevamente muchas gracias.

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  3 ปีที่แล้ว +1

      Gracias por el comentario Silvio, muy amable, no te pierdas ningún video, vamos a seguir tocando temas que considero interesantes. 👋👍

  • @neorevolutions222
    @neorevolutions222 3 ปีที่แล้ว +2

    gracias por el aporte. muy buen video. facil explicacion. rapida y concisa. se agradece saludos desde argentina

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  3 ปีที่แล้ว

      Gracias por el apoyo Cristian! Pronto subiré mas videos, saludos.

  • @rich4r
    @rich4r 7 หลายเดือนก่อน +1

    gracias por compartir tu conocimiento , excelente video , vere toda la serie

  • @lucaslopez2902
    @lucaslopez2902 2 ปีที่แล้ว +2

    hola, recién descubro este canal y obviamente me lo agendé y voy a ver toda la lista para introducirme en microservicios, muchas gracias por el aporte

  • @pabloreyes6428
    @pabloreyes6428 2 ปีที่แล้ว +1

    Muy buen video, me gusta tu manera de explicar. Ya me suscribí. Abrazo grande capo.

  • @sergioramirez4159
    @sergioramirez4159 2 ปีที่แล้ว +4

    El video esta bastante practico, unas sugerencias que puedo darte es que utilices buenas practicas de desarrollo de software, por ejemplo usar principios SOLID, crear interfaces pensando en que en un futuro la base de datos se pueda cambiar, tampoco usas servicios para la lógica de negocios sino que de una mandas a llamar el reposity en el controller, lo cual me parece una mala practica, pero a modo de intro esta bien, pero creo que puedes aplicar las buenas practicas desde el inicio

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว +1

      Gracias Sergio, se viene una serie solo de patrones de diseño y buenas prácticas en java, después de esta, un saludo.

    • @sergioramirez4159
      @sergioramirez4159 2 ปีที่แล้ว

      @@RaulPortilloAlvarez Excelente

    • @secundariab.2741
      @secundariab.2741 2 ปีที่แล้ว +2

      Me imagino que lo hace para solo dar entender las tecnologias que se aplica, estos videos ayudan a complementar cuando ya dominas la parte de desarrollo, ya que ayuda como armar todas las dependencias

  • @williamdiaz8900
    @williamdiaz8900 2 ปีที่แล้ว +1

    Muy buen video gracias por esta serie. Un nuevo subscriptor 👍

  • @corichemundial801
    @corichemundial801 2 ปีที่แล้ว +1

    Geniaaaaaal!!! gracias !!

  • @vianeyvargas7736
    @vianeyvargas7736 หลายเดือนก่อน

    Está actualizado? Java 21 ? Spring 3 en adelante ? OpenTelemetry en vez de Zipkin?

  • @estebandavilaandrade6510
    @estebandavilaandrade6510 2 ปีที่แล้ว +1

    Excelente explicacion, quisiera preguntarte si tienes algun ejemplo con Gradle, gracias por compartir conocimiento!!!

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว +1

      Hola Esteban, gracias por el apoyo, momentáneamente solo con Maven, pero hay temas aún pendientes, posiblemente migre algún proyecto a gradle como ejemplo. Saludos

  • @Pool-Petter-Hijuela
    @Pool-Petter-Hijuela 3 ปีที่แล้ว +4

    Gracias por el video, voy a disfrutar mucho esta serie de videos. Tengo una consulta, como se debe guardar estos microservicios en un repositorio. Deben ir todos dentro de un repo solo separados por carpetas (product-microservice, order-microservice...). O debe ir cada microservicio en un repositorio, o quizá cada microservicio en una rama?

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  3 ปีที่แล้ว

      Hola, personalmente te recomiendo guardar cada proyecto en su propio repositorio, un saludo.

  • @rubenlanda8171
    @rubenlanda8171 2 ปีที่แล้ว

    Muy buen curso e interesante y perfecto Gracias por el aporte, abusando el material teorico q presentas no lo podras compartir ? ? Saludos

  • @vianeyvargas7736
    @vianeyvargas7736 หลายเดือนก่อน

    Dónde en qué página compro todo el curso termino hasta el vídeo 12 Pero falta .... Dónde puedo comprar el curso ?

  • @raulnet8790
    @raulnet8790 2 ปีที่แล้ว +1

    Buen aporte,gracias,mi consulta es tu servicio esta corriendo en el puerto 8080,hay q instalar tomcat entonces para hacer correr estos servicios en el postman?

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola Raúl, si debes tener tomcat en tu IDE de desarrollo. Saludos.

  • @ogrfgd
    @ogrfgd 2 ปีที่แล้ว +1

    Buen aporte. Mi pregunta es por que no tenes una capa de servicio? es recomendable tener esa capa?

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola Lucas, las capas en las que desees modular tu desarrollo dependera de la necesidad que se tenga, una capa de servicio es perfectamente aplicable si lo deseas. Saludos

  • @v2_user
    @v2_user 2 หลายเดือนก่อน +1

    Ha pasado mucho tiempo este video, aun puede servir como base para aprender los microservicios ?

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 หลายเดือนก่อน +1

      @@v2_user totalmente, algunas dependencias pueden haber cambiado algunas configuraciones pero la base es la misma. Saludos

    • @v2_user
      @v2_user 2 หลายเดือนก่อน +1

      @@RaulPortilloAlvarez Muchísimas gracias...! De todas formas estoy realizando paso a paso lo que va enseñando en los videos, cambiando las versiones en el POM y usando JDK 11. Saludos, muy buen contenido.

  • @kaag1983
    @kaag1983 2 ปีที่แล้ว +1

    que tal, que versión de IntelliJ IDEA estas usando

  • @AdrianSanchez-yn2gd
    @AdrianSanchez-yn2gd 8 หลายเดือนก่อน

    Saludos estoy buscando crear un microservicio como el de este video pero con MySQL me podrías por favor recomendar si ya creaste uno

  • @RIKKIECK
    @RIKKIECK 2 ปีที่แล้ว +1

    Exelente Video pero tengo una consulta como hiciste el diagrama???

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว +1

      Hola Ricardo, el diagrama inicial que vemos en este video, lo encontré en Internet, ideal para ejemplificar la introducción, los siguientes diagramas de la serie los elaboré el draw.io

    • @RIKKIECK
      @RIKKIECK 2 ปีที่แล้ว +1

      @@RaulPortilloAlvarez Super muchas gracias...

  • @RLAPERU2
    @RLAPERU2 2 ปีที่แล้ว +1

    Una consulta, si quiero llevar este tipo de proyecto spring boot mricoservicos en AWS que servicio sera el mas recomendable? Elastic Container Service, Lambda , Beanstalk ?

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola, dependerá mucho del diseño del sistema y como estará distribuido, todos tienen sus propios beneficios, no quiero decir, usa éste o éste, depende mas bien del alcance de tu sistema, pero para recrear un laboratorio te valen los 3. Saludos.

  • @jhoanoswaldoomevega3816
    @jhoanoswaldoomevega3816 ปีที่แล้ว

    Una dudita, el ejemplo es un Microservicio con Orquestación? Y si es así cuál es "la clase coordinadora"?

  • @RustySilver-w1q
    @RustySilver-w1q 2 ปีที่แล้ว +1

    Por que el Id de product es String ?? pasa algo si lo dejo como Long ?? saludos y gracias por tus videos

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Si exploras las coleccion de documentos en mongodb, verás que es una cadena alfanumérica.

    • @RustySilver-w1q
      @RustySilver-w1q 2 ปีที่แล้ว +1

      @@RaulPortilloAlvarez tendré que ir a echar un vistazo, es primera vez que paso a mongo. un abrazo y gracias por responder tan rápido :)

  • @FlacoBandicoot1
    @FlacoBandicoot1 ปีที่แล้ว +1

    Como puedo hacer llaves foraneas con 2 microservicios creados en Spring ?

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  ปีที่แล้ว +1

      Hola, en la arquitectura de Microservicios distribuidos el concepto de llave foranea cambia ya que un microservicio tiene su propia base de datos independientemente este relacionado con otro, trataré de hacer algunos videos al respecto. Saludos.

  • @francogutierreztamayo475
    @francogutierreztamayo475 2 ปีที่แล้ว +1

    Es necesario lo del minuto 4:33 ??? es que Intellij me pide dinero para instalarlo, no hay otro IDE para eso??

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว +1

      Hola Franco, puedes usar la versión de prueba de intellij o puedes usar eclipse, vscode o netbeans, no es estrictamente necesario el mismo ide, puedes usar STS, también. El paso q mencionas no es obligatorio. Se ejecuta igualmente cuando inicias el proyecto, saludos.

    • @omarjbz32
      @omarjbz32 2 ปีที่แล้ว +3

      O el vsCode, yo ocupo ese xD

  • @SaysAnX
    @SaysAnX 2 ปีที่แล้ว +1

    como sería si la url que me da spring boot la metiera en fetch de javascript?

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola, es la que colocamos en postman en este video en especifico, mas adelante usamos eureka y las APIs cambian.

  • @vktop2
    @vktop2 ปีที่แล้ว

    Buen video, tengo una duda, por ejemplo en un sistema tengo un microservicio Clientes y este servicio tendrá en su base de datos una tabla con los tipos de documento del cliente, en este sistema también podría existir un microservicio Usuario y también podría tener en su base de datos una tabla tipo de documento de usuario, en este caso como se trabajan estos datos que afectan a mas de un microservicio ya que los tipos de documentos son comunes entre ambas entidades?; yo deberia de crear 2 tablas tipo documento una en cada microservicio? Gracias

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  ปีที่แล้ว +1

      Hola Víctor, no, si es una entidad en común, debes crear un microservicio separado y relacionarlo con los microservicios via DTO por ejemplo. En un futuro abordaré ese tipo de escenarios.

  • @cristiangodoy7087
    @cristiangodoy7087 2 ปีที่แล้ว +1

    Hola, gracias por el aporte, consulta, tienes página web o algún medio de contacto (email)? quiero saber si haces algún tipo de clase particular para ir viendo temas con springboot, saludos.

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola Cristian, gracias por el apoyo, momentáneamente estoy bastante saturado en mi agenda, pero me puedes contactar a rauledg.portillo@gmail.com, saludos.

  • @MauricioProgressive
    @MauricioProgressive ปีที่แล้ว

    Hola Spring Boot se utiliza como back-end de proyectos de react o angular? Y si es así, al momento de hostear se requiere un Host para el back y otro Host para el front ? Gracias

    • @frankpaitan7009
      @frankpaitan7009 ปีที่แล้ว

      Spring boot puede ser utilizado de muchas formas , en lo que comentas si es utilizado como backend pero no exclusivamente de react o angular , sino que a cualquier frontend que este haciendo una petición al back (spring boot)

    • @giancarlo6396
      @giancarlo6396 ปีที่แล้ว

      @@frankpaitan7009 Disculpe, para los q venimos del back y recien iniciamos en el front, para el caso de Angular, que temas se debe ir conociendo basicamente para empezar a probar las aplicaciones hechas con java SpBoot en back (en una arq. Microservicios , SPA ) ? Gracias

  • @vktop2
    @vktop2 ปีที่แล้ว

    Buen video, tengo una consulta por ejemplo en este sistema tengo un microservicio Clientes y seguro tendrán tipo de documento así que es la db de clientes habrá una tabla tipo documento, en este sistema también podría haber un microservicio usuario y también podría tener en su base de datos una tabla tipodicumento en este caso cono se hace , se crean 2 tablas tipo documento una en cada microservicio? Gracias

    • @pablohoyos6987
      @pablohoyos6987 ปีที่แล้ว

      En teoría se podría hacer lo que planteas ya que cada microservicio es independiente del otro, pero siguiendo con tu ejemplo podrías optimizar dejando un solo microservicio de usuarios y a este le asignes roles, de esta manera comparten las mismas propiedades y a partir de ahí podrías generar un flujo para cada rol.

    • @vktop2
      @vktop2 ปีที่แล้ว

      @@pablohoyos6987 Hola gracias por la respuesta, el tema esta en que Clientes y Usuarios tienen propiedades bastante diferentes el tema de tipo documento es una de las pocas que comparten, Saludos

  • @erickenriquez5236
    @erickenriquez5236 2 ปีที่แล้ว +1

    en resources no me aparece esas opciones comop puedo hacer en ese caso

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola Erick, en la versión comunity creo que no hay autocompletado en archivos de propiedades, puede buscar si hay algún plugin.

  • @pepe3731
    @pepe3731 2 ปีที่แล้ว

    En qué servidor alojaste el microservicio?

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola, en la serie los estoy ejecutando en local, en el servidor tomcat integrado.

    • @pepe3731
      @pepe3731 2 ปีที่แล้ว

      @@RaulPortilloAlvarez gracias por responder, tengo una consulta estoy empezando en esto . Para tenerlo en producción qué servidor me recomiendas o uso el tomcat?

  • @francogutierreztamayo475
    @francogutierreztamayo475 2 ปีที่แล้ว +1

    no tendras el codigo fuente??, no entiendo que hice mal, porque cuando hago post solo me sale el _id y el _class, no se que habre copiado mal para que me guarde mal los datos, lo peor es que el envio supuestamente fue exitoso

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Claro Franco, en la próxima sección subiré los proyectos a git para que estén disponibles.

    • @gabrielfelipeaguilarbarrer9171
      @gabrielfelipeaguilarbarrer9171 2 ปีที่แล้ว +7

      hola franco yo utilizo eclipse como desarrollo me pasaba el mismo error lo solucione poniendo los getter y setters manualmente sin utilizar el lombok ojala pudiera añadir una imagen

    • @aceto1982
      @aceto1982 2 ปีที่แล้ว

      @@gabrielfelipeaguilarbarrer9171 gracias por el dato.

    • @marcosalas2930
      @marcosalas2930 2 ปีที่แล้ว

      @@gabrielfelipeaguilarbarrer9171 Te lo agradezco mucho amigo. Tambien uso Eclipse para realizar este ejercicio, le aplique lo que recomendaste y me comenzo a funcionar excelente el programa. Benditas sean las personas como tu que comparten su conocimiento y ayudar a los demas. Te deseo lo mejor!

    • @ricardoandresmarinpinilla6272
      @ricardoandresmarinpinilla6272 2 ปีที่แล้ว

      @@gabrielfelipeaguilarbarrer9171 buen dato, podrías explicarme como lo hiciste?, gracias.

  • @abelacevedo4249
    @abelacevedo4249 ปีที่แล้ว +1

    Llamas Al repositorio desde el controller eso es mala practica lo tenes q llamar en el servicio.

  • @angeloverardo4329
    @angeloverardo4329 2 ปีที่แล้ว

    Hola amigo. Buenos dias.
    Al intentar ejecutar el proyecto me sale el siguiente warnning:
    2022-09-15 13:57:34.257_[0;39m _[33m WARN_[0;39m _[35m3228_[0;39m _[2m---_[0;39m _[2m[ main]_[0;39m _[36mConfigServletWebServerApplicationContext_[0;39m _[2m:_[0;39m Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'productController': Unsatisfied dependency expressed through field 'productRepository'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.wannacode.productmicroservice.repository.ProductRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    A continuación, SB propone lo siguiente:
    ***************************
    APPLICATION FAILED TO START
    ***************************
    Description:
    Field productRepository in com.wannacode.productmicroservice.controller.ProductController required a bean of type 'com.wannacode.productmicroservice.repository.ProductRepository' that could not be found.
    The injection point has the following annotations:
    - @org.springframework.beans.factory.annotation.Autowired(required=true)
    Action:
    Consider defining a bean of type 'com.wannacode.productmicroservice.repository.ProductRepository' in your configuration.
    He intentado poner la anotación @Repository en la interfaz ProductRepository para solventar le error pero sin éxito.
    ***************************
    Me puedes ayudar con eso?
    Muchas gracias.
    Un saludo.

  • @SamuelSamOficial
    @SamuelSamOficial 2 ปีที่แล้ว +1

    porque en Postman solo me sale la consulta asi:
    [
    {},
    {}
    ]
    y en Mongo dice que se guarda com.sam.productmicroservice.entity.ProductEntity@948349

    • @ricardoandresmarinpinilla6272
      @ricardoandresmarinpinilla6272 2 ปีที่แล้ว +3

      crea los get y set aparte, sin usar el lombok.
      package com.Microservices.productmicroservices.entity;
      import org.springframework.data.annotation.Id;
      import org.springframework.data.mongodb.core.mapping.Document;
      //import lombok.Getter;
      import lombok.NoArgsConstructor;
      //import lombok.Setter;
      @Document(value = "product")
      //@Getter
      //@Setter
      @NoArgsConstructor
      public class ProductEntity {
      @Id
      private String id;
      private String productName;
      private String productDescription;
      private Double unitPrice;

      public String getid() {
      return id;
      }
      public void setid(String id) {
      this.id = id;
      }

      public String getproductName() {
      return productName;
      }
      public void setproductName(String productName) {
      this.productName = productName;
      }

      public String getproductDescription() {
      return productDescription;
      }
      public void setproductDescription(String productDescription) {
      this.productDescription = productDescription;
      }

      public Double getunitPrice() {
      return unitPrice;
      }
      public void setunitPrice(Double unitPrice) {
      this.unitPrice = unitPrice;
      }
      }

    • @Keyxer
      @Keyxer ปีที่แล้ว

      @@ricardoandresmarinpinilla6272 Comentario infravalorado, Muchas gracias amigo 🤙

  • @mcandia
    @mcandia 2 ปีที่แล้ว +1

    me sale error en productRepository.save(productEntity);
    @PostMapping
    @ResponseStatus(HttpStatus.OK)
    public void createProduct(@RequestBody ProductEntity productEntity){
    productRepository.save(productEntity);
    }

    • @RaulPortilloAlvarez
      @RaulPortilloAlvarez  2 ปีที่แล้ว

      Hola Marco, puedes revisar el código de la serie, encontrarás el enlace a repositorio en la descripción del video #5, saludos.