»
S
I
D
E
B
A
R
«
How Hyper-V eats disk space
Jun 9th, 2011 by evereq

Use Microsoft Hyper-V for virtualization?

Most probably you already store your virtual disks not in the system drive (i.e. not in drive ‘C’ for example), which is right approach (for performance and other considerations)

However not everybody know that in the C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machines folder, Hyper-V actually store huge files (*.bin) for each virtual machine that you run on your Hyper-V host! That may be huge issue in case, if you have a lot of virtual machines in use and your system drive space limited. In addition, it also may introduce fragmentation problems, due to the fact that such files maybe created and removed each time you run your instance or when you create some snapshots etc.

So basically there are 2 main questions you may ask:
a) Why such files (*.bin) are created? And why they are so big? You may notice that size of such files actually equal to amount of virtual memory which you allocate for the virtual instance. So answer is simple – it just a place (such file) to store memory dump for Virtual Machine (instance) and required by Hyper-V
b) Can I get rid of such files? Answer – no :) In current version of Hyper-V it is not possible. However it is completely possible to move such huge files to separate disk(s) out from system disk! That SHOULD be done I think in any Hyper-V host anyway, in case if you have additional disks here. It is very easy to do that: on the first step of Wizard to create Virtual Machine, do not forget to change location for virtual machine from default one to location, where you have enough space to store both virtual machine memory dump and possible snapshots (in case if you plan to use them sure thing).

HyperVDi

Simple Cloud API and maybe I should go to PHP
Nov 2nd, 2010 by evereq

Maybe I should go ….to PHP ;-) ?
(… I mean just go, not “go down” or “go up” or “go away from .NET” – read next why, really!)

