<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Hakan Eren's blog</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/hakaneren/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/hakaneren/feed.xml</link>
    <description>About software development and Azure. You can also follow my twits on http://twitter.com/hakaneren</description>
    <lastBuildDate>Wed, 17 Apr 2019 03:23:33 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Tuning Windows Azure Performance, more thoughts</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/tuning-windows-azure-performance-more-thoughts</link>
      <pubDate>Tue, 07 Aug 2012 06:13:00 GMT</pubDate>
      <dc:creator><![CDATA[Hakan Eren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2012/08/07/tuning-windows-azure-performance-more-thoughts/</guid>
      <description><![CDATA[As a follow up to my previous blog post, Tuning Windows Azure Performance, a brief...]]></description>
      <content:encoded><![CDATA[<p><span style="font-size: medium;">As a follow up to my previous blog post, <a title="Tuning Windows Azure Performance, a brief introduction" href="http://blogs.msdn.com/b/hakaneren/archive/2012/05/12/tuning-azure-performance.aspx" target="_blank">Tuning Windows Azure Performance, a brief introduction</a>&nbsp;I would like to share some more thoughts about tuning Windows Azure performance.</span></p>
<p><span style="font-size: medium;"><strong>Affinity Groups</strong></span></p>
<p><span style="font-size: medium;">If different components of your Azure solution is deployed to different Azure data centers (DC) there&rsquo;s a big chance that you will have to deal with additional network related issues.</span></p>
<p><span style="font-size: medium;">Imagine a scenario where your web front tier is deployed in an Asia DC, web services tier in a Europe DC and database in a US DC. Doesn&rsquo;t sound logical, right?</span></p>
<p><span style="font-size: medium;">For optimal performance it would be best to deploy as many solution components as possible in the same data center.</span></p>
<p><span style="font-size: medium;">You can check <a title="Importance of Affinity Groups in Windows Azure" href="http://msmvps.com/blogs/nunogodinho/archive/2012/03/04/importance-of-affinity-groups-in-windows-azure.aspx" target="_blank">Importance of Affinity Groups in Windows Azure&nbsp;</a>&nbsp;for more information. (Thanks to Holger Sirtl for reminding this topic to me)</span></p>
<p><span style="font-size: medium;"><strong>Multi tenancy of Windows Azure SQL Database (formerly known as SQL Azure)</strong></span></p>
<p><span style="font-size: medium;">Windows Azure SQL Database is a self managed service starting as low as $5 (as of August 2012)</span></p>
<p><span style="font-size: medium;">In certain scenarios Azure SQL Database users can face performance issues due to the multi tenanted nature of the service.</span></p>
<p><span style="font-size: medium;">The only way to make a SQL Database service available at a very low cost is to make sure multiple customers (tenants) share the same hardware resources together.</span></p>
<p><span style="font-size: medium;">As of August 2012 the cost of Azure SQL DB is determined &ldquo;only&rdquo; by the size of the DB. The smaller the size, the less you pay. And naturally the more tenants you share the hardware with. Even if you have a 50 MB small DB that needs to process a lot of transactions, as of today there is not a way to &ldquo;pay more&rdquo; and &ldquo;get more&rdquo; hardware resources.</span></p>
<p><span style="font-size: medium;">For these types of scenarios you can choose to install our good old SQL Server on a persistent Azure VM (aka Infrastructure as a Service or simply IaaS)</span></p>
<p><span style="font-size: medium;">With SQL Server on IaaS we can get dedicated VMs for our DB, no matter what the size of the DB is and utilize all the hardware resources dedicated to our VM.</span></p>
<p><span style="font-size: medium;">As you can easily guess there are some disadvantages of this approach. Firstly you have to pay more since you hold dedicated hardware resources for your DB. And also you have to manage the SQL Server yourself which will also increase the cost of maintenance.</span></p>
<p><span style="font-size: medium;">For more information you can check <a title="SQL Server in Windows Azure Virtual Machine Early Adoption Cook Book" href="http://social.technet.microsoft.com/wiki/contents/articles/11554.sql-server-in-windows-azure-virtual-machine-early-adoption-cook-book-en-us.aspx" target="_blank">SQL Server in Windows Azure Virtual Machine Early Adoption Cook Book</a> </span></p>
<p><span style="font-size: medium;">Note: Persistent VM feature is published on June 2012 and will probably stay as a preview service for a few more months to come. You can use it for production purposes but Microsoft will not give you SLA until the service is made generally available (GA)</span></p>
<p><span style="font-size: medium;">Update: If you need more disk IO performance on an IaaS VM you can use multiple network attached disks to boost performance. You can do disk striping (RAID 0) and since Azure network drives are fault tolerant by default you get both better performance and reliability. Also please remember to use different storage accounts for each disk to further boost performance. Please check&nbsp;this 10 minute&nbsp;for more information, <a href="https://channel9.msdn.com/Shows/TechNet+Radio/TechNet-Radio-IT-Time--Part-5-Real-World-Azure--Provisioning-Storage-for-IO-Intensive-Applications-o">https://channel9.msdn.com/Shows/TechNet+Radio/TechNet-Radio-IT-Time--Part-5-Real-World-Azure--Provisioning-Storage-for-IO-Intensive-Applications-o</a> <br /></span></p>
<p><span style="font-size: medium;">Update: For higher SQL Server disk IO performance using multiple file groups are preferred instead of disk striping. Please check&nbsp;<a href="http://msdn.microsoft.com/en-us/library/windowsazure/dn133149.aspx">http://msdn.microsoft.com/en-us/library/windowsazure/dn133149.aspx</a>&nbsp;for more info.</span></p>
<p><span style="font-size: medium;">Update: If you are designing massive scale applications you might find the following quite interesting to read</span><br /><span style="font-size: medium;">Best Practices for the Design of Large-Scale Services on Windows Azure Cloud: <a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj717232.aspx">http://msdn.microsoft.com/en-us/library/windowsazure/jj717232.aspx</a></span><br /><span style="font-size: medium;">Designing and Deploying Internet-Scale Services:&nbsp;<a href="http://www.usenix.org/events/lisa07/tech/full_papers/hamilton/hamilton.pdf">www.usenix.org/events/lisa07/tech/full_papers/hamilton/hamilton.pdf</a>&nbsp; (beware, it's a bit heavy in theory and not an easy read)</span></p>]]></content:encoded>
    </item>
    <item>
      <title>Tuning Windows Azure Performance, a brief introduction</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/tuning-windows-azure-performance-a-brief-introduction</link>
      <pubDate>Sat, 12 May 2012 13:29:00 GMT</pubDate>
      <dc:creator><![CDATA[Hakan Eren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2012/05/12/tuning-windows-azure-performance-a-brief-introduction/</guid>
      <description><![CDATA[One common reason we go for cloud computing is the ability to scale, as much as needed. This usually...]]></description>
      <content:encoded><![CDATA[<p><span style="font-size: medium;">One common reason we go for cloud computing is the ability to scale, as much as needed. This usually means an increase in the overall performance of our application. However in certain cases we might face a decrease in performance with cloud computing. I will try to explain the most common reasons that I came across for such unexpected behaviour.</span></p>
<p><span style="font-size: medium;"><strong>Latency Issues</strong></span></p>
<p><span style="font-size: medium;">Also known as ping time, latency is the round trip network time between the client and the server. (Azure web roles by default doesn't support ping for security reasons. But it would be quite easy to measure the latency without adding ping support. Please check the IE developer toolbar section at the bottom.)</span></p>
<p><span style="font-size: medium;">Latency, locally in a country can be around 25 msec (milliseconds).</span></p>
<p><span style="font-size: medium;">Latency, to a global cloud provider&rsquo;s closest data centre can range from 25 (if you are quite close geographically) to 200 msec (if you are in a remote country like Australia). For most countries we can assume latency will range from 25 to 100 msec.</span></p>
<p><span style="font-size: medium;">This means that if we are in Australia and we have a solution that is deployed to a global cloud vendor, the latency can be 8 times higher compared to a local hoster.</span></p>
<p><span style="font-size: medium;">Now, does this mean our solutions overall performance will be 8 times less? Not really. It might actually be much more faster, depending on the solution itself.</span></p>
<p><span style="font-size: medium;">Let's examine some scenarios; I will take a Turkish company, ACME as an example where the latency to closest Azure data centre is around 100 msec. (I deliberately choose a country that doesn&rsquo;t have the best or worst latency)</span></p>
<p><span style="font-size: medium;"><strong>Scenario 1</strong> - ACME host their solution on a local hoster. A web page in their solution does some heavy lifting and takes 10 seconds to complete. When they have more users this can take up to 20 seconds. It's not easy to add more servers on demand with their local hoster so they are facing performance issues from time to time. When a user opens up this page on a busy period, it can take up to 20,025 msec to show up. 20,000 msec (20 seconds) for the page to generate and 25 msec to transfer.</span></p>
<p><span style="font-size: medium;">Then ACME decides to move their solution to Azure. They implement autoscaling so they can add more capacity under heavy load. With the additional capacity we can guarantee that the page generates in 10 seconds, most of the time. Unlike the previous 20,025 msec case, even under heavy load the same page is served in 10,100 msec (10 sec page generation + 100 msec transfer time).</span></p>
<p><span style="font-size: medium;">When we have less load Azure would perform nearly the same as local hosted solution. 10,025 vs. 10,100 msec. The difference is 75 msec which is less than one tenth of a second. It would be nearly impossible for human eye to realise the difference for a page that takes 10 seconds to generate. However under heavy load Azure would performance nearly 2 times faster, 20,025 vs 10,100 msec.</span></p>
<p><span style="font-size: medium;">The bottom line for this scenario would be, Azure solution would perform either the same or better compared to the local hosted solution. So we have no issues on this one.&nbsp;</span></p>
<p><span style="font-size: medium;"><strong>Scenario 2</strong> &ndash; ACME has a web page that only takes 500 msec to execute. The math is simple, local hosted solution takes 525 msec for user to see the page vs. 600 msec on Azure. The difference is still 75 msec, again 1/10 of a second but this time a very careful eye might realise a little bit of a difference.</span></p>
<p><span style="font-size: medium;">The bottom line, Azure performs nearly the same as local hosted version and the difference is negligible.</span></p>
<p><span style="font-size: medium;"><strong>Scenario 3</strong> - ACME has a web page that again takes 500 msec to execute, but this time the page has some AJAX features. There is a table in the page that has 50 rows and 10 columns. And for each cell a javascript call is being made to the server for a lookup which only executes in 5 msec.</span></p>
<p><span style="font-size: medium;">In this scenario the local hosted page would take 500 (page execution) + 25 (latency) + 500 (number of cells) x [ 5 (lookup execution) <b>+ 25 (latency)</b> ] = 525 + 500 x 30 = 15,525 which is roughly <b>15 seconds</b>.</span></p>
<p><span style="font-size: medium;">Now let's calculate the Azure hosted version. 500 (page execution) + 100 (latency) + 500 (number of cells) x [ 5 (lookup execution) <b>+ 100 (latency)</b> ] = 600 + 500 x 105 = 53,100 This time it is <b>53 seconds</b>, nearly a minute.. Quite slow compared to the local hosted 15 seconds page eh?</span></p>
<p><span style="font-size: medium;">Although this scenario is a bit exaggerated, performance issues due to wrong AJAX usage is one of the most common issues for cloud solutions.</span></p>
<p><span style="font-size: medium;"><strong>Solution:</strong> As you can easily guess the solution in the above scenario would be to simply optimize the page to make one AJAX call to get all the data needed in the table, instead of making a call for each cell.</span></p>
<p><span style="font-size: medium;">With this optimization the Azure version could take 500 + 100 + 5 (lookup) + 100 (a single AJAX call) = 705 msec. Less than a second, more than <span style="text-decoration: underline;">15 times faster</span> compared to the unoptimized local hosted version!</span></p>
<p><span style="font-size: medium;"><strong>Scenario 4 -</strong> ACME has a web page built in ASP.Net and they use update panel and many other ASP.Net AJAX controls. ACME loves the way they built it, simply dragging and dropping controls and all the "magic" happens behind the scenes.</span></p>
<p><span style="font-size: medium;">ACME feels the local hosted version works "just fine" but when they move to Azure, they "feel" that the page is just "slower". It was hard for ACME to highlight which part is slow since ASP.net AJAX controls does the magic to continuously load "stuff" and they don't really know what happens when.</span></p>
<p><span style="font-size: medium;"><strong>Solution:</strong> Unfortunately tackling issues like this one is a bit trickier compared to the one on scenario 3. (And Murphy is never wrong, we face more of this type) So what do we do?</span></p>
<p><span style="font-size: medium;">Solution option 1: Similar to the previous scenario, we still need to optimize the page to make fewer javascript calls. In this case your best friend would be tools like Internet Explorer developer tools (opens with F12) or similar add-ons for other browsers. (Please check the bottom of this post for a 10 second crash course to detect latency issues, number of calls etc.) I have to warn you though, this might not be very easy since you might detect many javascript calls that are simply auto generated for you by the AJAX framework. My suggeston would be to replace AJAX controls with your own javascript calls if you can't optimize the number of calls.&nbsp;I would also strongly suggest using a framework like jQuery to ease this task instead of starting from scratch.</span></p>
<p><span style="font-size: medium;">Solution option 2: Simply use ASP.Net MVC (+ jQuery). The paradigm is quite different and unlike classic ASP.Net, MVC developers has much more tighter control on the actual html generated and most javascript calls being made. jQuery is embedded to your project by default and it is quickly becoming the de facto standard for UI coding. The down side is that, this solution might apply only for new projects and it might not be feasible to refactor your existing app towards MVC. It might actually be easier to rewrite the UI from scratch. Not applicable for most cases.</span></p>
<p><span style="font-size: medium;"><strong>Scale Up issues</strong></span></p>
<p><span style="font-size: medium;">All cloud vendors including Azure has a hard upper limit for scaling up. As an example (and as of May 2012) a single Azure compute instance (VM) has the upper limit of 8 CPU cores and 14 GB Ram. This is as much as you can scale up, today.</span></p>
<p><span style="font-size: medium;"><strong>Solution:</strong> It's quite easy to guess, right? Your application must be designed to scale <span style="text-decoration: underline;">out</span>, not <span style="text-decoration: underline;">up</span>. Regarding compute, you should simply be able to add more instances to your deployment. And the good news is, most Azure services are designed with auto scale out features out of box. For instance Azure storage (BLOB, Table, Queue) all scale out to more and more VMs behind the scenes if needed.</span></p>
<p><span style="font-size: medium;">Relational databases are a bit tricky in this regard since it&rsquo;s not very easy to scale them out. SQL Azure scales up automatically to a stage but as of May 2012 it can't really compare to the 32 core physical box that you can buy for your on premise data centre. The solution can be partitioning the DB to scale out (never that easy) using multiple DBs (never easy either) or using non-relational stores like Azure BLOBs and tables (which is also not very easy if you really need relations)</span></p>
<p><span style="font-size: medium;">Scaling out relational databases is beyond the scope of this blog but after a quick search you should be able to find plenty of resources on this topic.</span></p>
<p><span style="font-size: medium;"><b>Bandwidth Issues</b></span></p>
<p><span style="font-size: medium;">Nowadays bandwidth capacity&nbsp;is quite high for most countries. Afterall more and more users want to watch online videos and internet is simply replacing TV.&nbsp; However we might still face bandwidth issues because, a certain country might have permanent or temporary international bandwidth issues or the amount of content we deliver is simply massive and downloading it takes more than the desired time. (ex: to broadcast a full HD video in realtime)</span></p>
<p><span style="font-size: medium;"><strong>Solution</strong>: We might consider using Azure CDN (Content Delivery Network) or a CDN from another vendor.</span></p>
<p><span style="font-size: medium;">CDNs are distributed servers worldwide and used to cache content so that the clients receive them from a node that is closer from a &ldquo;network topology&rdquo; point of view.</span></p>
<p><span style="font-size: medium;">So what is a network topology? Closer geographic distance doesn&rsquo;t always mean better bandwidth or lower latency. Two cities (from different countries) might be 100 kilometers far away from each other. One of them might have a CDN node serving the whole country and the other city might have very poor connection to the neighbour country. This can easily mean users from the second city will automatically skip downloading content from the 100 km away CDN node and will choose to download it directly from the main datacentre or from a CDN node that is 500 kilometers away.</span></p>
<p><span style="font-size: medium;">Optimizing your solution for CDN usage and understanding internet network topology are again beyond the scope of this blog post.</span></p>
<p><span style="font-size: medium;"><b>Compute Instance (VM) Performance</b></span></p>
<p><span style="font-size: medium;">The bigger your instance is, the more bandwidth it has (on top of CPU cores and memory). Please check the below page for more information.</span></p>
<p><span style="font-size: medium;"><a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee814754.aspx">http://msdn.microsoft.com/en-us/library/windowsazure/ee814754.aspx</a></span></p>
<p><span style="font-size: medium;">In certain cases increasing your VM size alone can boost the performance quickly to a desirable point. Still it would be best to collect some performance counters to see what is going on behind the scenes. For that we have;</span></p>
<p><span style="font-size: medium;"><b>Azure Diagnostics</b></span></p>
<p><span style="font-size: medium;">For many performance issues if we can&rsquo;t measure the current state then we can&rsquo;t really optimize. Simple as that. Thankfully Azure has an extensive set of tools and performance counters for this purpose and they are quite easy to use.</span></p>
<p><span style="font-size: medium;">You can check the below page for more information on Azure diagnostics.</span></p>
<p><span style="font-size: medium;"><a href="http://msdn.microsoft.com/en-us/library/windowsazure/hh411552.aspx">http://msdn.microsoft.com/en-us/library/windowsazure/hh411552.aspx</a><b></b></span></p>
<p><br /><span style="font-size: medium;"><b>Internet Explorer Developer Tools</b></span></p>
<p><span style="font-size: medium;">Pressing F12 in IE opens up developer tools that have plenty of goodies. The last tab, network, can be your first stop to detect many Azure performance issues (especially latency).</span></p>
<p><span style="font-size: medium;">A very easy way to test your latency would be deploying one liner HelloWorld.html and then in the developer toolbar go to Network tab and click &ldquo;Start Capturing&rdquo;. Then you can hit F5 to refresh the page and see how long it takes to load. Since helloworld.html is extremely simple I would assume most of what you see (80%&nbsp;?) would be network related and therefore latency.</span></p>
<p><span style="font-size: medium;">For more complex pages, network tab will give you a detailed view on your pages performance including javascript calls. Then you can focus on certain parts of the page that takes up the majority of the time. This can be static content that you load from Azure, so that you would know the optimization you need is more on server side. Or you can figure out the problem is that you are making too many javascript calls, so the optimization would be on UI level.</span></p>
<p><span style="font-size: medium;">Happy Azuring..</span></p>
<p><span style="font-size: medium;">UPDATE: I posted another blog where I talk about a few other performance related topics. You can check it from <a title="Tuning Windows Azure Performance, more thoughts" href="http://blogs.msdn.com/b/hakaneren/archive/2012/08/07/tuning-windows-azure-performance-more-thoughts.aspx" target="_blank">Tuning Windows Azure Performance, more thoughts</a></span></p>]]></content:encoded>
    </item>
    <item>
      <title>Microsoft Endpoint Protection for Windows Azure CTP</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/microsoft-endpoint-protection-for-windows-azure-ctp</link>
      <pubDate>Sun, 18 Mar 2012 11:28:35 GMT</pubDate>
      <dc:creator><![CDATA[Hakan Eren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2012/03/18/microsoft-endpoint-protection-for-windows-azure-ctp/</guid>
      <description><![CDATA[You can now download Microsoft Endpoint Protection (MEP) for Azure CTP from the below...]]></description>
      <content:encoded><![CDATA[<p>You can now download Microsoft Endpoint Protection (MEP) for Azure CTP from the below link.</p>
<p><a href="http://www.microsoft.com/download/en/details.aspx?id=29209">http://www.microsoft.com/download/en/details.aspx?id=29209</a>&nbsp;</p>
<p>It's worth noting that for most of the usage scenarios you don't really need an endpoint protection software for Azure. Yes, your web and worker roles are actually VMs but all of the components on those VMs are secured by Microsoft. Except your own software,&nbsp;and that might not really need&nbsp;MEP. However there are cases where you have to install 3rd party components or have users (admins) use the VMs remotely via RDP and MEP in these scenarios might be quite usefull.&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Microsoft is again a leader in Gartner BI magic quadrant</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/microsoft-is-again-a-leader-in-gartner-bi-magic-quadrant</link>
      <pubDate>Tue, 14 Feb 2012 12:21:00 GMT</pubDate>
      <dc:creator><![CDATA[Hakan Eren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2012/02/14/microsoft-is-again-a-leader-in-gartner-bi-magic-quadrant/</guid>
      <description><![CDATA[According to the latest BI magic quadrant from Gartner Microsoft is once again positioned as a...]]></description>
      <content:encoded><![CDATA[<p>According to the latest BI magic quadrant from Gartner Microsoft is once again positioned as a leader. I'm glad to see the praise for Microsoft's "BI in the cloud" strategy :)</p>
<p>One common complaint I heard was the lack of metadata capabilities and this will be resolved in SQL Server 2012. I have never been a fan extensive metadata use in BI though. With other tools my experience was always that the time spent to fix the metadata to reflect underlying data changes is more than to fix the report itself. It's still good to support both methodologies and leave the decision to the users.</p>
<p>For Gartner's report please visit <a href="http://www.gartner.com/technology/reprints.do?id=1-196VVFJ&amp;ct=120207&amp;st=sb">http://www.gartner.com/technology/reprints.do?id=1-196VVFJ&amp;ct=120207&amp;st=sb</a></p>]]></content:encoded>
    </item>
    <item>
      <title>New SQL Azure Pricing</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/new-sql-azure-pricing</link>
      <pubDate>Tue, 14 Feb 2012 10:53:01 GMT</pubDate>
      <dc:creator><![CDATA[Hakan Eren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2012/02/14/new-sql-azure-pricing/</guid>
      <description><![CDATA[SQL Azure price reduces more than %50 at some cases. For more information please...]]></description>
      <content:encoded><![CDATA[<p>SQL Azure price reduces more than %50 at some cases. For more information please visit</p>
<p><a href="http://www.windowsazure.com/en-us/pricing/details/#database">http://www.windowsazure.com/en-us/pricing/details/#database</a></p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Cloud Computing and Global Economic Growth</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/cloud-computing-and-global-economic-growth</link>
      <pubDate>Sun, 05 Feb 2012 10:28:25 GMT</pubDate>
      <dc:creator><![CDATA[Hakan Eren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2012/02/05/cloud-computing-and-global-economic-growth/</guid>
      <description><![CDATA[A recent study from London School of Economics (LSE) says Cloud Computing could be key to global...]]></description>
      <content:encoded><![CDATA[<p>A recent study from London School of Economics (LSE) says Cloud Computing could be key to global economic growth.</p>
<p>History almost always proved that increase in productivity creates more jobs and helps grow the economy. So what LSE says makes a lot of sense to me.</p>
<p>For more information please check <a href="http://cloudtimes.org/london-school-of-economics-study-says-cloud-computing-could-be-key-to-global-economic-growth/">http://cloudtimes.org/london-school-of-economics-study-says-cloud-computing-could-be-key-to-global-economic-growth/</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Tips on migrating your apps to Azure</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/tips-on-migrating-your-apps-to-azure</link>
      <pubDate>Mon, 30 Jan 2012 15:30:32 GMT</pubDate>
      <dc:creator><![CDATA[Hakan Eren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2012/01/30/tips-on-migrating-your-apps-to-azure/</guid>
      <description><![CDATA[For some very simple tips on migrating your apps to Azure, you can visit...]]></description>
      <content:encoded><![CDATA[<p>For some very simple tips on migrating your apps to Azure, you can visit <a href="http://weblogs.asp.net/shijuvarghese/archive/2012/01/29/tips-and-important-steps-for-migrating-apps-to-windows-azure.aspx">http://weblogs.asp.net/shijuvarghese/archive/2012/01/29/tips-and-important-steps-for-migrating-apps-to-windows-azure.aspx</a></p>]]></content:encoded>
    </item>
    <item>
      <title>BizSpark to Offer Startups $60,000 in Cloud Services on Windows Azure</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/bizspark-to-offer-startups-60000-in-cloud-services-on-windows-azure</link>
      <pubDate>Mon, 30 Jan 2012 15:27:00 GMT</pubDate>
      <dc:creator><![CDATA[Hakan Eren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2012/01/30/bizspark-to-offer-startups-60000-in-cloud-services-on-windows-azure/</guid>
      <description><![CDATA[After a few years of break I decided to blog again. Well, let's see how it goes this time.
BizSpark...]]></description>
      <content:encoded><![CDATA[<p>After a few years of break I decided to blog again. Well, let's see how it goes this time.</p>
<p>BizSpark Plus, an extension of the BizSpark program, provides higher value offers to startup accelerators around the globe. How cool is that?</p>
<p>For more information please visit <a href="http://blogs.msdn.com/b/windowsazure/archive/2012/01/30/microsoft-bizspark-to-offer-startups-60-000-in-cloud-services-on-windows-azure.aspx">http://blogs.msdn.com/b/windowsazure/archive/2012/01/30/microsoft-bizspark-to-offer-startups-60-000-in-cloud-services-on-windows-azure.aspx</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Calling web services in web-enabled InfoPath forms</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/calling-web-services-in-web-enabled-infopath-forms</link>
      <pubDate>Sat, 07 Feb 2009 11:35:00 GMT</pubDate>
      <dc:creator><![CDATA[hakaneren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2009/02/07/calling-web-services-in-web-enabled-infopath-forms/</guid>
      <description><![CDATA[I'm pretty sure most of you are aware that you can build InfoPath forms to be hosted at MOSS as...]]></description>
      <content:encoded><![CDATA[<P>I'm pretty sure most of you are aware that you can build InfoPath forms to be hosted at MOSS as web-enabled forms. This is possible using the InfoPath Forms Services in MOSS. </P>
<P>If you ever tried using this type of forms you’ll realize that you will have some limitations compared to the forms that run inside the InfoPath client. </P>
<P>One technique to come over these limitations would be using Web services in your forms. For instance you can query a database if you have a web services layer encasulating the database server. Below are some hints to make your life easier.</P>
<OL>
<LI>It is quite easy to setup a new data source that is accessing to a web service in InfoPath. You can develop and using your InfoPath client and click Preview to test it.</LI>
<LI>You can use rules that are tied to buttons or form start &amp; close rules (Tools – Form Options – Open and Save – Rules) to set Web service parameters, execute and assign the result to you fields.</LI>
<LI>For your forms to be used they have to be either added as a content type or the connection definition in InfoPath has to be stored in a connection library</LI>
<LI>To add your form as a content type navigate to manage forms in Central Administration. Here you can add your form and enable it for your site. To use a connection library click the convert button on InfoPath while you have the data connections dialog box open. Don't forget that you have to do either of these to have a web enabled InfoPath form to call web services.</LI>
<LI>Now you can create a forms library where the default form is your form which is calling web services. </LI>
<LI>In one customer we had some errors executing the web service and figured out that the reason was anonymous access being enabled using Central Administration and disabling it solved our problem.</LI></OL>]]></content:encoded>
    </item>
    <item>
      <title>Using huge files with SharePoint</title>
      <link>https://docs.microsoft.com/archive/blogs/hakaneren/using-huge-files-with-sharepoint</link>
      <pubDate>Tue, 30 Dec 2008 17:03:00 GMT</pubDate>
      <dc:creator><![CDATA[hakaneren]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/hakaneren/2008/12/30/using-huge-files-with-sharepoint/</guid>
      <description><![CDATA[One of our customers in Microsoft&nbsp;Consulting Services (MCS) was curious about the change in...]]></description>
      <content:encoded><![CDATA[<P>One of our customers in Microsoft&nbsp;Consulting Services (MCS) was curious about the change in performance characteristics of SharePoint Servers when used with huge files (around 100 MB). They were currently allowing up to 20 MB and before allowing more to the business users they wanted to test their current infrastructure (2 front-end servers, 1 back-end app server and 1 DB server). Since it is confidential I won't give details about the infrastructure but still the below information will give you an idea about using SharePoint with huge files.</P>
<P><STRONG>Testing Methodology</STRONG></P>
<P>I used the OOB load test that comes with the open source project "SharePoint 2007 Test Data Population Tool" (<A href="http://www.codeplex.com/sptdatapop" mce_href="http://www.codeplex.com/sptdatapop">http://www.codeplex.com/sptdatapop</A>) to first test the environment without the huge documet usage. And then in parallel I wrote another test that simply reads/writes 100 MB documents in SharePoint and monitored the performance counters on all of the servers. The second test used around %1 of the total users in the first test (and this was our customers guess about the huge file usage)</P>
<P><STRONG>Findings</STRONG></P>
<UL>
<LI>The average request/sec dropped around %18</LI>
<LI>The average response time was quite similar (since less pages were processed by our test rig)</LI>
<LI>CPU usage on all of the servers were quite similar except a slight increase in the front-end servers</LI>
<LI>Available memory was again quite similar (slight decreases in the front end servers)</LI>
<LI>SQL Server disk I/O (reads, writes and disk queue length) had some significant spikes and the averages had some significant (and for our scenario acceptable) differences</LI>
<LI>Network interfaces in the front-end servers had some significant difference</LI></UL>
<P>These results might not be the same in your environment and I strongly suggest performing similar tests before coming to a conclusion. In our case the current infrastructure was quite capable of handling huge files but if we wanted to further increase the performance I'd personally start looking at the SQL physical discs first.</P>
<P mce_keep="true">Oh by the way please also consider your overall disk capacity before allowing huge files.. Since SharePoint does not work like simple network shares you need to be very careful on disk capacity planning.</P>]]></content:encoded>
    </item>
  </channel>
</rss>