Giter Site home page Giter Site logo

cc-webproject's Introduction

Personal Web Project:

License: GPL v3 Build Status CircleCI Deploy codecov

Queremos tener un servicio web Restful que proporcione servicio a una futura aplicación con la que los clientes puedan ver los productos ofertados, comprar o visualizar sus compras anteriores y gestionar las ventas de la tienda.

Arquitectura:

  • En el proyecto nos vamos a basar en una arquitectura basada en microservicios, vamos a intentar implementar varios microservicios.

  • Enlace a la documentación extendida de la arquitectura.

Integración continua:

  • Para la integración continua en Ruby, vamos a usar Travis
  • Para la integración continua en Python, vamos a usar Circleci.

Automatizar la ejecución:

buildtool: Catalogo/rakefile         # Rake para Ruby 
buildtool: Cesta/tasks.py         # Invoke para Python

Enlace a la documentación extendida de la integración continua de mi proyecto.

Contenedores:

Hemos levantado nuestro microservicio Catalogo, en el cual usamos Ruby. Usamos foreman como administrador, este llama al gestor de procesos web rackup, por último lo hemos automatizado incluyéndolo en nuestro archivo Rakefile.

Para levantar procesos web:

    rake foreman env={numero de procesos}

Enlace a la documentación extendida del microservicio Catalogo

Desplegamos nuestro microservicio en un contenedor Docker, lo subimos al registro de Docker-Hub y por último lo hemos desplegado el contenedor Docker en Heroku.

Enlace a la documentación extendida del contenedor de mi proyecto.

Medición de prestaciones:

Prestaciones: Cesta/taurus.yml

Enlace a la documentación extendida del microservicio Cesta

Hemos medido las prestaciones del microservicio nombrado con Taurus. Se estimaba como buen rendimiento unas 1000 peticiones/s con 10 usuarios concurrentes. Después de algunos ajustes se ha alcanzado la meta propuesta.

Enlace a la documentación extendida de la medición de prestaciones

Provisión y Despliegue:

Hemos realizado dos despliegues, uno en local y otro en azure, hemos elegido Vagrant para la orquestación de maquinas virtuales, para el aprovisionamiento Ansible, para el despliegue Fabric. Posteriormente creamos un script que gestiona todo en conjunto.

Enlace a la documentación extendida Provición y Despliegue

cc-webproject's People

Contributors

mati3 avatar

Watchers

 avatar  avatar

Forkers

natalia2911

cc-webproject's Issues

Tema

Especificar a groso modo el tema de mi proyecto.

License

Añadir una licencia a mi proyecto

gitignore

Añadir un gitignore a mi proyecto

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.