Mostrando entradas con la etiqueta Almacenamiento en Azure. Mostrar todas las entradas
Mostrando entradas con la etiqueta Almacenamiento en Azure. Mostrar todas las entradas

jueves, 8 de julio de 2010

Nuevas Windows Azure Tools para Visual Studio 2010

Como el titulo de este post lo indica, se ha liberado la una nueva versión de las herramienta para trabajar con Azure en Visual Studio 2010.
Este conjunto de herramientas permiten hacer de todo con los servicios de Azure: creación, configuración, depuración, despliegue, etc.; todo integrado en Visual Studio 2008 y Visual Studio 2010.

Listado de novedades y características.

New for version 1.2:

•Visual Studio 2010 RTM Support: Full support for Visual Studio 2010 RTM.
•.NET 4 support: Choose to build services targeting either the .NET 3.5 or .NET 4 framework.
•Cloud storage explorer: Displays a read-only view of Windows Azure tables and blob containers through Server Explorer.
•Integrated deployment: Deploy services directly from Visual Studio by selecting ‘Publish’ from Solution Explorer.
•Service monitoring: Keep track of the state of your services through the ‘compute’ node in Server Explorer.
•IntelliTrace support for services running in the cloud: Adds support for debugging services in the cloud by using the Visual Studio 2010 IntelliTrace feature. This is enabled by using the deployment feature, and logs are retrieved through Server Explorer.

Windows Azure Tools for Microsoft Visual Studio includes:
•C# and VB Project creation support for creating a Windows Azure Cloud Service solution with multiple roles.
•Tools to add and remove roles from the Cloud Service.
•Tools to configure each Role.
•Integrated local development via the Development Fabric and Development Storage services.
•Running and Debugging a Cloud Service in the Development Fabric.
•Browsing cloud storage through the Server Explorer
•Building and packaging of Cloud Service Packages.
•Deploying to the Windows Azure.
•Monitoring the state of your services through the Server Explorer.
•Debugging in the cloud by retrieving IntelliTrace logs through the Server Explorer.



Como indica uno de los puntos, se puede visualizar de manera integrada en el visual studio, el almacenamiento y monitorear el estado de nuestros servicios a traves del Server Explorer.

Tambien posee capacidades de filtro de informacion como se puede ver en la siguiente imagen



Si quieren aprender mas acerca de los filtros ingresen aquí

No se emocionen... por el momento es Read Only (No se pueden realizar inserciones, borrados ni actualizaciones de entidades), pero algo es algo, y tiene pinta de que lo van a seguir mejorando.

Saludos y espero les sea de utilidad!

jueves, 19 de noviembre de 2009

Windows Azure Storage Client v1.0

Windows Azure Storage Client v1.0

(Traducción del original escrito por Neil Mackenzie )

El paquete de Noviembre de 2009 del SDK de Windows Azure y herramientas ha introducido para la muchachada una API totalmente renovada StorageClient v 1.0 que ahora es una parte integral de la liberación de Azure, en lugar de ser sólo un ejemplo como sucedia anteriormente (Para más información consulte nuestros post anteriores acerca del tema de almacenamiento en Azure). La API de StorageClient incluye cerca de 70 clases repartidas en 3 espacios de nombres:

Microsoft.WindowsAzure.StorageClient.dll

La funcionalidad de cliente de almacenamiento se encuentra en Microsoft.WindowsAzure.StorageClient.dll.
Esta funcionalidad se expone a través de cerca de 70 clases repartidas en 3 espacios de nombres:


Microsoft.WindowsAzure
Microsoft.WindowsAzure.StorageClient
Microsoft.WindowsAzure.StorageClient.Protocol


El espacio de nombres Microsoft.WindowsAzure proporciona funcionalidad en cuenta de almacenamiento. El espacio de nombres Microsoft.WindowsAzure.StorageClient proporciona la funcionalidad de clave de almacenamiento del cliente.
La clase Microsoft.WindowsAzure.StorageClient.Protocol proporciona la funcionalidad de bajo nivel relacionados con las llamadas REST al servicio de almacenamiento de Azure y no está cubierto en este post.

Espacio de nombres Microsoft.WindowsAzure

El espacio de nombres Microsoft.WindowsAzure comprende clases relacionadas con las cuentas de almacenamiento y credenciales:


CloudStorageAccount
StorageCredentials
StorageCredentialsAccountAndKey
StorageCredentialsSharedAccessSignature


