Pessoal, segue uma pequena lista de coisas que estudei e foram super úteis na hora de fazer a prova de certificação 70-532 de Azure.

1 – The Service Management API provides programmatic access to much of the functionality available through the Management Portal.

2 – The Resource Manager A resource group is a container that holds related resources for an application. 
 
3 – XML Storage https://msdn.microsoft.com/en-us/library/azure/ee758708.aspx
 
 
 
4 – ASP NET Stateless -> Arr-Disable-Session-Affinity = True permitirá que cada request de um cliente caia em uma máquina qualquer. Se estiver TRUE, todos os requests de um mesmo cliente caem sempre na mesma máquina. 
 
5 – Always-on -> O site é carregado na memória a primeira vez, e nunca mais é descarregado. O padrão é OFF. 
 

6 – To move a role instance to another subnet edit the CSCFG file.

 
7 – Push Notification (TOAST -> VISUAL -> BINDING -> TEMPLATE -> TEXT) var payload = ‘<?xml version=”1.0″ encoding=”utf-8”?>
<toast>
<visual>
<binding template=”ToastText01”>
 <text id=”1″>’ + item.text + ‘</text>
</binding>
</visual>
 </toast>
8 – Azure Redis Cache
Classe: ConnectionMultiplexer – ConnectionMultiplexer connection = ConnectionMultiplexer.Connect(“contoso5.redis.cache.windows.net,ssl=true,password=…”);
Limite de conexões por cache: 10.000 clientes conectados
IDatabase cache = Connection.GetDatabase();  //referência para o banco de dados do Redis Cache chamando o método ConnectionMultiplexer.GetDatabase
Inserindo dados: cache.StringSet(“key1”, “value”);
Recuperando dados: string key1 = cache.StringGet(“key1”);
9 – Blob Storage: http://justazure.com/azure-blob-storage-part-three-using-the-storage-client-library/
  • CloudStorageAccount – this is a reference to the storage account, created using the account name and key.
  • CloudBlobClient – this is a reference to the object used to perform operations on the blob storage account. This is created using the CloudStorageAccount object.
  • CloudBlobContainer – this is a reference to the container that your blobs reside in. This is used in most blob operations, and is created using the CloudBlobClient.
  • CloudBlockBlob – this is a reference to the actual blob. This is created using the CloudBlobContainer object and the name of the blob.  (If using page blobs, this would be CloudPageBlob).
  • CloudBlockBlob – Optimized for efficient upload of large blobs. They are consist of a set of blocks, each identified by a block ID. Block blobs are limited to 200 GB in size.
  • CloudPageBlob – Optimized for random read and write operations. Page blobs consist of a set of 512-byte pages and are limited to 1 TB in size.
10 – Você usa as APIs padrão de acesso a Blob e Tables quando precisa configurar o storage analytics e acessar os dados armazenados neste storage analytics

11 – Windows Azure Storage provides following options for redundancy for Blobs, Tables and Queues:

1. Locally Redundant Storage (LRS): All data in the storage account is made durable by replicating transactions synchronously to three different storage nodes within the same region. The below section will cover more details on LRS including on how to select LRS.

2. Geo Redundant Storage (GRS): This is the default option for redundancy when a storage account is created. Like LRS, transactions are replicated synchronously to three storage nodes within the primary region chosen for creating the storage account. However, the transaction is also queued for asynchronous replication to another secondary region (hundreds of miles away from the primary) where data is again made durable by replicating it to three more storage nodes there. The below section will cover in depth the asynchronous replication process, information on region pairings and the failover process.

3. Read Access – Geo Redundant Storage (RA-GRS): For a GRS storage account, we now have introduced in limited preview the ability to turn on read only access to a storage account’s data in the secondary region. Since replication to the secondary region is done asynchronously, this provides an eventual consistent version of the data to read from. The below section will cover more details on RA-GRS, how to enable this in preview mode and details on storage analytics.

12 – All startup tasks are executed according to their taskType attribute.

 

  • The simple tasks are executed synchronously, one at a time.
  • The background and foreground tasks are started asynchronously, parallel to the startup task.

Abs,

@daibert

 

 

Oi Pessoal!

