Monday, October 29, 2012

Performance Measurement Tools

List of Performance Measurement Tools in Microsoft .NET


  • Visual Studio Sampling Profiler
              http://msdn.microsoft.com/en-us/library/ms242753.aspx
              http://msdn.microsoft.com/en-us/library/ms182372.aspx
  • Visual Studio Instrumentation Profiler
              http://dotnet.dzone.com/articles/profiling-application-visual-0
  • Visual Studio Allocation Profiler
              http://dotnet.dzone.com/articles/profiling-application-visual-1
  • Visual Studio Concurrency Profiler
              http://www.youtube.com/watch?v=Bofk3ecJOtk
              http://msdn.microsoft.com/en-us/magazine/ee336027.aspx
  • CLR Profiler
              http://msdn.microsoft.com/en-us/library/ff650691.aspx
  • Performance Monitoring
               http://msdn.microsoft.com/en-us/library/aa645516(v=vs.71).aspx
  • PerfView
              http://channel9.msdn.com/Series/PerfView-Tutorial
  • Windows Performance Toolkit
              http://msdn.microsoft.com/en-us/performance/cc825801.aspx
  • Process Monitor
             http://en.wikipedia.org/wiki/Process_Monitor
  • Entity Framework Profiler
            http://www.hibernatingrhinos.com/products/efprof
  • ANTS Memory Profiler
              http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/
  • .NET Memory Profiler
              http://memprofiler.com/


Sunday, October 21, 2012

Enable Wifi without the Wireless Router for Home Usage

Recently I bought a Samsung mobile phone Y Series. To activate the Samsung app store and Google play store, it's asking me to connect via  WiFi . But i don't have a WiFi router with me. but i have 10 Mbps Airtel Broadband Connection











Now i have two options


  • I have to activate Air tel 3 G in my mobile to access all the Samsung apps
  • I need to buy the WiFi Router , so i could use my existing broad band connection
I don't want to spend extra money to activate 3G also WiFi router is extra overhead for me

I found this useful software for Windows 7, it will act as Virtual WiFi Router

Download the WiFi Router from here Download

 You can create a WiFi hotspot for WiFi Reverse Tethering for wifi supported mobiles and other wifi enabled computer to create a network and to share internet. Convert your PC into a WiFi hot spot for free.

Follow this instructions to configure it for the first time


Now enjoy the same speed in your mobile and save money

Tuesday, October 16, 2012

SOA Design Patterns

List of SOA(Service Orientated Architecture Link) Patterns for distributed system development

Foundation Structure Pattern

  • Service Host Pattern
  • Active Service Pattern
  • Transactional Service Pattern
  • Workflodize Pattern
  • Edge Component Pattern
Patterns for Performance, Scalability
  • Decoupled Invocation Pattern
  • Parallel Pipelines Pattern
  • Gridable Service Pattern
  • Service Instance Pattern
  • Virtual Endpoint Pattern
  • Service Watchdog Pattern
Security and Manageability
  • Secured Message Pattern
  • Secured Infrastructure Pattern
  • Service Firewall Pattern
  • Identity Provider Pattern
  • Service Monitor Pattern
Message Exchange Pattern
  • Request / Reply Pattern
  • Request / Reaction Pattern
  • Inversion of communication Pattern
  • Saga Pattern
Service Consumer Pattern
  • Reservation Pattern
  • Composite Front End Pattern
  • Client /Server / Service Pattern

Service Integration Pattern
  • Service Bus Pattern
  • Orchestration Pattern
  • Aggregated Reporting Pattern

Service Anti Pattern
  • Knot anti-pattern
  • Nano service anti-pattern
  • Transactional Integration anti-pattern

Reference




Read Event Log Information using LINQ PAD


Anyone tried the LINQ PAD. I found this is very useful to execute for query any short of information from different sources like database, xml, event logs, iis logs with the minimal code

In this blog, i am going to show a example, how we could pull the summary of the events using the LINQ PAD

Link to download LINQ PAD http://www.linqpad.net/


LINQPad is a free software utility for Microsoft .NET to interactively query SQL databases and other data sources such as OData or WCF Data Services using LINQ. LINQPad supports the following LINQ dialects:
  • LINQ to Objects
  • LINQ to SQL
  • Entity Framework
  • LINQ to XML
It also supports writing queries in SQL as well.

Download and install the LINQ PAD. Open the LINQ PAD and select a new query and select the language as C# Program

Code



void Main()
{
var serverList = new List
  {
  //List of Servers Name
  };
var eventCollection = new Dictionary();

int count = 0;
foreach (var list in serverList)
{
var eventLog = new EventLog(EVENTLOGNAME, list, SOURCENAME);
        foreach (EventLogEntry logEntry in eventLog.Entries)
        {
if (logEntry.TimeGenerated  >=  DateTime.Today)
{
if (eventCollection.ContainsKey(logEntry.InstanceId))
{
eventCollection[logEntry.InstanceId]++;
}
else
{
eventCollection.Add(logEntry.InstanceId, 1);
}
}

        }
Console.WriteLine("Summary of Server " + list);
foreach (var logs in eventCollection)
{
Console.WriteLine(logs.Key + "  " + logs.Value);
}
eventCollection.Clear();
}

}

// Define other methods and classes here


Sample Output

Summary of the Server "ServerName1"
Event ID   Number Of Times
100            7
106            15

Summary of the Server "ServerName2"
Event ID   Number Of Times
100            70
106            8