¿Qué son las instancias?

Explicaré esto tomando Java como el lenguaje de elección, pero el concepto que se solicita puede clasificarse generalmente en la programación orientada a objetos.

En la programación orientada a objetos, la clase es el modelo de los objetos. lo que significa es que los objetos serán la entidad real que existirá en la realidad, pero se crearán como se describe en la clase.

Por ejemplo, si la clase dice que mis objetos tendrán un método llamado A (), entonces todos los objetos creados usando esa clase tendrán el método A (). En general, no hay nada como la instancia que se describe en forma de programación orientada a objetos.

Puedes pensar

“Pero hay algo llamado instancia que he escuchado muchas veces mientras aprendía programación oop”.

Los programadores generalmente se refieren al objeto como una instancia de la clase.

Lo que he observado después de jugar con Java durante unos 2 años es que a muchos principiantes les resulta difícil entender la diferencia entre instancia y objeto. Bueno, prácticamente no hay diferencia entre una instancia y un objeto, son sinónimo de lo mismo. Pero hay otra cosa llamada “Referencia al objeto” que es / son las variables que apuntan al objeto (también puede llamarlo instancia en lugar de objeto) que usará para usar los métodos y atributos de ese objeto (Nuevamente, puede llamarlo instancia en lugar de objeto).

EDITAR 1 : – La pregunta para la que respondí ahora se fusiona con otra pregunta, por lo que una explicación más detallada para cubrir ambas preguntas –

Una variable de instancia es una variable que se declara dentro de la clase. Se crea una copia de esta variable para todos los objetos creados. Una cosa importante es que se crea una copia de no todas las variables de instancia para todos los objetos, ya que la variable de instancia se puede declarar como estática y después de declararse como estática en la clase, solo una copia de esa variable estará presente en todos los objetos. es decir, los cambios a esta variable en un objeto serán visibles en todos los demás objetos.

Para recordar esto …

  • Cualquier variable de instancia no estática es una por objeto.
  • Cualquier variable estática es una por clase.

En primer lugar, debería ampliar su búsqueda de una solución, quizás también buscando en Rackspace y otros proveedores de PaaS en la nube y probablemente contratar a alguien que pueda ayudarlo con eso.

Ahora para responder a tu pregunta:

Comenzaremos con las definiciones: AWS es un IaaS, Azure tanto un PaaS como un IaaS (comenzaron como los primeros solamente).
IaaS significa Infraestructura como servicio, lo que, en términos simples, significa que alquilan servicios informáticos de bajo nivel a otros. En el caso de Amazon EC2, esas son máquinas virtuales que se ejecutan sobre hardware físico.

Usted alquila esas máquinas virtuales, que también se conocen como instancias, por hora. Esas instancias tienen características específicas, como por ejemplo cuánta memoria pueden consumir, qué tan rápida es la CPU, etc.

Dependiendo de sus necesidades, necesita una o más instancias. Normalmente, para mantener sus sistemas en funcionamiento necesita al menos 2 instancias y un equilibrador de carga.

Azure es algo similar si se usa como IaaS. Básicamente, una instancia representa una máquina virtual que ejecuta el sistema operativo Windows allí.

Si desarrolló utilizando sus bibliotecas PaaS, se ocupa de roles (que pueden ser, por ejemplo, un rol de cómputo para ejecutar sus servidores reales) y asigna instancias (al menos 2) a cada rol.

La instancia es una terminología que se utiliza para indicar una máquina virtual o servidor en la nube. Las instancias se clasifican en diferentes tipos en función de sus capacidades de memoria, CPU y nodos de procesador. Cuando desee configurar un servidor físico, usted decide qué marca de servidor desea (HP, etc.), qué tipo (Rack o Blade, etc.) y luego procede con la configuración. En la nube, tiene un portal de autoaprovisionamiento disponible que le permite elegir el tipo de instancia requerido según sus requisitos y lo lanza en cuestión de minutos

Las instancias son como engranajes, cada una más adecuada para un trabajo específico. Por encima de todo, es importante comprender la variedad de instancias disponibles y recordar que el dimensionamiento correcto, el escalado automático y el mantenimiento de la eficiencia son fundamentales para una implementación exitosa en la nube.

También estoy de acuerdo con Martin, debería hacer muchas más preguntas antes de pasar a la nube; de ​​lo contrario, podría crear ineficiencias y la expansión de VM / instancia (exagerada) que se escala junto con su aplicación.

Puede pensar en una instancia como una sola computadora / servidor físico. Cada instancia tiene CPU (uno o más núcleos) y almacenamiento similar a un servidor. La instancia / computadora tiene un precio por hora de funcionamiento.

La instancia no es nada de lo que AWS llama sus servidores virtuales.

Las instancias pueden ser EC2, RDS, etc.