Lendo alguns posts de colegas aqui da firma, “roubei” uma lista com tudo que rolou no Azure em 2014! Impressionante a quantidade de coisa que fizemos para a plataforma. Enjoy!

Janeiro 2014

Março 2014

Abril 2014

Maio 2014

Junho 2014

Julho 2014

Agosto 2014

Setembro 2014

Outubro 2014

Novembro

Dezembro

Abs,

@daibert

Olá pessoal, 

A idéia de criação e utilização de APIs não é nova, muito pelo contrário. Todos os fabricantes de software sempre buscaram uma maneira de disponibilizar as funcionalidade dos seus produtos para terceiros, mas sempre esbarravam na questão de gestão da utilização de suas APIs. 

Pensando neste cenário, a Microsoft comprou uma empresa referencia na gestão de APIs, a Apiphany e incluiu seus serviços no Microsoft Azure. 

NewImage

Na prática, isto significa que agora o Azure possui uma plataforma para gestão das APIs de produtos existentes e novos produtos, integrados com a plataforma de nuvem da Microsoft, mas que não precisam ser obrigatóriamente tecnologias Microsoft.

Alguns beneficios do Azure Management API:

  • Criação de forma rápida de uma Fachada para serviços já existentes, sejam eles .NET, JAVA ou outra tecnologia
  • Facilidade de estender as capacidades dos serviços existentes com serviços como cache e acesso a múltiplos dominios
  • Permite empacotar e publicar as APIs e disponibiliza-las em versões de Desenvolvedor ou Produção
  • Permite gerenciar o acesso as APIs de forma simplificada, baseada em autenticação no nível da Aplicação ou do Usuário

Além disso, uma vez seu Produto criado e exposto como um conjunto de APIs, você passa a ter um portal do desenvolvedor, aonde podem ser encontradas as informações sobre as APIs disponíveis e a documentação de cada API. Tudo isto é feito de forma bem simples e visual, direto no portal do Azure. 

Screen Shot 2014 11 24 at 3 56 32 PM

Nos próximos posts, vou mostrar como criar e fazer a administração das APIs no Azure. 

 

Abs,

@daibert

 

 

 

  

Olá pessoal, 

na semana passada fizemos uma série de anuncios no evento Connect() em Nova Iorque. Um dos anúncios foi a liberação do Visual Studio 2015 preview e o .NET 2015. Com o .NET 2015, disponibilizamos o .NET Core e sua especificação como Open Source. 

Mas o que é o .NET Core e qual sua relação com o .NET Framework? 

Esta foi uma das principais dúvidas que ouvi dos clientes e parceiros, após o Connect(). 

Então vamos lá. Abaixo tem um quadro que mostra o que é o .NET 2015:

NewImage

O .NET 2015 é um conjunto de dois componentes, o .NET Framework 4.6 e o .NET Core 5. O .NET Core e o .NET Framework tem uma relação de subset e superset de componentes. O .NET Core, como o próprio nome já diz, é o núcleo do .NET, seja para o Runtime ou para os componentes disponibilizados para as linguagens. Ou seja, no .NET Core é aonde ficam o Garbage Collector, o Just in Time compiler e os tipos primitivos, como String e outros tipos como Listas. 

Além disto, no .NET Core, estão os Compiladores. E digo “Os Compiladores” pois no .NET Core, além dos compiladores padrões do .NET, temos a possibilidade de utilizar o Compilador Open Source “Roslyn”, que pode ser instalado no Visual Studio através do comando:

   git clone https://git01.codeplex.com/roslyn  

Bom, espero que tenham gostado, e nos vemos nos próximos posts. 

Ah, e antes que eu me esqueça, agora estou com uma página no facebook, aonde também tenho postado uma série de informações sobre o mundo Microsoft. http://aka.ms/daibert

Abs,

@daibert

 

Olá,

neste post vou apresentar a vocês o Azure Mobile Services. O Azure Mobile Services é um BaaS, ou um Backend as a Service.

Um BaaS é uma abordagem conceitual que abstrai a utilização de componentes de nuvem, disponibilizando serviços como Autenticação, Escalabilidade, Push Notification cross-plataform e integração com redes sociais.

