Posts Tagged ‘azure’

  1. Try Windows Azure For One Month FREE

    Posted on September 1st, 2010 by Kevin

    I’ve been using Windows Azure for a couple of months now, and I’ve really fallen in love with the platform.  If you’re interested in doing any work in the Cloud, it’s worth it to you to check out Azure.

    And now you don’t even have to sign up for an account to try Azure (read: NO CREDIT CARD REQUIRED).  Until Oct 31st, the Azure team is offering 1 free month of Azure to anyone that registers.  Not only that, but you can register multiple times.  If you register now, you can get Azure for free in September AND October!

    Go try it today!

    http://azurepassusa.cloudapp.net/

    Digg This
    Reddit This
    Stumble Now!
    Buzz This
    Vote on DZone
    Share on Facebook
    Bookmark this on Delicious
    Kick It on DotNetKicks.com
    Shout it
    Share on LinkedIn
    Bookmark this on Technorati
    Post on Twitter
    Google Buzz (aka. Google Reader)
  2. Word of Warning For People Using 3rd Party Reporting Tools in Azure

    Posted on July 22nd, 2010 by Kevin

    DISCLAIMER: I’m simply sharing my experiences here.  I am not laying blame on any of the tool developers or Azure team.  Frankly, I’m not sure who is should be held accountable in these cases.

    I’ve spend the last day working in Azure, and trying to implement a 3rd party reporting tool into my projects.  For my first choice, I decided to use Telerik Reporting.  They’re a big part of the developer community, and I am willing to give them my client’s money because they do have good products.

    Implementing a report should be pretty straightforward, and in most cases it is.  Walk through the designer, connect to a datasource, layout the report, and you’re good to go!  Viewing the report should be equally as straightforward.  Create a form (in this case a WebForm), drop a ReportViewer control, and in the code behind do some voodoo in order to wire the report up to the report viewer.

    But really, our use cases call for only returning the the reports in PDF or Excel formats.  So the above, while doesn’t work, isn’t necessary.  Telerik has a component for processing a report, and dumping it directly to PDF or Excel (in addition to several other formats).  That code too five minutes to wire up.

    I go into the Azure Development Fabric, and try to download my report.  The report generator ticks away for a few seconds and then BLAM, Out Of Memory Exception.

    Excuse me!  The one problem I don’t have is lack of memory, so I scour to the forums to find out what the deal is.  Turns out that Telerik relies on GDI+ to renders reports in various formats.  Guess what Azure has poor support for?  You bet, GDI+.

    Thanks ok, Azure is only 2 years old.  You can’t expect the products to have a quick turnaround.  I’ll have to go look at other solutions.  How about DevExpress XtraReports?  A quick Google search for “XtraReports Azure”, and you’ll find out that XtraReports falls into the same issue!  Reliance on GDI+ makes it unusable in an Azure environment.

    How about GrapeCity’s ActiveReports?  Supported, but with limitations.

    • Rtf, Excel and Text filters are not supported on Windows Azure.
    • When using the Pdf export filter, digital signatures are not supported.
    • The Pdf export filter cannot access System fonts, so you must create a Custom Font Factory to embed any necessary fonts for non-ASCII characters.

    Holy snap!  So I can’t export to Excel (which is a requirement), but it looks as if I want to create a report I have to embed the fonts in my reports.  Now I don’t know if that’s easy or hard.  I need to test the product to see, but the lack of Excel exporting is knocking the product down.

    Now, I have no problem that these providers don’t currently work in Azure.  If you have a code based created around a single technology, it’s not quick or cheap to turn around and make it use another.  However, I wasn’t able to find anywhere on the product sites saying that they do not have support for Azure.  Instead, I had to download the products and waste several hours trying to make the product work in a way that was physically not possible.  Advertising unsupported features is as important as advertising support features.

    And what’s up Azure team with lack of support for GDI+?  Isn’t the operating system supposed to be on par with Windows Server 2008?  I’m sure I could run my site in IIS on a WS2008 machine without issue.

    So here’s my call:  If you’re working in Azure, and using 3rd party tools for reporting, please tell me what you’re using or if there is something I’m completely glossing over.  If I find something that works and meets my simple requirements, then I’ll give them a shout out on my blog.

    Digg This
    Reddit This
    Stumble Now!
    Buzz This
    Vote on DZone
    Share on Facebook
    Bookmark this on Delicious
    Kick It on DotNetKicks.com
    Shout it
    Share on LinkedIn
    Bookmark this on Technorati
    Post on Twitter
    Google Buzz (aka. Google Reader)
  3. Review: Azure In Action

    Posted on June 16th, 2010 by Kevin

    I was recently asked to review Azure In Action by Chris Hay and Brian H. Prince.  Azure In Action is being published by Manning Publications, and is scheduled for release in August 2010.  Check out the web page at http://www.manning.com/hay/.

    Azure In Action is divided into six parts.  The various parts are skillfully designed to take a reader from not knowing anything about Azure to writing scalable, healthy applications in the cloud.  All facets of Azure developer are covered: development fabric, web roles, worker roles, blobs, table storage, queues, SQL Azure, AppFabric, etc.  Whether you’re new to Azure, or a seasoned professional, Azure In Action is a bookshelf requirement if you’re working with Azure.

    I’m looking forward to seeing updates to the book coming down the line.  With the recent release of the latest Azure SDK, I’m expecting the book to be updated with some of the latest deployment features and SDK changes.  Currently, I haven’t seen an update to the book and I don’t know if the update is in the works.  My review is based off the pre-June update.

    Digg This
    Reddit This
    Stumble Now!
    Buzz This
    Vote on DZone
    Share on Facebook
    Bookmark this on Delicious
    Kick It on DotNetKicks.com
    Shout it
    Share on LinkedIn
    Bookmark this on Technorati
    Post on Twitter
    Google Buzz (aka. Google Reader)
  4. Beginner Guide to Preparing for Azure

    Posted on June 1st, 2010 by Kevin

    We have a project that we are considering to move over to Azure.  However, the move to the cloud can be a bit daunting if you’re not fully expecting certain things.  Cost is really one of the big factors driving our decisions.  I sat down and chatted with my friend David Makogon, and discussed some of the best Azure scenario’s for our deployment.  A lot of good information came out of that conversation, and I feel it might be a lot of good information to share if you have a similar situation.

    Our scenario: Our application is build on ASP.NET WebForms, and is running on shared hosting.  It’s connected to a shared SQL Server instance through the same host.  The host (who shall remain nameless) is a piece of crap.  Random downtime, poor support, and an overall bad experience.  We were looking at two different options: a dedicated server or the cloud.

    Everything I’m talking about is my understand as of the date of this post (June 1st, 2010).  I cannot guarantee the accuracy of the information after this post.  If it changes, I will do my best to update.

    Roles

    When looking at Azure, you’re really looking at “roles”.  A roles were are interested in are the following:

    Web Role

    A web role is a web site or web service running on Azure.

    Worker Role

    A worker role is a process that runs in the background to perform tasks.  Think of it as a “windows service” on the web.

    SQL Azure

    It’s like a hosted SQL Server instance.

    Pricing is based on per role per hour (web or worker).  For example, if I run a web role 24 hours, it would cost me about $2.88.  These are called compute hours.  The problem with the naming is that even though you might not be “computing” anything, you’re still be charged for the role being deployed.  Imagine a single site, running 24 hours a day for 30 days.  This will cost you about $86 a month.  That’s your baseline cost for hosting.

    Bandwidth

    Now, people are going to actually use your site.  This requires bandwidth.  Bandwidth is *cheap*.  You’re looking at $0.10 per GB for data coming IN, and $0.15 per GB for data coming out.  And yes, that translates to 10 cents and 15 cents respectively.

    Bandwidth is also required when you’re talking between roles.  Imagine you have a web role running in a datacenter in Redmond, and a worker role on a datacenter in China.  Ok, I really don’t know where all the datacenters are, but play with me here! If the web role needs to talk to the worker role, that requires bandwidth (and is priced at the rate above).

    However, if all your roles are hosted in the same datacenter, you don’t have to pay for bandwidth charges.  This is called “affinity”.  If roles are in the same datacenter, they have the same affinity.  Different datacenters, different affinities.  Something to keep in mind when planning scaling.

    Data

    When we talk about data storage in Azure, there are two possibilities.

    First, there is table storage.  Forget everything you know about relational databases, because you’re not going to get any of that here.  Data goes in, and a data comes out.  You’re responsible for managing the data.  However, it’s really cheap.  You’ll only be looking at $0.15 per GB for table storage.

    Second, there is SQL Azure.  You can take your trusted SQL Server databases and deploy them to the cloud.  Then they’re used the exact same way as regular SQL Server instances would be used.  For a single 1 GB SQL Azure instance, you’re looking at paying $10 per month.

    Additional Thoughts

    ASP.NET Gotchas

    I’ve written several ASP.NET applications, and I’m a fan of session state.  I’m sure many other ASP.NET developers out there will agree with me.  However, Azure does not have anything in place for managing session state.  Azure is really a “stateless” system.  There are 3rd party examples out there of how to do this, but right now there is nothing official.

    There is a built in membership and roles provider, so don’t worry about that!

    Note About Worker Roles

    At first, I was considering the thought of not having to run a worker role.  I’m developing a web application, why would I need one?  However, there are a few good reasons why you might want to think about baking in the cost of a worker role.

    First, Azure provides a lot of data on the roles and how they’re performing.  Worker roles can collect and analyze this information on the fly.  Ever have a web application crash?  Worker roles can collect crash information, and send a nice email or log it for future reference.  All this is done independent of the web role.

    Second, worker roles can help you programmically scale other roles.  Imagine a site that normally sees less than 1000 hits a day.  Somebody posts a link to the site on Digg or Reddit, and the internet goes crazy trying to access this website.  Normal shared hosting or even dedicated hosting would buckle under the weight of all the requests.  In Azure, your worker role can watch the site and start new instances as they are required.  The removes the strain off of a single process, and balances it between several.  After the internet goes to sleep, the worker role and kill unneeded web roles.  You do have to pay for the roles that it starts up, but hopefully it wouldn’t be for that long.

    Azure is a great solution, and I’m looking forward to using it on future projects.  The upstart costs of Azure hosting can be scary, but you need to think about it long term.  Imagine the costs of having to buy and house several servers for a farm.  Imagine having to pay for a dedicated pipe for all the servers to connect to the internet through.  Imagine costs of system administrators.  Then imagine how much less running multiple roles on Azure would cost.  The cost of Azure will grow as your site grows.  But the goal is that as the site grows, so will your pockets.

    I’m really hoping that I didn’t provide any misleading information in this post.  If you were considering Azure at all, either for a new project or an existing one, hopefully you now have more information than you did before.

    Digg This
    Reddit This
    Stumble Now!
    Buzz This
    Vote on DZone
    Share on Facebook
    Bookmark this on Delicious
    Kick It on DotNetKicks.com
    Shout it
    Share on LinkedIn
    Bookmark this on Technorati
    Post on Twitter
    Google Buzz (aka. Google Reader)
  5. Azure Boot Camp – Virginia Beach

    Posted on May 3rd, 2010 by Kevin

    Tell your friends!  On July 7th and 8th, the Hampton Roads .NET Users Group is hosting it’s first major event.  We’re lucky to have David Makogon leading us in a 2-day Azure Boot Camp.  If you’ve been looking at Azure as an option for developing next generation web application, then this event is not to be missed!

    And this event is 100% FREE OF CHARGE!  All you have to do is show up!

    Digg This
    Reddit This
    Stumble Now!
    Buzz This
    Vote on DZone
    Share on Facebook
    Bookmark this on Delicious
    Kick It on DotNetKicks.com
    Shout it
    Share on LinkedIn
    Bookmark this on Technorati
    Post on Twitter
    Google Buzz (aka. Google Reader)