Are Performance Counter Diagnostics logs not getting created in your Azure development storage? Or is your Azure development fabric displaying similar error messages, while getting your specific performance counter to register
PdhAddCounter(\Process(MonAgentHost#0)\ID Process) failed
The problem could lie with pointers to your system performance counters being corrupted. Here is a step by step guidance to investigate and resolve the issue.
Often I have seen questions over the need of Entity Framework based Data Access Layer (DAL) against Custom entities based DAL.
Here are my thoughts,
Entity Framework has significant edge over custom DAL (with custom entity) on following dimensions,
While architecting Data Access Layer for Microsoft .NET application opens up several options such as ADO.NET, LINQ to SQL, Entity Framework, and WCF Data Services amongst the key ones. Tough to choose the right one for the job as each one is designed for niche scenario and has Strengths, and Weaknesses. Herewith we have evaluated and benchmarked for performance each one of these technologies and compiled a report that you may want to leverage in your decision making.
Some of the other interesting papers from our team can be downloaded from here.
If you are keen to know how your enterprise can address some of the burning issues/challenges in bespoke Enterprise application development landscape by leveraging recently released Microsoft .NET 4 and VS2010 technologies. You may want to take a look at our just released view point on .NET 4 and VS2010.
If you check online forums, one of the issues that has caused possibly most grievances is the styling of the WPF button control. You set some property values for things like foreground color and background color and when you run the application things don't always work out. Either the button will show some default animation when having focus or will not use the specified background when is in disabled state.
Recently a colleague was styling a Button control and had a need for custom disabled look and we landed in the same problem. We had set a background color, but when disabled the button will default to the light gray color. Trying various options didn't work out. Interestingly the properties like Foreground or Opacity worked fine. The designer in us said that we can always create a custom style, but the developer in us wanted to know why this doesn't work.
Expression Studio 4 (including Blend, Web, Encoder, Design and SketchFlow) was released yesterday at Information Week in New York. See details here. You can get the trial version from the Expression site and in case you have MSDN subscription, you can get the full release from the subscriber download site. Do note that if you are working with Windows Phone 7, do not upgrade to this RTM version.
There was a minor update to Silverlight 4 runtime as well earlier in the month and the latest version is 4.05.50524.0. See details of what's changed here. You can verify if you have the latest or install if not, from here. Also if you have been following Silverlight Media Framework, you would be glad to know that Beta of version 2 is also now available at the codeplex site.
Most of the machines today are multi core whereas the software programs that run on them are not designed to make use of multi core architecture and hence even though the processor is multi core, we don't see sizable improvements in application performance. The key to improve performance is to distribute work amongst multiple cores, writing programming logic to achieve this is complex.
It’s been sometime since I have posted last blog, couple of months at least. That’s no good…but all this time I was busy doing some serious writing , finally completed and published view point on VS 2010 Architecture Modeling, can be downloaded from here. The idea of this paper was seeded through this my earlier blog here
If you happen to read this paper and have comments, please do send me or log on this post.
Both VS 2010 RC and Office 2010 RC are now available. If you have access to MSDN Subscriber download site, you can get VS 2010 RC from it. For general public these bits will be available today (Feb 10). Like Beta 2 bits, these bits also come with "go live" license. If you had earlier bits, you will need to uninstall those before installing RC. I was trying to figure out if RC to RTM will be an upgrade path, but haven't found specific information on this as yet. If you know, do write back.
However Office 2010 RC isn't available via MSDN download as yet, but is available on connect site for specific users. If haven't got a specific invite to access Office 2010 RC, then both on connect site or msdn download site you will still find Office 2010 Beta bits.
Yesterday MS announced a delay in the release of the upcoming Visual Studio (VS) 2010 (called Dev 10 in short). In both Somasegar's and Scott's blogs, the reason mentioned is addressing the memory and performance issues. While this definitely means that the end product would be better in these terms, what does this delay mean to you?
The good part is that the release candidate planned for Feb 2010 will have the "go live" license support, so any plans for production deployment may still be carried on. What is of more interest to me is how this impacts the Silverlight 4 release plans, since SL 4 as of now needs Dev 10?
In my earlier blog I had touched upon some high level concepts on touch support for applications, that is now available with Windows 7. In this I will spend some time on multi-touch and few other points around support as part of .NET and on Surface.
So when we say multi-touch, what does it really mean? This is also where the basic touch to mouse promotion and real multi-touch differ. Multi-touch means the ability to detect multiple touch points at the same time on the touch hardware and be able to program against each of them independently. In a mouse driven world, there is single point of click and hence controls really respond one at a time. With multi-touch however we now are capable of programming against multiple controls at the same time. While most multi-touch samples/demos show usage of multiple fingers, what you should realize is that it is now capable of supporting multiple people interaction. A behavior, which MS Surface, demonstrated very well.
For all these years if a .Net architect has to model the software system. He or she has to rely on modeling tools like Rational XDE, or Visio Enterprise Architect. Personally I was never impressed with Visio Enterprise architect’s modeling support, and code generation it has to offer. Though Visio has several stencils, templates, symbols available; UML modeling and associated code generation was always bit stiff. Integration with Visual studio to synch up models with code and vice a versa was another challenge. 3rd party tools like Rational XDE has good support for .NET but one has to pay hefty license fees to use such tools.
Yes, this title is influenced by death by chocolate, where in you get an overdose of chocolate. At this time I feel exactly the same for Silverlight (SL). With just over 2 years since the first version made its mark felt, Silverlight has come a long long way. Ironically, as part of TechDays event hosted specifically at our campus, we talked a lot about SL3 and right then, across the ocean, at PDC 2009, Microsoft just unveiled SL4 beta bits.
When we started looking at SL 1.0 back in late 2007, it had limited feature set with XAML support, and most work had to be done in java script. It looked more of media (video) playback at that time. MS called it their RIA platform, but it didn't offer much at that time. With SL2 at PDC 2008 and SL3 just earlier this year in July 2009, a host of features have found their way in the platform. Along with multitude of controls, to .net language support, to IIS Smooth streaming, to perspective 3D, to out of browser experience, SL is a technology you just cannot ignore.
Today, Atul Gupta and self delivered a session on Architecting for NFRs at Microsoft Virtual Tech Days event.
Non Functional Requirements (NFRs) is one of the very important system attribute and help in defining the Quality of Service (QoS) for the System. Examples of QoS are Availability, Performance, Scalability, Reliability, Usability, Extensibility, etc. These need to be planned right from the project initiation stages.
We talked at length on this at MS Virtual Tech Days; the presentation makes an attempt to provide the guidelines while architecting the applications for meeting these QoS parameters and can be downloaded from here.
Recently I came across a query on what does it take to build highly available .Net applications. Following are some inputs that can help. The recommendations are classified into buckets of cross cutting, presentation, business and persistence layer.
WCF 4.0 will be available with .Net framework 4.0 and builds upon the features provided by WCF 3.5 (including SP1). WCF 4.0 brings in several features to make the life of developers and application administrator easy. To enhance the support for REST Services, certain features from REST starter kit are also integrated with WCF 4.0. In this blog let’s take a look at features which simplifies things for application administrators
Through this dialogue based interaction I (Sudhanshu) Demystify REST based Architecture to a SOAP pro (Atul). You can additionally refer to slides and code samples posted on the following blog. Wherever i have referred to demos, the corresponding code samples are at following site
Let’s enjoy this ride together.
As Atul has mentioned in his last blog, yesterday we presented on Demystifying REST based Architecture at Microsoft Virtual Tech Days. It was fun being there and talking about REST.
Thanks to all who attended the session and provided feedback. From several folks, we received positive comments and request to share the presentation and code samples we have demonstrated.Here are the links to download presentation and code base for the samples we talked through. Download Presentation , Demo Samples
Also please do take a look at my earlier blog on REST, will try to catch up on this series in coming days.
Till date I have came across several .Net implementations, where design decision to use right provider to connect to Oracle database is not given enough thought. The repercussions of this are visible as late as in Performance acceptance phase but by then it is too late to revert any design decision. The cost of fixing such design defect in acceptance can get as high from 15 to 160 times. Check here
For any .Net application development, following are the natural choices to connect to Oracle Database
1) Use native Oracle provider with .Net framework available in System.Data.OracleClient Namespace
2) Use 3rd party Providers like Oracle Data Provider(ODP), DataDirect, Openlink or Devart
While this blog doesn’t intend to compare them, a high level guideline on when to use what has been..
.Net 4.0 currently in beta (means some features covered below are subjected to change by final release) slated to release by end of 2009 with Visual Studio 2010. Some of the key server side features that can help enterprise adopt 4.0 are as follows
Earlier today a friend was trying to invoke GetAuditRules API on a file using c# code, but it was always returning a count of 0 inspite of having set a specific audit rule on the file via windows explorer. The surprising part was that GetAccessRules API was working and the code was running locally so it had full security rights as well.
The other day I finally got to install VS 2010 Beta 1. I had decided to build a VPC for the same so as to not impact my current workstation setup. Overall the experience was pretty smooth and the setup ended without any issues, but the initial few components did cause a bit of pain.
After every component (VC 9 Runtime, VC 10 Runtime, .NET 3.5 SP1 and .NET framework 4 Beta 1), i.e. 4 of these, I had to restart the machine and it was really painful. Beyond that it completed without any more restarts.
While defining .net architecture several times we come across scenarios where multiple server side caching options needs to be evaluated and dealt with, with .Net 4.0 it is to be seen whether these decision get simplified or further complicated.
Microsoft Project code name “Velocity”, part of .net 4.0 is Microsoft’s highly scalable in memory cache framework for all kinds of data in distributed applications. Usually caching is employed in application to improve the performance and scalability. Good candidates for caching data is static or master data e.g. product list. Recommended practice is to cache master or reference or lookup data as it hardly changes over time but at times scenarios exists where transactional or session specific data needs to be cached for valid reasons.