No caso do Azure Mobile Services, ele expõe em forma de serviços REST / WepAPI os componentes da Stack de serviços do Azure. O BaaS não é um substituto ao PaaS ou IaaS. Ele é um novo tipo de serviço, que tem por trás uma destas outras abordagens, mas de forma mais simplificada para o cliente que o acessa.

 

mbaas-chart

* quanto menor a barra no gráfico, mais simples e rápido para implementar (menor time-to-market)

01

* BaaS utiliza toda a stack de serviços disponíveis na núvem

Vantagens de utilizar o Azure Mobile Services para criação de aplicações iOS, Android, Windows Phone, HTML5:

  • Acelerar o tempo de desenvolvimento de aplicações.
  • Compartilhar o mesmo backend para clientes multi-plataforma
  • Ter um mesmo ponto de entrada para todas as Apps, com as mesma regras de negócios do lado do servidor.
  • Compartilhar o mesmo modelo de autenticação, notificação (push notifications), seja para iOS, Windows 8 / Phone ou Android.
  • Possuir disponibilidade elástica para os servíços expostos (CRUD), e para os serviços consumidos, como SQL Azure.

 

Bom, esta foi apenas uma primeira visão do que é o Azure Mobile Services e o que é um BaaS. Vamos aprofundar mais neste assunto em breve.

http://aka.ms/daibert

 

Abraços!

@daibert

Olá pessoal, este é um breve post para tirar algumas dúvidas que alguns clientes e parceiros vem me perguntando nas últimas semanas.

Para o Windows Phone 8.1 podemos ter dois tipos de projeto:

  1. Windows Phone Silverlight – Exclusivamente XAML
  2. Windows Universal Apps – XAML ou HTML5 + JavaScript

Se você é um desenvolvedor XAML, você tem três opções para criar suas Apps para Windows Phone 8.1

  1. Continuar desenvolvendo Apps usando projetos do tipo Silverlight 7.x/8.0 – Este tipo de projeto permite que você continue executando suas Apps em versões de Windows Phone 7.x, 8.0 normalmente. Além destes, também poderá roda-las em Windows Phone 8.1, porém sem tirar proveito das novidades da plataforma Windows Phone 8.1.
  2. Atualizar sua App para Windows Phone Silverlight 8.1 – Você poderá utilizar as novas funcionalidades da plataforma, porém sua App só rodará em dispositivos com o Windows Phone 8.1.
  3. Criar uma versão baseada em Windows XAML, ou Windows Universal App – Esta só rodará em dispositivos com Windows Phone 8.1, porém é a maneira mais simples de se criar aplicações Windows multiplataforma, ou seja, uma App única que rodará em Windows 8.1 e Windows Phone 8.1.

O que direciona nossa decisão é o tipo de recurso que a App utilizará. Por exemplo, Windows Universal Apps, não tem acesso aos seguintes recursos:

  • CameraCaptureTask
  • Camera Lenses
  • Lockscreen background image provider
  • Runs under Lock
  • Background Audio Agent
  • Alarms/Reminders
  • SocialRT (Silverlight 8.1 only)
  • VoIP
  • Continuous background location tracking (SL 8.0 only)
  • Wallet agents
  • System.ServiceModel (WCF/SOAP)

 

Bom, por enquanto é só, mas nas próximas semanas o blog estará bastante movimentado.

 

Abs,

@daibert

Olá pessoal,

neste post vou falar um pouco mais dos bastidores do Windows Phone 8.

Quando falamos tecnicamente do Windows Phone 8, a primeira coisa que nos vem a cabeça é o Kernel compartilhado do Phone com o Windows 8. Já apresentei neste post http://aka.ms/kernel8 uma visão geral do Kernel compartilhado entre o Windows 8 e o Windows Phone.

Desta vez, vamos entrar um pouco mais a fundo na plataforma.

Quando a Microsoft criou a primeira versão do Windows Phone, o Windows Phone 7.0, ela utilizou o Kernel do Windows CE como fundamento para o novo Sistema Operacional para telefones. Então veio a versão 7.5 e nova funcionalidades foram implementadas, porém o núcleo do Sistema Operacional, continuava o mesmo, do Windows CE.

 

phone7

Windows Phone 7.X

