Saturday, July 02, 2005

Making the CTP's, Pre-Betas etc... better and easier to use!

Over on Sahil’s blog, he has made a very good suggestion on how to make the CTP’s easier to use, cut down on the amount of time wasted downloading, installing and make stuff work.

Sahil has placed the suggestion in the MSDN Product Feedback Center  and if you think its a good idea, please vote. You can vote on the suggestion here.

Overall I think this is a great idea, as many folks that I know will not play with the CTP bits for the simply fact that time/cycles required to get the CTP bits up and running takes too much time and while folks are keen to play with the CTP’s, the amount of time required just to get them running/installed, before you even start playing with them is too great.

In essence, if you can only afford 8 or so hours a month to play with a CTP that is of interest to you, spending the majority of that 8 or so hours downloading and installing the CTP, places a barrier to actually playing with the CTP.

So if you think this is a good idea, by all means vote on the suggestion here.

The easier it is to get a CTP up and running the more folks will play with the bits!! Right!

– Paul

ps
I reckon this would not be that difficult to implement for MSDN subscribers, the big thing for me is that they use VPC’s diff. disks, as downloading 2+GB image files (aka VHD files) is alot of data duplication (i.e. the same OS files over and over again).

For example, I have base OS images of W2K3 (about 2.5 GB in  size) and its would be handy to have an Indigo CTP on a diff disk with Indigo installed that would be about (1GB or so), instead of downloading a whopping 3.5+ GB file size (i.e. a complete image).

 

 



Saturday, July 02, 2005 1:33:11 PM UTC | # | Disclaimer | Comments [0] | 
 Friday, July 01, 2005

The 7 Fallacies of Distributed Computing

While scanning some RSS feeds that focus on Java etc.., I spotted a reference to “ 7 Fallacies of Distributed Computing”. The link pointed me back to Ted Newards talk that he did back in March covering some of the topics in his book, called “Effective Enterprise Java”. You can find the recording on TSS.COM.

When I spotted the phrase “ 7 Fallacies of Distributed Computing”, it so rang a bell, but I could not match the reference  in my own personal mountation of worthless information.

Its been years since I read any references to Peter Deustch’s “The 7 Fallacies of Distributed Computing” , probably cause it gets used more in the Java world than in the DCOM/.NET world. For those that are unfamilar with the notions that Peter Deustch proposed so long ago (in internet time terms) back in the 90’s (I think), they are the following:-

1. The network is reliable
2. Latency is zero
3. Bandwidth is infinite
4. The network is secure
5. Topology doesn’t change
6. There is one administrator
7. Transport cost is zero

IMHO, these are still very relevant today, perhaps even more so today than when they were first proposed back in the 90’s; as there are more distibuted systems being developed today than there every has been before. I particularly like these “The network is reliable” and “Latency is zero”, as you can never really assume that a network is reliable and IMHO latency (in networking, while a necessary evil, as the speed of light is a constant after all ) is a possible performance killler in an overall system, especially when systems make unneccessary calls (and assume that Transport cost is zero) or make assumptions about the topology of a network. For e.g. try doing distributed 2PC when you have mountains of layer 2 and layer 3 intermediaries ,etc… between all of the particpants in a tx, ooohhh boy is it dog slow, irrespective of how near or far they are. Another example would be try to remote an object by ref and then you are at the mercy of all of the equipment between the callee and the caller; for example anyone remember the good ol’ days of the DCOM subsystem giving you a messagebox saying how the connection was reset on the client machine and this would be due to some comms equipment between the client and server dropping/reseting the connection (which still happens quite a bit today).

IMO, useful things to bear in mind, right??

– Paul 

 

 


 | 
Friday, July 01, 2005 2:38:34 PM UTC | # | Disclaimer | Comments [0] | 
 Tuesday, June 28, 2005

Followup to - Visual C# 2005 and C#2.0 - at INDA in Galway

Many thanks to all that attended the talk, it was good to be in the City of the Tribes.

You can get a copy of the slides at this link.

For those that were looking for more info on the Snipper Manager and the new language enhancements, you may find some of the following useful:

Code Snipper Editor
Upcoming C# chat: C# IDE June 30, 2005
Investigating Code Snippet Technology
An Introduction to C# Generics

 

HTH,

– Paul



Tuesday, June 28, 2005 12:17:12 PM UTC | # | Disclaimer | Comments [2] | 
 Monday, June 27, 2005

WSE 3.0 CTP and WS-ReliableMessaging

[Info via Christian Weyer’s blog]

A sample code reference implementation for the WSE 3.0 CTP that implements the latest draft of the WS-ReliableMessaging (WS-RM) specification, as well as an article, can be found at this link.

– Paul



Monday, June 27, 2005 9:48:20 AM UTC | # | Disclaimer | Comments [0] | 
 Tuesday, June 21, 2005

While its getting more difficult to measure the performance of a CPU, as clock rates become less important/relevant.....?

Tom’s hardware has been benchmarking an Athlon 64 X2 4800+ with 2.4 GHz against an Intel Pentium 840 EE with 3.2 GHz. You can get the details of the test results and configuration, at this link.

What is very interesting is the the AMD proc is running at 2.4GHz and the Intel proc is running at 3.2GHz. Conventional wisedom would dedicate that the faster clock rate would mean more work would get done and that the Intel proc would be the winner, right! I think it is safe to say that this is the way that most folks would qualify a Processor?

The current results that the folks at tom’s hardware have are:

  • “Data compression with WinRAR: the AMD system has 29.5% better performance;
  • MP3 encoding of the CD: AMD system has 4.7% better performance;
  • DivX encoding of the DVD: AMD system has 28.2% better performance. “

and these results are with the Intel proc having HT enabled, which means 4 virtual CPU’s and this *feature* is not available from AMD :D

You gotto love the new architectures that AMD are using in their procs, it is just so clever and fast; and I am a huge fan. Its really clever stuff, esp. the HyperTransport.

But it does bring up the interesting question, how easy/hard is it going to be to measure/quantify/decide which processor is right for you? While clock rates was a nice simple way (possibly too simple of a way) to do it, now that clock rates have reached a plato for the next few years, its not the easiest thing in the world to articulate to someone, as we have been gorging on a diet of faster means better for years?

Perhaps we can use something like, they work smarter and not faster  It looks like AMD will be the Gamer, etc.. proc of choice for the next few months, until some of the new Intel procs emerge.


 |  |  | 
Tuesday, June 21, 2005 2:25:07 PM UTC | # | Disclaimer | Comments [1] | 

Follow up to : Indigo and Connected Systems Talks at NIMTUG in Belfast

Many thanks to NIMTUG in belfast for the invite and to the many folks that attended the talk. Its very hard to give a talk, with a fridge full of beer at the bottom of the room

You can get the slides for the talk at this link.

Since I feel that many of the questions were quite pertinent and relevant to usergroups in IRL, I thought I would jot down a few notes and responses; hopefully help out.

To start with the low lying fruit:

– Yep my blog is a mess, sorry, I have been adding code/features to the DasBlog engine (such as delayed publishing, fixing a few bugs, a new stats engine that uses SSB and Yukon for the heck of it and a weak attempt at a port of the core engine to Whidbey), and hence some of my downloads have been broken, I will look into this and either revert pack to the offical release and/or fix the problem. So give me a few days on this and the downloads will be fixed.

– Again we have lots of new folks joining the usergroups that have a serious want for information on VC++ information, in regard to VS2005 and how to move VS6 VC++ code to .NET and/or the new VC++ in VS2005. Give me a few days on this one and I will put together a collection of links etc… that I have found very useful and hopefully they will be a help.
For me, I am very delighted to hear different folks mention this at the last number of usergroup sessions I have been at (in Dublin and Belfast) and I totally agree the VC++ team should be more visible with what they are doing, as there is not as much material out there when compared to other langusages, but I think the reason for this is fairly apparent.

– A HUGE many thanks to the folks that are still giving me feedback on the System.Transactions talk. As I have said to many folks before, I personally perfer concept based talks, as I like to give some suggestions on perhaps some new ways of thinking about patterns, uses of technology etc I really do very appreciate the fact that many folks like the way that I tackle the concepts first and it seems really helped folks think of transactions in a totally different way.

– For me, probably the best question of the night, happened before the talk even began. “Has WinFx become very confusing” ?
My answer, ABSOLUTELY. Once more with feeling, AAABBBBSSSOOOLLLLUTTEEELLLYYY? For me it is becoming very hard to understand what is being downstreamed, will it be downstreamed to W2K3/XP or will it be W2K3 R2 etc………  

There was many other interesting things happened at the talk, such as an ex-member of the Avalon team was present at the talk, WOW.  And did I mention the fridge full of beer at the end of the room!!! Damn, should have brought a camera.

Also, there was a few areas that I had to skip, as I was running out of time, mea culpa, but since many folks were new to SO, I thought it would be best to spend more time on that.

Examples would be:

– I did not cover in depth how Indigo is host agnostic, in that it can be hosted in IIS, EXE, Windows Service (sometimes still referred to NT Service), plus many other options.
– Yep, I did not cover WAS (the Windows Activation Service). This was mainly due to time, but in fairness this is probably one area that is probably subject to the most change over the next while.
– Other things I have to followup on include, the P2P stuff from MS (Rob might give me a hand with this one), lots of Q’s on Interop (both on papers/examples), custom transports/bindings in Indigo (which is a good blog entry I think), some Q’s about E12 (the next version of Exchange, I don’t think there is much out there yet, as its RTM is a bit out, roughly Longhorn Server AFAIK), some of the papers I referenced during the session, more material on SO (as some folks had never heard of it before), plus many more questions (the NIMTUG guys have made a list and Damien will forward it on to me) and If I missed your questions, please let me know.

As I am going to off for the next few days, it will probably be Monday before I get back to answering all of these, so please bear with me.

Many thanks again for the great questions and feedback, it gave me lots of ideas about what I perhaps should change in the presentation (but it is a very large topic) and also blog a little about. Especially interop with services using today’s stack, as you generally have to fight with the tools so much, it is not even funny! Lots of folks seem to be having issues here and there is quite a bit out there, such as the latest version of the MSDN magazine, where Aaron Skonnard has written an excellent article on this topic.

I was very particularly interested to hear the comments about VC++, Biztalk and IT-Pro. Yep, this is probably something that needs more attentation across all of the usergroups, as it is not the first time I have heard this feedback.

When I get the time, I will update this blog entry next week and follow up with more details that will hopefully help with the questions that many folks raised.

Ciao for now,

Rgds,

– Paul

 

 

 

 

 

 

 

 

 

 


 |  |  |  | 
Tuesday, June 21, 2005 1:11:45 PM UTC | # | Disclaimer | Comments [0] | 
 Monday, June 20, 2005

Some interesting news on the AMD Tech Tour

<update> I see that this issue has been resolved and that have new stock in place. Info via Volker Will’s blog </update>

I heard about this last week (from a buddy in Texas), but it seems that the Register have also picked up on it as well.

I was actually floored when I heard that AMD have actually already run out of the promotional hardware (i.e. Athlon64 3200+ and Windows XP x64 Edition for just $250 and a server system with two Opteron 246 chips and Windows Server 2003 x64 Edition for just $500)  for the AMD Tech Tour and they are only 4 or so into the 13+ cities they are visiting in this promotional tour of the US and Canada. I won’t even mention the fact that they choose not to come to any region outside of the north american continent.

Not so good for those folks in the other 9+ cities where they are expecting some good discounts. I know AMD hardware (as well as dual-core procs) is hard to get right now (especially in Europe) but come on AMD? What were you expecting? No one was going to take up the offer?

sigh!

– Paul



Monday, June 20, 2005 9:31:34 AM UTC | # | Disclaimer | Comments [0] | 
 Friday, June 17, 2005

Fiddler - HTTP Debugging Proxy

As I seem to be on a bit of a HTTP traffic binge this week, looking at why my angle brackets cannot get between systems, I have been heavily using the Fiddler tool and I would highly recommend.

You can get the Fiddler bits at this link

– Paul

ps

btw, its very useful to track down malware as well. Its very interesting to see how much info get transmitted when you click a link on a browser and/or use a browser toolbar.


 | 
Friday, June 17, 2005 2:20:29 PM UTC | # | Disclaimer | Comments [0] | 

IIS6.0 Manager for Windows XP

This recently came up in a conversation I had during the week.

How do I manage a IIS6 from an XP workstation?

There is a version of the IIS6 manager specifily aimed at XP. You can download it from this link.

– Paul



Friday, June 17, 2005 2:13:44 PM UTC | # | Disclaimer | Comments [0] | 

Performance testing web services/sites and why 2 is the magic number for HTTP?

As we all converge on port 80 traffic to make stuff work and communicate with each other, at some stage we all benchmark and test the performance of the web property, right

While performance testing a web site/service is always a tricky business, as there is always a feeling that it is artifical in nature and does it really reflect what takes place in a live production system?

For me, one area that comes up quite a bit is the (default) settings of Windows and .NET when it comes to perforamance testing, whether it be with ACT, LoadRunner, etc…..

While there is lots to think about, such as the configuration of NLB, NAT, firewalls etc… One of the things that can be easily over looked, is the simple statement in the HTTP specs, where it states for HTTP implementations A single-user client SHOULD NOT maintain more than 2 connections with any server or proxyand the inverse of this is also true.

So, when doing performance testing, perfectly acceptable live production settings can cause you some issues, and perhaps even soak up cycles while you chase a “perceived” performance issue, when it does not exist.

So, it is always useful to augment the default settings in your test environment, and add your client performance test machines to the “ConnectionManagement” configuration of the network setting of the Fx. IMHO, I would not alter the defaults, as they are there in my opinion to reduce the attack surface for a DoS attack.

HTH,

– Paul

 



Friday, June 17, 2005 1:34:59 PM UTC | # | Disclaimer | Comments [0] | 

Musings on .NET threadpool defaults and dual cores?

Have not tried this yet, but it is an interesting question?

Will the Whidbey threadpool recognise that it is on a system with multiple cores? It probably will, but I still have to find documentation/links that explicitly states this?

IMHO, its uber important that it does, as the traditional DP server market is soon going to have 4 execution cores and not the traditional two.

If it is not, then perhaps things like ASP.NET, ASMX etc… will perhaps have a less than optimial configuration for the typical dual proc server that gets 4 execution cores? Just a thought, maybe it doesn’t make a difference, but it does raise an interesting question.

For sure, 25 threads per proc. is the magic number for server apps; in general anything above that causes performance degradation (in general), but when the processor die has multiple core, what should the value be? Or does the value still remain valid? If so, what is the performance charteristics of running only a default max of 50 threads on a box with 4 execution cores? Considering that most programming today is done in a sync. manner, having only a default max of 50 threads on a DP box raises some interesting questions? Today, when you move out of the traditional 2 execution core market (i.e. your standard dual proc machine that 90%+ of the market uses) and go into the 4 proc boxs you typically have to throttle down the default settings, but with more that one execution core in a processor die, which way does the default setting work? Per processor die or per processor core?

Just curious, as I have not seen it mentioned yet? I probably will try this out over the next few weeks, but if anyone knows, I would be keen to know?

– Paul


 |  |  |  |  |  | 
Friday, June 17, 2005 1:14:54 PM UTC | # | Disclaimer | Comments [0] | 
 Wednesday, June 15, 2005

Changes and performance improvements to HTTP API in Windows Server 2003 SP1

With the release of SP1 for W2K3 , there was a number of changes to the HTTP API, which I find very useful.

There is some very obvious changes like the support for 64bit, but there has been lots more as well.

The basic list of these changes are:

  • Improved Performance and Scalability
  • Enhanced HTTP Error Logging
  • HTTP API Kernel-Mode SSL Support
  • HTTP API Parser Enhancements
  • HTTP API Parser Exceptions
  • WOW64 Support

Examples of the changes are the default hard limit of simultanous connections that was around 8000 or so (AFAIK). Obviously pre-SP1, you could overide this behavior (with the MaxConnections registry key), but thankfully in SP1 this default hard limit has been removed, with the only constraint being the physical resources of the tin (which on a good x64 kit, is very high indeed). For example, in this report on a standard 4way HP box, they cranked up x64 Windows to over 160,000+ open TCP sesssions, SWEET.

Also there has been lots of changes to the logging and the very strict parsing of HTTP headers. For me the new knobs to change the parsing behavior/compilance to HTTP 1.1 is a welcome addition.

With the following keys – AllowWeakHeaderNameSyntax, AllowWeakHeaderValueSyntax,  AllowCaseInsensitiveVerbs, AllowUnEscapedRestrictedChars – you have some very useful options for the rare case that you are using a funky piece of technology and making calls to a web service on W2K3. Obviously its better to try and make the funky technology generate valid HTTP 1.1 headers, but sometimes this is not an option and I have been bitten by this more than once over the last few years.

– Paul

 


 | 
Wednesday, June 15, 2005 3:39:04 PM UTC | # | Disclaimer | Comments [0] | 
 Tuesday, June 14, 2005

Boosting your SSL performance

One of the hidden treasures within SP1 for W2K3, is a new registry key that enables the processing of SSL to be performed in Kernel mode, as opposed to the current User mode process.

This optimisation gives a nice performance boost, but it pales in comparsion when you enable this feature on a x64 version of Windows 2003. Here you will find a comparsion of x86, x64 of Windows and the 64-bit 2.6.7 kernel in RHEL 4.0 and Solaris 10 64-bit Edition.

To enable the feature, you have to use the following reg key.

HKLM\System\Current Control Set\Services\HTTP\Parameters\EnableKernelSsl = (DWORD)1

After that...do a quick net stop http & net start http and Kernel Mode will be used tranparently.

[info via Windows Server Division blog]

– Paul
 | 
Tuesday, June 14, 2005 3:44:04 PM UTC | # | Disclaimer | Comments [2] | 

MS Developer eLearning: Windows Server - Taking Advantage of 64-Bit Computing

Windows Server: Taking Advantage of 64-Bit Computing

<extract>
The Windows Server 2003: Taking Advantage of 64-Bit Computing course provides detailed information for ISVs, customers, and developers seeking to migrate existing applications and functionality from Windows 32-bit to Windows 64-bit.
</extract>

 



Tuesday, June 14, 2005 1:38:30 PM UTC | # | Disclaimer | Comments [0] | 

Looking for authors on ASP.NET v2 plus many more technologies!

My good friend, Eamon O'Tuathail of Clipcode ,  – current EMEA Security Champion – has a great idea, that a bunch of us should join together and write a number of freely available public domain books.

The first book we are going to tackle is ASP.NET v2 and you can get the description for the book at http://www.clipcode.cc/books/id/005/index.html

A number of us are already signed up, including Pascal, Kieran, plus a few others

ASP.NET V2 is not the only book on the way, there is lots more, including The Agile Software Development Process, Active Directory For Developers, and more to come. I will blog the complete list later.

If you would like to help write any of these books, please contact publisher@clipcode.cc or place a comment below.



Tuesday, June 14, 2005 12:34:11 PM UTC | # | Disclaimer | Comments [0] | 

Longhorn: Where to get Monad?

Via, Arul Kumaravel’s blog, Monad beta is available.

“To get Monad Preview

1. go to http://beta.microsoft.com

2. login using  guestid mshPDC

3. You will get information to download the monad bits.”

For more details on what is Monad, you can go to the Monad Wike, at http://channel9.msdn.com/wiki/default.aspx/Channel9.MSHWiki

– Paul

 

 



Tuesday, June 14, 2005 7:42:54 AM UTC | # | Disclaimer | Comments [0] | 

MSDN TV: The 64bit Windows show

On the latest MSDN TV .NET Show, Robert Hess talks to Larry Sullivan, Volker Will, and Kevin Frei about 64bit Windows.The guys have done a nice piece on covering the 64bit Windows space, especially about how 32bit dll’s are not callable from 64bit processes, as well as how to properly handle ints and pointers, plus lots more.

As someone that has been through the 16–bit to 32bit migration process, I very much agree with them on the fact that the migration process to 64bit is soooo much simpler.

Good viewing and I would highly recommend.

– Paul

 



Tuesday, June 14, 2005 7:41:26 AM UTC | # | Disclaimer | Comments [0] | 
 Monday, June 13, 2005

Longhorn Server R2 (2009?) and Blackcomb (2011?)

As we get closer to Longhorn Beta 1, news about the next releases are beginning to appear.

Bob Muglia, senior vice president for Microsoft's Windows Server Division was interviewed last week at TechEd by EWeek. You can read the interview at http://www.eweek.com/article2/0,1759,1826615,00.asp

Enjoy,

– Paul


 |  |  |  |  |  | 
Monday, June 13, 2005 6:37:57 PM UTC | # | Disclaimer | Comments [0] | 
 Saturday, June 11, 2005

Visual Studio Team System news from Teched

Chris Menegay has blogged about some Team System News from TechEd. Some of the news includes that if you are a “MSDN-U subscriber and want Team Suite, it will only be $1000 more per year (retail price), as opposed to the $2299 previously stated”.

More details are covered in Chris’s blog.


 |  |  | 
Saturday, June 11, 2005 7:34:17 PM UTC | # | Disclaimer | Comments [0] | 
 Friday, June 10, 2005

a free copy of Virtual Server 2005 Enterprise Edition for all TechEd 2005 Europe attendees

This is a free copy of Virtual Server 2005 Enterprise Edition for all TechEd 2005 Europe attenees.

You can get the details at this link.

 



Friday, June 10, 2005 3:20:25 PM UTC | # | Disclaimer | Comments [0] |