<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>EvereQ &#187; Azure</title>
	<atom:link href="http://blog.evereq.com/blog/index.php/tag/azure/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.evereq.com/blog</link>
	<description>Everything reQuired</description>
	<lastBuildDate>Thu, 26 Jan 2012 16:00:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>Life in the Clouds: how to migrate</title>
		<link>http://blog.evereq.com/blog/index.php/2010/10/cloud-migrate/</link>
		<comments>http://blog.evereq.com/blog/index.php/2010/10/cloud-migrate/#comments</comments>
		<pubDate>Tue, 26 Oct 2010 16:48:55 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=703</guid>
		<description><![CDATA[Recently the term &#8220;Cloud–computing&#8221; (or more easy and quick &#8220;Cloud&#8221;) become not just a modern &#8220;buzz&#8221; word! Whole a lot of companies start moving they business into the cloud(s) or plan to do so. Many start ups initially build they solutions specially to run in the cloud. It seems like if you working in some [...]]]></description>
			<content:encoded><![CDATA[<p>Recently the term &#8220;<em>Cloud</em>–computing&#8221; (or more easy and quick &#8220;Cloud&#8221;) become not just a modern &#8220;buzz&#8221; word!<br />
Whole a lot of companies start moving they business into the cloud(s) or plan to do so.<br />
Many start ups initially build they solutions specially to run in the cloud.</p>
<p>It seems like if you working in some management position, and must predict technical future for you company (or your own) business, it&#8217;s very high probability that you already start thinking same way like companies / start ups I describe above or at least start doing huge research in that direction!</p>
<p>But as Mark Twain said <a href="http://blog.evereq.com/blog/index.php/about-me/principles-and-objectives">&#8220;Whenever you find yourself on the side of the majority, it is time to pause and reflect.&#8221;</a>, simply follow &#8220;everybody&#8221; movements can lead to significant issues in the future!</p>
<p>So let&#8217;s quickly discuss following questions:</p>
<p>(1) when and why it make sense to move into the cloud from technical / business point of view<br />
(2) how to do migration right and &#8220;safe&#8221; way</p>
<p>There are a lot of well known publications about (1), because every Cloud supplier (Google, Amazon or Microsoft for example) describe that in details to gather potential customers from regular hosting / collocation providers or to push customers that own already some server farm to migrate into the Cloud. Usually answer will be something like &#8220;you should do it as soon as possible, because it increase ROI, increase scalability, decrease maintain costs &#8230; bla .. bla.. bla..&#8221; Sure in some way they are right, i.e. for most of small / middle size businesses it&#8217;s DO make sense to migrate into clouds, unless they already invest a LOT into existed infrastructure (both hardware and software). But what is not acceptable is fact that some people (management, but not without pushing from low levels sometimes, i.e. from engineers) start really think / believe that (2) really does not make any big difference! I.e. just fact that you start migration and understand why to do it ASAP (ROI, bla bla bla) will lead your business to new levels, will save you a lot of money, will scale you to Google scale etc!<br />
<strong> WRONG! It make absolutely critical difference HOW you migrate (2)! </strong></p>
<p>Why its SO important HOW to do it? Lets give few reasons:</p>
<p>a) Most of cloud solutions require payments BY amount of requests (see Azure, Amazon RDS, Google storages etc), not just hourly rates!<br />
And this can KILL some kind of businesses, if not to say MOST of the businesses!<br />
It simply keep telling you something like: &#8220;you can&#8217;t scale PER customer actions because for each action from now on you should PAY&#8221;!<br />
You pay when your customer come to each page that require trip to the database! Its not, it&#8217;s ABSOLUTELY different to situation that you have with hosting / collocation! From now on, you should optimize you data access, message queues not just to be able to scale, but to save COSTS for requests! Yep, most of clouds give you very CHEAP storage space, but they get much more from you because of millions of requests you get from customers that do not pay you PER page view in most of the cases!<br />
Think for example situation that you have jobs board and your customers (companies usually) pay you when they add new vacancy! Does it make sense for you to pay for millions of search (browsing) users (you pay per each request to Cloud supplier), if you get money only from few people who post vacancies? And you should pay not only traffic (like it was with hosting providers), from now on in the cloud you should pay for search engine queries (requests to Solr / Lucene on multiple nodes for example), for MapReduce engine, for requests into database storage  (distributed hashtable or SQL database engine.. you still pay PER request) etc!</p>
<p>So? Before even consider moving into cloud you should think about all above and check is it will work for you! Even if you absolutely sure that it will, you anyway should care A LOT about code quality and additional features like distributed caching, replication effectiveness, traffic compressions etc! You should in most cases avoid many of such &#8220;hard&#8221; things in regular applications, but you simply can&#8217;t ignore them for most of real life application that should work in the Cloud!</p>
<p>b) You should migrate (or develop from begging) systems the way that they will be able to work OUTSIDE cloud! Why? Easy!</p>
<p>You do not have FULL control over your cloud supplier:</p>
<p>- It possible that supplier (Amazon, Google, MSFT or any other) will change prices or add additional fees<br />
- It&#8217;s possible that you will want to migrate to different supplier tomorrow because it&#8217;s cheaper, or buy your own servers farm or / and even want to run OWN cloud (see <a href="http://cloud.com">Cloud.com</a>).<br />
- It&#8217;s possible that you will figure out that you was wrong with (1) above, i.e. you was think that you CAN afford to pay PER request, but was wrong and your servers get so huge traffic that your bills to cloud supplier quickly become not acceptable!<br />
- etc</p>
<p>In all situations like above, it&#8217;s CRITICAL to be able to made a SWITCH! And that is what most of companies MISS! They simple couple technology into one Cloud supplier and did not have &#8220;back door&#8221; to quit!</p>
<p>From technical point of view (but sure it&#8217;s theme for different, dedicated post) you should design your architecture the way that your solution will work at least on dedicated servers farm in addition to selected Cloud. If you start using Azure Table Storage, Amazon SimpleDb or another other &#8220;cloud&#8221; specific data storage, make sure that you can execute your code on for example <a href="www.mongodb.org/">MongoDB</a>, <a href="http://ravendb.net">RavenDB</a> or <a href="http://cassandra.apache.org/">Cassandra</a> and only then add support for Cloud storage! In case if you already have system that work locally (i.e. on regular dedicated server), you should make sure that you do not &#8220;broke&#8221; this functionality when start migration! And so on&#8230;</p>
<p>Sure it&#8217;s not all, I have much more to say about it. But it&#8217;s just enough to start at least think right way about life in the Clouds <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2010/10/cloud-migrate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The November version of the Windows Azure SDK and Tools</title>
		<link>http://blog.evereq.com/blog/index.php/2009/11/the-november-version-of-the-windows-azure-sdk-and-tools/</link>
		<comments>http://blog.evereq.com/blog/index.php/2009/11/the-november-version-of-the-windows-azure-sdk-and-tools/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 07:53:44 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[ADO.NET Data Services]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[Client Library]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Diagnostics]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Samples]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[Services]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[StorageClient]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Virtual Machine]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=520</guid>
		<description><![CDATA[Download them here. New in the November 2009 SDK (quote from Microsoft Windows Azure team newsletter): Windows Azure Service Runtime managed library: The latest version of the Service Hosting Runtime API includes support for enhanced communication between roles and for runtime notification of service configuration changes. Direct communication between role instances enables new application development scenarios, [...]]]></description>
			<content:encoded><![CDATA[<p>Download them <a style="color: #2a5db0;" href="http://go.microsoft.com/fwlink/?LinkID=128752" target="_blank">here</a>.</p>
<p><strong>New in the November 2009 SDK (quote from Microsoft Windows Azure team newsletter):</strong></p>
<ul>
<li style="margin-left: 15px;"><strong>Windows Azure Service Runtime managed library</strong>: The latest version of the Service Hosting Runtime API includes support for enhanced communication between roles and for runtime notification of service configuration changes. Direct communication between role instances enables new application development scenarios, including applications that distribute state across role instances. Service configuration changes include an increase or decrease in the number of request role instances and changes to the values of configuration settings.</li>
<li style="margin-left: 15px;"><strong>Windows Azure Diagnostics managed library</strong>: The new Diagnostics API enables logging using standard .NET APIs. The Diagnostics API provides built-in support for collecting standard logs and diagnostic information, including the Windows Azure logs, IIS 7.0 logs, Failed Request logs, crash dumps, Windows Event logs, performance counters, and custom logs.</li>
<li style="margin-left: 15px;"><strong>Certificate Management</strong>: Enhanced support for SSL certificates in Windows Azure and in the Windows Azure SDK enables the secure automated deployment of certificates to services hosted on Windows Azure.</li>
<li style="margin-left: 15px;"><strong>Variable-size Virtual Machines</strong> : Developers may now specify the size of the virtual machine to which they wish to deploy a role instance, based on the role&#8217;s resource requirements. The size of the VM determines the number of CPU cores, the memory capacity, and the local file system size allocated to a running instance.</li>
<li style="margin-left: 15px;"><strong>External endpoints for worker roles.</strong> A worker role may now define any number of external endpoints for HTTP, HTTPS, and TCP, and specify the desired port number for any external endpoint.</li>
<li style="margin-left: 15px;"><strong>Persistent local resource storage</strong>: Developers can now choose to persist data written to a local storage resource at runtime when the role is recycled.</li>
<li style="margin-left: 15px;"><strong>Windows Azure Storage Client managed library</strong>: The Storage Client library provides a .NET API for accessing the Windows Azure storage services.</li>
<li style="margin-left: 15px;"><strong>Improved Development Storage</strong>: Development storage provides a high-fidelity simulation of the Windows Azure storage services in the cloud. Tables can now be created dynamically in the development storage Table service and are no longer required to be generated in advance.</li>
<li style="margin-left: 15px;"><strong>Updated samples</strong>: The samples included with the Windows Azure SDK have been updated to demonstrate new features. The samples now include both C# and Visual Basic versions.</li>
</ul>
<p>As we can see &#8211; a lot of improvements and new features introduced in this release. I will made review of them right after will have time to check (hopefully today later)! In any case, glad that MS improve Azure SDK so quickly!</p>
<p><strong>Update: </strong>after installation and first review, I found following:</p>
<ul>
<li>It seems like Microsoft finally have &#8220;official&#8221; Client library for Azure Storage. The name is same like from samples before, i.e. &#8220;StorageClient&#8221;, but now it is in &#8220;Microsoft.WindowsAzure.StorageClient&#8221; namespace, not like &#8220;Microsoft.Samples.ServiceHosting.StorageClient&#8221; that was before! It is also VERY extended and improved, so if you going to use Azure Storage, for sure you need to use this library (and I am also going to use it in my EvejobAzNET project) &#8211; it give you access to Blob Service, Queue Service and Table Service! Sure like before, it is possible to use simple .NET Client Library for ADO.NET Data Services (and new library use it inside anyway, just check that it reference System.Data.Services.Client library inside)&#8230; But with official Azure Storage Client library a lot of tasks become much more simple! You can found this library (*.dll) in &#8220;c:\Program Files\Windows Azure SDK\v1.0\ref\&#8221; folder, together with other useful binaries!</li>
<li>It is possible now to use another &#8220;official&#8221; library to get programmatic access to most of functionality available before only from Azure Developer Portal (and actually I don&#8217;t know why, but for some reasons Portal works and looks not best way! You can google, A LOT of people complain about issues with this!).</li>
<li>A new Library for Logging and Diagnostic functionality was added to SDK (Microsoft.WindowsAzure.Diagnostics namespace) <strong>- </strong>feel free to review samples in SDK (zip archives available in root folder of SDK installation, i.e. in C:\Program Files\Windows Azure SDK\v1.0 by default &#8211; samples-cs.zip for C# version and samples-vb.zip for VB version)</li>
<li>A lot of other improvements / features was added that relate mostly to development / production environment (Visual Studio Azure support, new release of Development Fabric etc) &#8211; they not change significantly your code / application design, instead of features described above that I highly recommend to review in case if you develop for Azure!</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2009/11/the-november-version-of-the-windows-azure-sdk-and-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Amazon AWS Big News for developers</title>
		<link>http://blog.evereq.com/blog/index.php/2009/11/amazon-aws-big-news-for-developers/</link>
		<comments>http://blog.evereq.com/blog/index.php/2009/11/amazon-aws-big-news-for-developers/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 10:16:22 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[App Engine]]></category>
		<category><![CDATA[AWS]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Libraries]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[S3]]></category>
		<category><![CDATA[SDK]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=515</guid>
		<description><![CDATA[Because I build some projects with support of Cloud deployment scenarios (currently for Google App Engine and Microsoft Azure) and I am sure that best Web software must be ready to be deployed in Cloud(s), it was very interesting to read latest announcement from Amazon: &#8220;&#8230; AWS Software Development Kit (SDK) for .NET Now Available&#8230; [...]]]></description>
			<content:encoded><![CDATA[<p>Because I build some projects with support of Cloud deployment scenarios  (currently for Google App Engine and Microsoft Azure) and I am sure that best Web software must be ready to be deployed in Cloud(s), it was very interesting to read latest <a href="http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3055&amp;categoryID=42" target="_blank">announcement</a> from Amazon: &#8220;&#8230; <a href="http://aws.amazon.com/sdkfornet/" target="_blank">AWS Software Development Kit (SDK) for .NET</a> Now Available&#8230; &#8220;.</p>
<p>Sure it&#8217;s just a beginning for Amazon in development of real .NET SDK, but even with this version we can quickly build .NET applications that tap into AWS Cloud.   Yes,  even before developers have good libraries to build such applications, but now looks like we have first &#8220;standard&#8221; API from Amazon and this fact is very important!</p>
<p>For example, for Ruby there is no such official SDK (or Ruby gem), and developers can choice from few available gems (<a href="http://github.com/rightscale/right_aws" target="_blank">right_aws</a>, <a href="http://github.com/grempe/amazon-ec2" target="_blank">amazon-ec2</a> or <a href="http://amazon.rubyforge.org/">AWS:S3</a> to name just few).  The same situation for Java - available a lot of &#8220;community&#8221; libraries, but no official SDK&#8230; (ok, ok, for Java we have at least official <a href="http://aws.amazon.com/eclipse/" target="_blank">AWS Toolkit for Eclipse</a>, but Toolkit it is not SDK!!!).</p>
<p>But why it is important to have official &#8220;language specific&#8221; SDK?</p>
<p>Well, first of all, now because Amazon have few BIG rivals, like Google App Engine (and we know that Google DO have official SDKs, more so, for both Python and Java!) and Microsoft Azure (sure Microsoft always have SDKs &#8211; it a BIG plus for Microsoft!).</p>
<p>Also it is important for developers, so they know that if they take some library and put this library as &#8220;base&#8221; for communications with a Cloud, they will not need to dial with changes in API in case of library author decide to drop development! It is important to have SDK that will be up to date with company services (Amazon in our case), just because we developers want to be SAFE! Sure it is good if there are a lot of open source libraries that EXTEND SDK some way, but it&#8217;s just &#8220;add-ons&#8221; and can&#8217;t replace real official SDK!</p>
<p>So it is really BIG day for Amazon and .NET developers &#8211; first official &#8220;language specific&#8221; SDK, and for .NET!!! What will be answer from Microsoft Azure that is still in &#8220;Beta&#8221;? <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Note: in this post I mean &#8220;language specific&#8221; SDK, not just common SDK that list API for Web Services  with samples how to use them for example, etc&#8230; Because most of they time developers dial with some specific language, it is important for services like AWS to provide language specific SDKs so developers can really quickly and &#8220;safely&#8221; create applications using such &#8220;language specific&#8221; SDKs! Hope you understand what I mean <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2009/11/amazon-aws-big-news-for-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Enable IIS7 with ASP.NET and WCF HTTP Activation in Windows 7 for Azure / WCF Development</title>
		<link>http://blog.evereq.com/blog/index.php/2009/10/enable-iis7-with-asp-net-and-wcf-http-activation-in-windows-7-for-azure-wcf-development/</link>
		<comments>http://blog.evereq.com/blog/index.php/2009/10/enable-iis7-with-asp-net-and-wcf-http-activation-in-windows-7-for-azure-wcf-development/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 12:10:40 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[IIS7]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[WCF Http Activation]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/?p=214</guid>
		<description><![CDATA[In Windows 7, Go to Control Panel \ All Control Panel Items \ Programs and Features Press &#8220;Turn Windows features on or off&#8221; and make sure that you select following features: Under Internet Information Services make sure that you select available options (including options in sub nodes), that you going to use. Usually it is [...]]]></description>
			<content:encoded><![CDATA[<p>In Windows 7, Go to Control Panel \ All Control Panel Items \ Programs and Features</p>
<p>Press &#8220;Turn Windows features on or off&#8221; and make sure that you select following features:</p>
<ul>
<li>Under Internet Information Services make sure that you select available options (including options in sub nodes), that you going to use. Usually it is everything, except probably ASP (but make sure you select ASP.NET instead), CGI (if you going to use any CGI development, PHP for example, you need to select this feature), Server-Side Includes, FTP Server (if you not need to setup own FTP Server) etc:</li>
</ul>
<p><img class="alignnone size-full wp-image-215" title="WindowsFeatures" src="http://blog.evereq.com/wp-content/uploads/2009/10/WindowsFeatures.png" alt="WindowsFeatures" width="467" height="543" /></p>
<ul>
<li>Make sure you select Windows Communication Foundation HTTP Activation and Non-HTTP Activation features (features used for example for Azure or WCF development) &#8211; see illustration above</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2009/10/enable-iis7-with-asp-net-and-wcf-http-activation-in-windows-7-for-azure-wcf-development/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