Projects like Simple Cloud API (http://simplecloud.org) in PHP, together with Zend Framework and many other PHP related stuff  sometimes KILLS me, .NET developer / architect!

Why, WHY we do not have something like Simple Cloud API in .NET??? Or at least it’s not well known! Is it so hard to build and promote it ?? NO! Why it takes whole a lot of time to introduce ASP.NET MVC, if we do it so many years in Java or PHP !? Great .NET framework, tons of projects, but so limited amount of “innovative” open source projects in .NET! :(

Take a look, most of famous .NET open source projects go in same versions or even few versions behind if compare to corresponding projects from Java (see Lucene.NET for example), but do not introduce really “innovations” in the software programming! Some projects do not even exists in .NET space like Solr (i.e. you should use Java VM to run it)! Some projects like ASP.NET MVC comes much later other MVC frameworks in Ruby (RoR), Python (Django) or even PHP (Zend Framework)… And Microsoft last time spend whole a lot of effort to bring Java  / PHP into Azure… instead of increase sponsorship for example innovative OSS projects in .NET and by this push developers to go for .NET from other frameworks!

Should somebody build library like SimpleCloud in .NET ASAP!? YES! (please don’t tell me that I should build it :D ) Why?

Too many companies really need same thing to be able to abstract away Windows Azure or any other Cloud specific solution using some open source  libraries (like SimpleCloud in PHP) and made solution portable across Clouds, before they spend $$$ and stuck with one Cloud supplier forever :( See my post about this!
And too many developers really expect .NET platform to be more innovative !!!

P.S. sometimes innovations can waste your time / effort, if parent company stop support it – see my post about Silverlight

Silverlight Killed or?
Oct 30th, 2010 by evereq

Silverlight Killed or? I don’t think so…
Unfortunately, in some sense http://mashable.com/2010/10/29/microsoft-silverlgiht-html made correct statement: “Microsoft Shifts From Silverlight to HTML5″ and that’s a FACT now!

Why this happens!?? Here is my thoughts:

  1. Silverlight, like many other interesting concepts from MSFT was implemented with many technology related issues in early versions!
    Performance and fonts issues I can name as most important! I do NOT like how Silverlight apps looks at my TFT monitors (because of fonts issues), same like WPF applications! Sometimes, when I scroll something, it push me think that I should go to doctor to check my eyes again! (and same issues with fonts I see with IE9 beta, not sure MSFT will fix it someway or not before final release)
  2. Silverlight supported on much less devices than HTML / CSS / JS / Flash and it seems like because it’s proprietary this can’t be changed in near future!
  3. Development of Silverlight can be done right only using Microsoft tools like Visual Studio and Microsoft Expression Studio (some apps from it) that cost $$$
  4. If you know Java, Python Django, RoR, PHP, Grails or any other language / platform / framework for web development, it’s much more easy to use HTML5 because you already know HTML / CSS / JS stack (as well as many web frameworks) than to move to something new like XAML / C# etc! I.e. basically only developers in .NET can consider using Silverlight, not other wide audience of Web developers! And while I can’t sure thing compare power of Silverlight and HTML5, MOST of required things can be done easy with nice JavaScript frameworks (think jQuery), HTML5, CSS3 etc.
  5. Silverlight apps are always have big size! Sometimes there are even so heavy that web users probably will not wait so much time! Compare it to current compressed Javascript code and HTML5 compressed using standard gzip compression and / or different other compressors! What to feel it? Go to http://www.microsoft.com/windowsphone/en-us/buy/7/phones.aspx and check how long it takes to really get it in your browser!

I can give many other arguments around it, but generally when Silverlight out I made my choice – AVOID using it (as well as WPF, but that’s other story) for any live projects, until I will really feel the need of “all in one” web client application with really rich and heavy graphics / Video / Voice requirements!
It’s real fact that MOST of flash based sites, where site COMPLETELY was made in Flash FAIL, unless they touch some very specific area! I.e. it so easy to see that web users want “light” pages (HTML / CSS / Javascript) and not heavy as Flash / Silverlight get produced!
But again: I DO see big future anyway for Silverlight as really best framework to build RIAs out there in .NET space! More so, now it seems like Silverlight can take it place in WP7 development!

Just always you should ask yourself – are you sure you want to build (or customers ask you to build) RIA? Maybe you want to build super light, not heavy Web 2.0 (3.0) web site? Or may be you want to build something using only open / cross-platform technologies?
Than don’t even think about Silverlight, at least for now!

The November version of the Windows Azure SDK and Tools
Nov 15th, 2009 by evereq

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, 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.
  • Windows Azure Diagnostics managed library: 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.
  • Certificate Management: 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.
  • Variable-size Virtual Machines : Developers may now specify the size of the virtual machine to which they wish to deploy a role instance, based on the role’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.
  • External endpoints for worker roles. 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.
  • Persistent local resource storage: Developers can now choose to persist data written to a local storage resource at runtime when the role is recycled.
  • Windows Azure Storage Client managed library: The Storage Client library provides a .NET API for accessing the Windows Azure storage services.
  • Improved Development Storage: 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.
  • Updated samples: 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.

As we can see – 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!

Update: after installation and first review, I found following:

  • It seems like Microsoft finally have “official” Client library for Azure Storage. The name is same like from samples before, i.e. “StorageClient”, but now it is in “Microsoft.WindowsAzure.StorageClient” namespace, not like “Microsoft.Samples.ServiceHosting.StorageClient” 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) – 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)… But with official Azure Storage Client library a lot of tasks become much more simple! You can found this library (*.dll) in “c:\Program Files\Windows Azure SDK\v1.0\ref\” folder, together with other useful binaries!
  • It is possible now to use another “official” library to get programmatic access to most of functionality available before only from Azure Developer Portal (and actually I don’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!).
  • A new Library for Logging and Diagnostic functionality was added to SDK (Microsoft.WindowsAzure.Diagnostics namespace) - 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 – samples-cs.zip for C# version and samples-vb.zip for VB version)
  • 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) – 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!
Amazon AWS Big News for developers
Nov 13th, 2009 by evereq

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: “… AWS Software Development Kit (SDK) for .NET Now Available… “.

Sure it’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 “standard” API from Amazon and this fact is very important!

For example, for Ruby there is no such official SDK (or Ruby gem), and developers can choice from few available gems (right_aws, amazon-ec2 or AWS:S3 to name just few).  The same situation for Java - available a lot of “community” libraries, but no official SDK… (ok, ok, for Java we have at least official AWS Toolkit for Eclipse, but Toolkit it is not SDK!!!).

But why it is important to have official “language specific” SDK?

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 – it a BIG plus for Microsoft!).

Also it is important for developers, so they know that if they take some library and put this library as “base” 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’s just “add-ons” and can’t replace real official SDK!

So it is really BIG day for Amazon and .NET developers – first official “language specific” SDK, and for .NET!!! What will be answer from Microsoft Azure that is still in “Beta”? ;-)

Note: in this post I mean “language specific” SDK, not just common SDK that list API for Web Services  with samples how to use them for example, etc… 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 “safely” create applications using such “language specific” SDKs! Hope you understand what I mean ;-)

»  Substance: WordPress   »  Style: Ahren Ahimsa
© Copyright 2008–2010 EvereQ.com All rights reserved. Logos, company names used here if any are only for reference purposes and they may be respective owners right or trademarks.