Creación de cachés en Amazon EC2
La creación de una caché de servicio de mapas, imágenes o globo de ArcGIS en Amazon Elastic Compute Cloud (EC2) es diferente en varios aspectos de la creación de cachés fuera de la nube:
- Tendrá a su disposición diversos tamaños y precios de instancias.
- Tendrá diversas ubicaciones en la nube en las que colocar la caché.
Este tema explica los factores mencionados de manera más detallada.
Selección del tamaño y precio de una instancia
Amazon EC2 ofrece instancias de diversos tamaños y especificaciones. Cada una tiene su propio precio por hora de uso. Las instancias mayores, en especial las que tienen abundante memoria, pueden generar teselas muy rápidamente. Cuanto más pequeñas son las instancias, más lentamente generan las teselas, aunque también su precio es menor.
Podrá crear la caché en el volumen de almacenamiento de bloque elástico (EBS) de Amazon asociado utilizando una instancia potente. Una vez concluida la creación de la caché, podrá separar el volumen de EBS y asociarlo a la instancia normal (que puede ser menor y, por consiguiente, más económica). Seguidamente podrá terminar la instancia potente utilizada para la creación de la caché. De este modo, podrá aprovechar la potencia de la nube para generar memorias caché sin comprometer las relativamente caras instancias durante más tiempo del necesario.
Tendrá que tomar una decisión entre economía y velocidad. Utilizar una instancia de baja potencia de bajo coste por hora no siempre es la opción más económica, ya que el coste total dela caché dependerá del número de horas dedicadas a crear teselas. Por el otro lado, también las instancias más potentes pueden suponer un mayor coste total de caché: a pesar de dedicar menos horas a guardar en caché, pagará un mayor precio por hora.
Utilizando un caché de pruebas pequeño (tal vez del tamaño de una ciudad mediana) y una Amazon Machine Image (AMI) o una plantilla del sitio, puede realizar pruebas relativamente económicas or con distintos tipos de instancias con el fin de averiguar cuál es la más económica para su caso.
Los tipos de instancias de EC2 potentes son idóneos para actualizaciones programadas de caché ya que muchos flujos de trabajo de actualización son sensibles al tiempo.
Selección del número de instancias de servicio de mapas a utilizar al guardar en memoria caché
Cada instancia de EC2 tiene un determinado número de núcleos virtuales de CPU. Este número será visible cuando seleccione el tipo de instancia en el asistente para Iniciar instancia. El número de núcleos puede ayudarle a determinar cuántas instancias del servicio de procesamiento CachingTools que deberá dedicar para las tareas de almacenamiento en caché. Si utiliza demasiadas instancias de servicio sobrecargará sus CPU, y si utiliza demasiado pocas estará infrautilizando las CPU.
Aunque el mejor número se puede conseguir con algún procedimiento de prueba y error, un buen punto de partida es permitir un máximo de 2n + 1 instancias del servicio CachingTools, donde n es el número de núcleos virtuales en una sola instancia de EC2 en su sitio. Observe que esta recomendación es diferente de la Ayuda de ArcGIS Server para entornos locales, en que se sugieren n+1 instancias como punto de partida.
Escalado manual y escalado automático
Al construir un caché grande resulta tentador configurar activadores del escalado automático que aumenten automáticamente el número de instancias de EC2 que trabajan sobre el caché a medida que el uso de la CPU aumenta. No obstante, el escalado automático resulta más adecuado para manejar picos inesperados de tráfico. Al crear los cachés ya sabe que se necesitará una gran cantidad de potencia de cálculo. Por consiguiente, tiene más sentido iniciar todas las instancias necesarias antes de construir el caché, que esperar a que se inicien secuencialmente mediante activadores de escalado automático.
Decisión de dónde guardar la memoria caché
Tal y como se describe en Estrategias para la transferencia de datos a Amazon Web Services, existen diversos tipos de ubicaciones en las que podrá guardar los datos. La primera vez que cree la memoria caché, la escribirá en un volumen de EBS asociado a la instancia de EC2. Este volumen está incorporado en el momento de construir el sitio, y es el lugar ideal para ubicar la caché si el volumen es lo suficientemente grande. Si el volumen es demasiado pequeño, tendrá que crear y asociar otro volumen, y registrar en el mismo un directorio de caché de servidor.
No cree una memoria caché en la unidad C: de la instancia de EC2. Si alguna vez termina la instancia, la caché se perderá.
En última instancia, quizá convenga mover la caché, o colocar una copia de la misma, al Amazon Simple Storage Service (Amazon S3). Si solamente le interesa mantener una copia de seguridad en Amazon S3, puede crear una instantánea de EBS. Una instantánea hace una copia de seguridad de la unidad en Amazon S3, y podrá emplearla rápidamente para crear un nuevo volumen de EBS si el volumen existente sufre algún problema.
También podrá servir las teselas desde Amazon S3, y acceder a las mismas como capa de teselas personalizadas utilizando alguna aplicación de JavaScript, Flex o Silverlight. En este caso, la ventaja consiste en que las teselas no dependerán del funcionamiento de un servicio, y opcionalmente podrá utilizar Amazon CloudFront para agilizar la difusión de teselas a todo el mundo a través de Internet. Si desea mover teselas a Amazon S3 con esta finalidad, podrá transferirlas desde el volumen de EBS utilizando las API de Amazon Web Services o una aplicación de terceros para Amazon S3. También podría hacerlo si creó la caché fuera de la nube.