Sunday, 13 June 2010

AppFabric Goes to Ireland

Last week I gave my Distributed Caching with Windows Server Appfabric talk at EpiCenter, the Irish Software Show, at Trinity College in Dublin. My audience was a little, ahem, disappointing, particularly in the week that AppFabric was officially announced and released, since I only had one audience member, Mark Needham of Thoughtworks, who was presenting in the afternoon. I also had technical troubles with AppFabric again - clearly in a previous life I seriously pissed off the demo gods. I've now torn down my AppFabric demo infrastructure to rebuild it - this also gives me a chance to recompile my demos with the release version of AppFabric - I've been using the Release Candidate.

My slides from EpiCenter can be seen on Slideshare, and my demo code is downloadable here.

Tuesday, 8 June 2010

Windows Server AppFabric is out!

As announced at TechEd yesterday, v1 of Windows Server AppFabric was released to the web at the weekend (though like the Release Candidate, I found out the Chris Alcock's excellent Morning Brew blog). You can download it directly here, or through the Windows Platform Installer. There's an installation guide here. If you've been using the Beta 2 Refresh release, the installer will allow you to upgrade from this to the release version - there are details here.

Additional coverage:
Official announcement from the AppFabric blog




The Irish Software Show

It's the Irish Software Show this week! There are 80 sessions taking place from top speakers including Craig Murphy, Jon Skeet, Alan Dean and many others. And also, ahem, me.

I'm doing my session on Distributed Caching with Windows Server AppFabric tomorrow, Wednesday 9th June. I shall also be attempting to whip the crowd into a frenzy before Jon Skeet does his first session - yes, I'm Jon Skeet's warm-up man!

If you haven't got tickets for the show yet, it's not too late! And even better, the organisers have very kindly allocated some concession tickets to me: if you go to my page on the EpiCenter website, you can get up to €90 off the price of your ticket! And I'll see you tomorrow!

Friday, 28 May 2010

What's New in the AppFabric Release Candidate




The Windows Server AppFabric Release Candidate was, well, released last week. Here's a quick look at changes from Beta 2.

What's New in PowerShell
Possibly the most visible change is the return of the Start Menu item for Powershell with the AppFabric module pre-loaded.












This fires up the Powershell console and runs 'Import-Module DistributedCacheAdministration' from the command-line, with the No-Exit switch to keep the console open. However it seems (at least on my Windows 7 machine) that there is something not quite right with this, as I now have to Exit from Powershell twice before the console actually closes. I've checked this on a VM running Windows Server 2008 as well as my Windows 7 laptop and it behaves the same on both platforms. Usefully, however, it also runs 'Use-CacheCluster', which if you're anything like me, saves you trying to run a cache command, then running Use-CacheCluster, then running your original command again.











I'm slightly disapppointed that the cachehelp command hasn't made a reappearance, so overall for Powershell I think I'll stick with my customised profile for importing the AppFabric commandlets.

What's New in Licensing
Err, nothing. There is no Go-Live license for the Release Candidate, although to be fair you might as well now wait another few weeks for the v1 release.

What's New in the Caching API
Again, nothing (that I can see), although since Beta 2 was the feature-complete release, it would be wrong to be making changes now.

Thursday, 20 May 2010

AppFabric Goes North!

Thanks to NEBytes for having me up to speak last night (and thanks to Andy (and Tammy :-) ) for putting me up). I ran my AppFabric distributed caching session, and for the first time nothing broke! Lots of performance problems though, caused by trying to run too many VMs on not enough memory. I think when I get home I'll review my demos: I want to run them all in one VS project to make it easier to swap between them as I'll just be able to run up one Cassini instance that'll contain all the demos. I was also thinking last night I might change the Regions/tagging demo so I get the objects from the database as required and then cache them in a lazy style. Watch this space.

I missed the first half of Jonathan Noble's session on Powershell 2.0, but I was quite impressed with what I did see. My use of Powershell can be described as 'fledgling' at best (even though it's used in managing AppFabric clusters and caches), so it was instructive to see it really put through it's paces. The remoting tools built into Powershell 2.0 look particularly impressive, it's made me think about how we manage our web servers at work and whether we should be using Powershell from our desktops instead of RDPing onto the servers and then using the IIS MMC.

I'd have liked a bit more time to look round Newcastle as it's somewhere I've never visited - maybe next time. I did get to drive past the Angel of the North, which was disappointingly somewhat less impressive than I'd anticipated. And this morning on the way back I got to see (if only on the horizon) the Middlesborough Transporter Bridge! (Thanks for the A19 tip Andy!)

Wednesday, 28 April 2010

Rebuilding CacheHelp

Ron Jacobs blogged yesterday about using the AppFabric Beta 2 Refresh and the fact that the cachehelp command seems to have disappeared. If you rely on cachehelp as much as I do, fear not! To paraphrase the start of The Six Million Dollar Man, 'we can rebuild it'...

Powershell includes a Set-Alias command, which we can use to create aliases for existing commands e.g. Set-Alias nc New-Cache. Ron helpfully provided the Powershell command we need to retrieve the AppFabric commands - Get-Command -module distributedcacheadministration - BUT you can't create an alias for a whole command-line with parameters, only for an individual command.

Fortunately we can get round this by creating a Powershell function which wrappers the commandline:
function getVelocityCommands
{
    Get-Command -module distributedcacheadministration
}

Now we can use Set-Alias GetCacheHelp getVelocityCommands to create an alias which calls the function. And we're done!

Almost...

Aliases and functions are session-based - once you close down Powershell, you'll lose them. To make them persistent, you'll need to add them to your Powershell profile. There's a great tutorial here on creating Powershell profiles. Too much work? Then download this profile, which imports the AppFabric commands and creates the cachehelp alias for you.

Monday, 26 April 2010

AppFabric For .Net 4.0

So a fortnight ago .NET and VS2010 were released, and shortly after that I tried to install the AppFabric Beta 2 release on my laptop. No go - Beta 2 has a dependency on the .NET 4 Release Candidate and will not install on the .NET 4.0 RTM release. I emailed Ron Jacobs (who has made the mistake of being associated with AppFabric and being contactable) about this and asked when we'd see a release that ran on the .NET 4.0 RTM release. He answered me and then wrote up this blog (and when he talks about emails rolling in, it's mine he quotes so I'm slightly suspicious of how many he really got about this), which says that .NET developers who want to use AppFabric will have to stay on the .NET 4.0/VS2010 RC versions until an unspecified time between now and the end of June when AppFabric will RTM. I can't say that I was hugely impressed with this:

So I was quite surprised today to look at Alvin Ashcraft's Dew Drop and find:
Which appears to be AppFabric Beta 2 rebuilt for .NET 4.0 RTM. I haven't tested it yet, but I've installed it and can confirm it installs OK onto a Windows 7 machine with .NET 4.0 RTM.

There's nothing yet about this on either Ron Jacob's blog, the Velocity blog or the .NET Endpoint blog. And I'd like Microsoft to explain their change of heart - right now, I'm interpreting it as being that AppFabric may miss it's RTM deadline of 30th June. But someone should feel free to tell me different.