JavaRush /Blog Java /Random-ES /Implementar una aplicación Java en la plataforma en la nu...
Евгений
Nivel 41

Implementar una aplicación Java en la plataforma en la nube de Amazon Web Services (AWS)

Publicado en el grupo Random-ES
¡Hola a todos! Todo desarrollador, tarde o temprano, tiene que implementar sus aplicaciones en la nube. En mi caso, después de desarrollar el bot de Telegram @rabotaUkraineBot, simplemente fue necesario encontrarle un hosting decente. La idea misma de desarrollar un bot y las herramientas utilizadas para su implementación se describen en un artículo aparte . Los candidatos para elegir una plataforma en la nube fueron los servicios de cuatro gigantes conocidos: Amazon Web Services (AWS), Google, Azure y Heroku. Al elegir hosting, establezco las siguientes prioridades: precio mínimo, facilidad de implementación, disponibilidad de servicios adicionales, flexibilidad. No los sumergiré en análisis y comparaciones; les diré de inmediato quién es el ganador: AWS. Implementar una aplicación Java en la plataforma en la nube de Amazon Web Services (AWS) - 1¿Por qué AWS, te preguntarás? Porque:
  • un año de uso gratuito de AWS Free Tier , los recursos gratuitos dentro de esta oferta son más que suficientes para mi tarea;
  • en AWS todo es elástico, es decir todo es flexible y elástico. Gracias a esto, no se requieren habilidades de DevOps al implementar su aplicación;
  • AWS ha estado invirtiendo mucho en desarrollo durante los últimos dos años, y cada mes aparecen nuevos servicios.
Ahora pasemos a preparar la aplicación y la implementación en la nube de AWS. Para facilitar su uso, se eligió el servicio Elastic Beanstalk para implementar la aplicación. Con él, descargas tu aplicación a través de tu navegador y ¡listo! Sí, sí, AWS configurará la infraestructura por sí mismo y asignará el conjunto de recursos necesario. Dado que mi bot está escrito en SpringBoot, todo lo que se necesita es crear una guerra usando spring-boot-maven-plugin y verificar que la aplicación funcione correctamente en un Tomcat implementado localmente . Una nota muy importante: antes de compilar, debe configurar el número de puerto 5000 en application.properties:
server.port=5000
Si no hace esto, tendrá que configurar los ajustes del puerto en la consola de AWS, lo que puede generar cargos adicionales por parte de AWS porque esto va más allá de proporcionar el servicio de capa gratuita de AWS. El proceso de implementación en sí no es en absoluto complicado y se realiza de acuerdo con la guía oficial Introducción al uso de Elastic Beanstalk . Características a las que debes prestar atención:
  • Al crear la aplicación, no olvide configurar el puerto como se indicó anteriormente;
  • al registrarse en AWS, necesitará una tarjeta de pago con al menos $1 en su cuenta (al validar la tarjeta, Amazon bloquea $1);
  • estudie detenidamente las limitaciones del servicio AWS Free Tier para no perder dinero;
  • Si después de la implementación la aplicación no funciona como se esperaba, encontrará registros de Tomcat en el menú Registros en el Entorno de su aplicación.
¿Qué hacer un año después de utilizar el período gratuito, te preguntas? Hay varias opciones para resolver el problema:
  1. empezar a pagar dinero según los recursos utilizados;
  2. cambiar al servicio Amazon Lightsail (allí es más barato);
  3. reescriba la aplicación usando AWS Lambda y obtenga alojamiento gratuito;
  4. abra una nueva cuenta con los servicios de nivel gratuito de AWS e implemente su aplicación allí, es decir, retrasar la resolución del problema un año más.
Actualmente, AWS sólo comprueba la unicidad del correo electrónico al registrar una nueva cuenta. En resumen: puede implementar fácilmente su aplicación en la nube de AWS, de forma muy rápida y absolutamente gratuita durante el primer año. Gracias a los servicios de AWS, podemos concentrarnos en el desarrollo, AWS hará el resto por nosotros, porque allí todo es elástico.
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION