Free Tools and ways for profiling ASP.NET MVC Web Server performance? - asp.net-mvc-2

We ran Jmeter on our application and found that our web server was running relatively slow. I have asked this before but I was hoping to find some free tools can I use to profile it and identify bottlnecks ?
Also do I need to look at memory profiling on the server? What are the best steps I can take towards optimizing the web server performance ? Basically I am trying to optimize the web server to the fullest so just wanted to know all the steps can be taken to do it.
So,if anyone can list all the steps or optimizations than can be done on web server when using asp.net mvc 2.0, IIS 7.0 and SQL Server 2005.Thanks for all your help.

Check out the MVC mini profiler. Written by the StackOverFlow people
http://code.google.com/p/mvc-mini-profiler/

These are great tools and have a 14 day free trial:
http://www.red-gate.com/products/dotnet-development/ants-memory-profiler/
http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/

http://www.jetbrains.com/profiler/buy/index.jsp - Definitely not free, but pretty intuitive and very helpful.

Related

RESTful Webservice with PHP // Laravel or own setup

i read a lot about frameworks like LARAVEL. I am currently trying to build my own RESTful web service. But doing that "by hand". I have absolutely no experience with these framework systems. It might be a general question, but I want to get your point of view on that.
What is a best practice to that. Is it "useless" building a web service from the ground up and it is common to use this framework? And what is the advantage. I do not want to start all over again and again by finding out that I should have started directly with these kind of frameworks to build the web service.
What are your opinions on that? Manually build everything? Or never do that!
Laravel will save you a lot of time in the long run. A lot of tools are pre-built, and a lot of problems that you will run into are already solved. In my opinion it's well worth it to start with the framework. You will gain skills that will help you out on future projects.

Setting up SOA for experimenting

I want to set up a SOA platform to demonstrate the key ingredients of it. Not knowing much about this topic, this seems to be an difficult task. I hope someone can clarify some points for me. I am aware that SOA has no exact definition, but I am trying to get some sense into it.
What are common platforms and development tools? Everything seems to have a little bit SOA in it, but I am searching for the big ones. Something like that?
platforms: IBM WebSphere, SAP NetWeaver, RedHat Jboss SOA, HP SOA, systinet software, Microsoft .Net
development tools: Eclipse SOA, NetBeans SOA, Visual Studio
What are the key ingredients of a SOA platform? I figured something like this:
Service Registry, Enterprise Service Bus, BPEL-Engine, Application Server
Can I mix components from different platforms? I especially don't get the concept of the application server which every platform contains. Is it just an Java EE Environment?
I want to set up an environment for experimenting and demonstration. It should be based on some opensource SOA platform and developed with Eclipse SOA. I want to create a few services (with for example basic math operations), a Registry and a BPEL controlled process. What SOA System is suited best for me? Easy to learn, maybe good tutorials?
Any answer to any question would be awesome and be greatly appreciated.
1) & 2)
See this article and you may understand exactly what it is.
3) it will be a little hard unless you are extremely fast developer/deployer & configurator - I'm talking you work as fast as 10 people for a few months. Why not use existing examples ? Like Google for example
I would start with Apache Axis/2 and Tomcat for you server environment.
And the splendid SOAPUI utility as your client. Moving on to real Java/C/perl/php/Python/C# or whatever clients as the server side develops more.
Don't bother with the heavyweight commercial servers like until you have a specific need for them as the installation and configuration is usually really tedious and most of their functionality is available from Apache.

Whats the easier/elegant option when it comes to porting Classic ASP websites to newer technology/platform?

we have a number of classic asp based websites with CMS functionality. Most run on Mysql 4.1
Please correct or suggest me better options.
My plan is to standardize the existing code to use RESTful methods where ever possible.
The Business logic code can now be replaced in phased manner with ASP.NET codebase.
I haven't yet looked at Razor view engine. How relevant would that be for to adopt in this scenario?
I have fairly good experience tackling the database port to MS SQL Server. So I'm not much worried on that side.
IMHO, nothing is easier or more elegant than well written classic ASP.
If it ain't broken - don't fix it.

Expression Engine CMS

I’m looking at using Expression Engine for a new site I’m developing does anyone have any experience of using EE, good or bad?
I’ve looked at some other CMS but found they are quite big and although you get everything, I like EE as it looks like you can streamline it to exactly what you want your users to use?
The main feature I need is to not be taken away from the HTML and CSS and not feel restricted on what I design or relying on plugins to achieve certain aspects of the site.
The ability to create snippets of code and include them into a main template or page is really appealing. I looked at other CMS but they seem to focus more on creating pages where I would like to make up a page from varouis custom created snippets?
I come from a asp and MS SQL background rather than a php and my SQL do you think that would cause me any problems?
I've used ExpressionEngine before and found it to be extremely easy to get your head around compared to other CMS products such as Drupal. Plus, you have a lot more freedom with your designs.
One of the best resources I found on the web, is a site called train-ee.com by Mike Boyink. This is the first tutorial I did on ExpressionEngine (when I was first learning) and he goes into great detail while keeping it extremely simple:
http://www.train-ee.com/courseware/free-tutorials/category/building-a-small-business-site/
Hope this helps.
Dan
Jemes,
I have been building websites on EE for a few years now and it is hands-down the most flexible and powerful system to work with. You simply can build sites faster and customize it to fit clients needs better. As a company we were so happy with it that we build our own add-on for e-commerce (BrilliantRetail).
The community (#eecms on twitter) is fantastic and there are meetups, EECI conferences (Oct 2011), Devotee EE addons and a responsive parent company (#ellislab)constantly improving the platform.
Tony
If you have a few bucks to spend (48$), and if you are more of a visual learner, you might want to have a look at Ryan Ierlan's screencasts on Mijingo:
http://mijingo.com/products/screencasts/learning-expressionengine-2-complete-series/
I come from a asp and MS SQL background rather than a php and my SQL do you think that would >cause me any problems?
I have neither background and it didn´t caused my any problems. If you don´t want to build your own plugins you won´t need to know PHP. I can´t program PHP, but never felt the necessity to learn it.
I started with EE 0.95 backthan and never looked for any other CMS, because I could build all my sites with EE. I like the concept of haveing a comercial product that is build upon an open source foundation (code igniter) coupled with a very active and friendly community.

Profiling WebMethods services?

What techniques are available to profile services running in WebMethods Integration Server?
That is, to obtain data which would indicate which parts would benefit most from optimisation.
Check the 'Service Profiler for webMethods Integration Server' from http://www.wrightia.com/serviceprofiler.html
Have you thought of trying webMUnit?
You could add time logging around certain method calls to get an idea of how long things are taking to execute. However, the time logging itself will add overhead too, so just keep that in mind.
Or possibly memory profilers such as YourKit Profiler, JProfiler, JProbe etc? Im not sure about these, as I've never used them myself, but they might help by letting you know what's taking up a lot of memory etc
Another tool which will do it is Green Hat tester which is a commercial tool used for testing webMethods. If you use the reporting capabilities of that when running tests you get profiling information generated..
António Abreu's linked tool is a more dedicated profiling tool however and would be the simplest solution.
If you want an "out of the box" solution you could turn on service auditing for the called services and do the legwork yourself, but that's a bit of manual effort.
You can find here a new monitoring tool for IS services: Rich Statistics
I was involved only in development phase so i dont know details but our system was tested with heavy load-testing and hardware was monitored during the process, it actually gave some feedback about bottlenecks. JMeter and sar were used.