CloudStorageAccount expone información de cuenta y clave, y es capaz de analizar el archivo de configuración para recuperar esta información.
StorageCredentials es una clase base abstracta para StorageCredentialsAccountAndKey, el soporte a las credenciales de clave compartida,
y StorageCredentialsSharedAccessSignature usadas para crear firmas compartidas para el acceso a blobs.

La clase CloudStorageAccount se declara:


public sealed class CloudStorageAccount {
// Constructors
public CloudStorageAccount(StorageCredentialsAccountAndKey storageCredentialsAccountAndKey, Boolean useHttps);
public CloudStorageAccount(StorageCredentials storageCredentials, Uri blobEndpoint, Uri queueEndpoint, Uri tableEndpoint);

// Properties
public Uri BlobEndpoint { get; }
public StorageCredentials Credentials { get; }
public static CloudStorageAccount DevelopmentStorageAccount { get; }
public Uri QueueEndpoint { get; }
public Uri TableEndpoint { get; }

// Methods
public static CloudStorageAccount FromConfigurationSetting(String settingName);
public static CloudStorageAccount Parse(String value);
public static void SetConfigurationSettingPublisher(Action> configurationSettingPublisher);
public String ToString(Boolean exportSecrets);
public static Boolean TryParse(String value, out CloudStorageAccount account);

// Implemented Interfaces and Overridden Members
public override String ToString();
}


La clase CloudStorageAccount es esencial para el cliente de almacenamiento, ya que cualquier intento de utilizar el servicio de almacenamiento de Azure comienza por la creación de una instancia del mismo.
Los servicios de Windows Azure services utilizan el archivo de configuración para almacenar información de su cuenta tales como nombre y clave.
Una simple llamada al método estático FromConfigurationSetting() será suficiente para crear un CloudStorageAccount objeto correctamente inicializado a partir del archivo de configuración.
Sin embargo, un intento de hacer esto producirá un error en tiempo de ejecución porque no se ha especificado un valor de configuración de Publisher.
La solución a esto es invocar la SetConfigurationSettingPublisher() en el nuevo método OnStart() para el rol.
El código necesario para hacer esto es bastante retorcido, y la técnica más simple para hacerlo funcionar es la de copiarlo directamente del ejemplo de los thumbnails que viene con el SDK de Azure v1.0.


Es posible ignorar al archivo de configuración y crear un objeto de CloudStorageAccount de un objeto StorageCredentialsAccountAndKey como se muestra a continuación:

StorageCredentialsAccountAndKey storageCredentialsAccountAndKey = new StorageCredentialsAccountAndKey("ACCOUNT_NAME",
"ACCOUNT_KEY");
CloudStorageAccount cloudStorageAccount = new CloudStorageAccount(storageCredentialsAccountAndKey, true);


Esto hace que el cliente de almacenamiento vaya directamente contra el almacenamiento en la nube con la cuenta indicada.
Tenga en cuenta que la sustitución del ACCOUNT_NAME y ACCOUNT_KEY con las de almacenamiento de desarrollo no causa que sea usado el almacenamiento de desarrollo y causa un error de ejecución.
Sin embargo, la propiedad DevelopmentStorageAccount es un objeto pre instanciado del tipo CloudStorageAccount que puede ser utilizado para el acceso al almacenamiento de desarrollo:

CloudStorageAccount cloudStorageAccount = CloudStorageAccount.DevelopmentStorageAccount;


Espacio de nombres Microsoft.WindowsAzure.StorageClient

Este espacio de nombres es el núcleo del cliente de almacenamiento y dispone de casi 40 clases de apoyo a la gama completa de funcionalidad para blobs,
las tablas y las colas. Las clases son enumeradas aquí, junto con un breve resumen del uso de las mismas. Casi toda la funcionalidad se ofrece tanto en forma sincrónica y asincrónica. Por ejemplo, la clase CloudQueue soporta adición de mensajes sincrónica y asincrónica a una cola a través de los siguientes métodos:

public void AddMessage(CloudQueueMessage message, TimeSpan timeToLive);
public void AddMessage(CloudQueueMessage message, TimeSpan timeToLive);
public void AddMessage(CloudQueueMessage message);
public IAsyncResult BeginAddMessage(CloudQueueMessage message, TimeSpan timeToLive, AsyncCallback callback, Object state);
public IAsyncResult BeginAddMessage(CloudQueueMessage message, AsyncCallback callback, Object state);
public void EndAddMessage(IAsyncResult asyncResult);

Hasta la proxima!