Não há problema algum com o Phone 7.X ter sido desenvolvido sob o Kernel do Windows CE. A questão é que o Kernel do Windows CE é uma tecnologia muito estável, porém já tem mais de 15 anos. Por este motivo, existiam alguns limitadores de integração com hardwares de última geração, como sensores e multiplos núcleos de processadores.

Então, quando a Microsoft resolveu fazer a versão Windows Phone 8, aproveitou o momento da Plataforma Windows e unificou o Kernel nas 2 plataformas.

Mas o que mudou efetivamente?

Com a utilização do mesmo Kernel nas duas plataformas, várias coisas como drivers, modelo de desenvolvimento, classes portáveis passaram a ser compatíveis entre as duas plataformas de forma transparente.

Outra coisa que passou a estar presente no Windows Phone 8 é parte do conjunto de componentes do Windows Runtime, que no Phone chamado de Windows Phone Runtime. Este conjunto de componentes permite que boa parte do código que é utilizado em uma aplicação Windows 8 possa ser reaproveitado em uma App para Windows Phone 8 e vice versa.

phone8_01

Compatibilidade de aplicações Windows Phone 7.X com o Windows Phone 8

Bom, mas se o kernel do Windows Phone 8 não é compatível com o Kernel do Windows Phone 7.5, como as Apps do WP 7.5 rodam no Windows 8?

Uma das coisas que a Microsoft tem em seu DNA é a compatibilitade com versões anteriores dos seus sistemas operacionais.

Desta forma, a implementação do Windows Phone 8 vem com um modo conhecido como “Quirks Mode”. O Quirks Mode, é uma camada que faz com que as Apps WP 7.X sejam executadas no WP 8.0 com o comportamento que teriam em um WP 7.X sem que o desenvolvedor precise fazer alterações no código.

Então podemos imaginar que as Apps para WP 7.x rodam um pouco mais lento no WP 8.x, o que é verdade. Mas, por outro lado, como os hardwares que rodam o WP 8.x são bem mais rápidos que os que rodam o WP 7.x, isto é compensado.

Mas o ideal seriamos recompilhar nossas Apps para Windows Phone 8.

Para conhecer mais sobre o Quirks Mode, vejam este video http://channel9.msdn.com/Events/Build/2012/3-045

 

phone8_02

Aplicações Windows 7.X rodando em Windows Phone 8

 

Mudando o Target de sua App para Windows Phone 8

O Quirks Mode é algo que foge do controle do desenvolvedor, sendo utilizado pelo próprio Windows Phone Runtime.

Mudar o target do seu projeto para Windows Phone 8, faz com que sua App passe a ser executada de forma nativa para a nova versão do Windows Phone 8.

Mudar o target para WP 8.x é bem simples. Basta abrir o projeto no Visual Studio 2012+, right-click no projeto e selecionar a opção Upgrade to Windows Phone 8.0

__image_thumb_10

_image_thumb_11

 

Uma vez isto feito, sua App não utilizará mais o quirks mode, o que pode gerar algum problema de comportamento da App, caso alguma API tenha comportamento diferente do esperado no WP 8.0 comparado com o de WP 7.x.

Desta forma, será necessário que você teste sua App depois de recompila-la para WP 8.0.

 

Boas referências:

Windows Phone Versions

http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202996(v=vs.105).aspx

Windows Phone API reference

http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff626516(v=vs.105).aspx

App platform compatibility for Windows Phone

http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj206947(v=vs.105).aspx

De bonus, segue este poster!!!

image

 

Abs,

@daibert

Hoje me deparei com um parceiro implementando uma App que utiliza o Bing Maps. Ele me pediu algumas referências de por onde começar.

Normalmente eu direciono os parceiros e clientes para este post http://rbrundritt.wordpress.com/2012/11/06/getting-started-with-bing-maps-windows-store-apps-native/

Mas hoje descobri um documento que agrega os principais links que um desenvolvedor precisa.

Você pode baixa-lo aqui, ó http://sdrv.ms/1fz5EjB

Espero que este documento ajude vocês.

 

Abs,

@daibert

http://twitter.com/daibert

 

Olá pessoal. Uma maneira de aumentar o alcance de sua App para outros mercados, fora do Brasil, é criar sua App Multilingue.

Abaixo, segue uma lista de links que pode ajuda-los a entender como desenvolver Apps multilinguas.

 

Abs,

@daibert