HireAWiz on FaceBook Linked In
POPULAR POSTS THIS MONTH
March 15th 2011
September 15th 2010
Facebook

About the Blog

hire a wiz

HireAWiz's blog is focused exclusively on discussing the newest trends in Web 2.0, Search Engine Marketing (SEM), Social Media and other technology related news. Visit our blog for the trusted insights and strategies on all things related to the web.

 

Website Performance And Load Testing

March 16th, 2011
by Cliff | HireAWiz

Your company is rolling out its new web application. This web application is well designed and attractive. It has been well tested by your quality assurance (QA)group. You have spent a lot of money marketing your new website. The website now goes live. Very soon you realize that your new web application is unable to scale to your typical production load and the response times and performance reach completely unacceptable levels. Your web logs indicate that most of your website visitors simply leave the new website before buying anything since its response times are very poor. You start to panic, and one of your friends tells you that the reason your application does not perform adequately is that you do not have ample hardware. Hearing this, you decide to add more server hardware. While this has a small effect on the website response time, it is still woefully inadequate. You soon realize that problem does not really lie with the hardware but rather with the web application itself. It appears that your web application was not well optimized for the typical peak loads. It becomes increasingly evident that most of your marketing dollars were wasted.

Enter the world of performance and load testing. In order to ensure that your application scales as the load increases, it is necessary to perform tests where your application is tested against a simulated load that closely resembles the actual load that it will be subjected to when it is exposed to the outside world.

It is important to distinguish between functional or regression testing and load or performance testing. Functional and regression testing is used to automate a large number of scenarios to ensure that your website works as intended. Load testing on the other hand gauges how well your website performs when it is subjected to a large load, such as a large number of simultaneous users.

Load and performance testing require the use of automated testing tools. It is impractical if not ridiculous to try to simulate a load of 200 concurrent users by having a group of 200 folks sit on 200 machines and try to perform operations at the same time. Before you can begin any kind of load and performance testing you will need to identify the test scenarios you need to automate. A load testing tool will typically record web requests and responses based on user interactions with a website. As you perform various operations on your website or application, the tool records all the web transactions that take place. When you finish recording, it generates an automated script. Alternatively you could use the tool to manually create the script. Typically testers will perform a combination of the two. They will use the recording mechanism to generate the skeletal foundations of their scripts and then manually modify the scripts to take into account specialized scenarios. The load testing tool should also allow the tester to simulate constrained bandwidth situations. This means for example that it would accurately model users who would use the application on a slow modem connection. It should also allow the tester to drive the script using random data from large external data sets.

Load testing scripts can be either graphical or textual in nature. Good load and performance testing tools do not require the testers to be programmers. Testers that are not familiar with programming will work with scripts that can be graphically manipulated. Graphical scripts will typically show all recorded steps in the form of a hierarchical structure and testers would modify any of the steps in order to modify the recorded script. Testers who are proficient in programming may want to manipulate their scripts by editing the code. These testers would work with code written in a well known programming language such as JavaScript, VBScript or C.

Once your script has been created, you may wish to put specialized checks in place. These checks would typically be related specifically to the application under test. For example you may wish to check that the response returned by a certain web request meets certain textual criteria. This would involve the placement of a text checkpoint. A text checkpoint can verify that a given text segment is present or is not present in a specified portion of the web page. Once you have finished the creation of the script you would typically test the script on your own machine as a single user to ensure that the test script runs as intended.

You are now ready to perform a performance based load test. A good load testing tool will allow the tester to fine tune the execution of the test. This means that it will allow the tester to choose the number of concurrent virtual users, how the script ramps up, how it ramps down and for how long it runs. It should also allow the tester to create various groups of concurrent virtual users that have their own ramp up, steady state and ramp down characteristics. A good testing tool will allow the user to distribute this load over several machines since a single machine may be only able to scale up to a few hundred users.

To understand the behavior of the loaded web application, it is also important for the load testing tool to enable the tester to track the performance characteristics of external components such as operating systems, web servers, databases etc. This allows the user to see how the performance of his application correlates with the performance characteristics of the external component. This kind of analysis will allow the tester to pinpoint the root cause of performance bottlenecks fairly easily.

During test execution the tester should be able to view the performance graphs in real time for performance metrics such as the transaction response time, HTTP responses per second grouped by HTTP code (e.g. 200, 404, 500 etc), passed transactions per second, failed transactions per second, total transactions per second, hits per second, pages downloaded per second etc. The tester should also be able to simultaneously view the performance characteristics of the external components described above. For an operating system this could be something like the % processor time, for a database it could be the number of writes per second. At the end of the test, the tester would typically be able to view and save this data as a report for further analysis.

Load and performance testing allow you to simulate the behavior of your application under a typical production environment. This will allow you to plan your hardware deployment strategy effectively and ensure that your application will deliver the expected performance characteristics. Rolling out a web application without testing its performance characteristics under expected production loads would resemble crossing a road blindfolded. Load testing is an essential part of the development cycle of a web application and should never be overlooked.

  • Share/Bookmark
3 Comments Comments | Leave a comment


PHP vs ASP

March 15th, 2011
by Cliff | HireAWiz

Web pages used to be simple affairs, where everything you needed to do could be done in HTML, there was really one set of rules and one set of expectations. Today’s world is far more complex.

Web pages can be more complex and customers expect more from web pages. Terms like PHP and ASP now compete with HTML when starting a web page and it can be hard to figure out what option best suits your needs.

If you’ve ever driven an import car, you can appreciate the importance of being able to find support that meet your needs, if you’re going to kick the tires with your website and turn it into something exception, having a large community that can support you is critical.

PHP, Personal Home Pages has more support on the internet than ASP – Active Server Pages. The larger user base gives you more allies; more people who can help you develop your own talents and your website.

Another advantage of PHP is that it’s based on unix, giving it more cross platform capability than ASP as increasing demands of Microsoft’s operating systems level the cost playing field between Microsoft products and Apple, this is ever more important.

And did we mention that in the grand tradition of unix, PHP is free, while ASP needs support software that isn’t? For add-ons and additional tools, PHP’s open source has a strong base of free tools, whereas ASP demands that you purchase these tools.

You can find help for your PHP programming from free to paid. Most professional ASP support is very expensive by comparison.

Also, you have to consider the costs associated with a web hosting on Windows Server compared to Linux Servers. For most cases, you will notice a substantial difference in prices.

Not only that, but Windows severs do tend to be unstable and prone to failures, are more likely to be attacked by viruses, Trojans and exploits. Linux servers on the other hand are much more stable and the attacks windows servers suffer in a daily basis are non-existent in Linux.

If you are considering either a dedicated server or a shared hosting, your fist choice should be Linux. I’ve yet to find a problem that can’t be solved using PHP and Linux.

With all this, you might wonder why ASP still is out there at all. Part of it stems from ASP being based on the same methodology that’s used to make macros in other Microsoft products.

People that have invested the time learning how to use macros in Word or Excel will be more comfortable using ASP. PHP is based on C++, a robust computer programming language.

Before this intimidates you, the free tools that exist out there allow for a lot of this to be hidden, until you’re ready to take advantage of the power behind PHP.

Putting it all together, the power, the cost, flexibility, stability and support of PHP is far superior to that of ASP. If you’re going to commit to building the best web page you can, commit to using the best tools you can.

Investing in learning PHP will pay off when you’re able to pop the hood, invite your friends over and transform your web page from a normal, average, page to a sophisticated and highly toned performance page.

  • Share/Bookmark
0 Comments | Leave a comment


Ecommerce Is The Way To Go

September 15th, 2010
by Cliff | HireAWiz

In a world where the Web is driving the consumer and the market, it is only logical to realize that ecommerce is the way to go. Small business owners everywhere are catching on to the trend of ecommerce. There are many reasons ecommerce is so incredibly popular. Take a look at these reasons and decide for yourself if ecommerce is what you want to take on. Don’t be the last one to get involved in this great thing.

The first reason ecommerce is so popular is because it has opened up a whole new way for consumers to shop. For the first time, consumers are literally able to sit at their home computers and shop. They can do this at any time of day, any day of the week. Even on holidays where every shop in their town is closed, they can shop online with no problem. Giving the consumer this type of freedom is a great thing. With this freedom, consumers will shop more and spend more.

Another reason ecommerce is so popular is because it allows consumers to access items from all over the world. So, they don’t have to travel to Japan to get authentic Japanese products. They can buy anything, from anywhere, without having to leave the comfort of their home or office. Consumers can access the best deals and you can make more money with a wider consumer base that allows you to reach the entire world.

So, if you are a business owner, you might want to take a few pointers and start getting your business into the world of ecommerce soon. It will likely bring your sales up quite a bit. In addition, you will be taking your business to a worldwide level. You can reach consumers from thousands of miles away, which can only help your business grow.

  • Share/Bookmark
0 Comments | Leave a comment


Do You Need A Data Recovery Service?

September 15th, 2010
by Cliff | HireAWiz

It’s happened to the best of us.  You’re working late into the night all on an important document and all of a sudden, whether it’s your fault or not, you lose all that work.  The first thing that happens is we are reminded to save our work more frequently.  Unfortunately, that won’t help at the time of our darkest despair, when hours of work is gone. Most Windows programs let the user press the CTRL-Z keys to undo what you just did.  If that doesn’t work, it may be time to look into a data recovery service.

A data recovery service can help you bring back lost files or information, saving you hours of frustration, and possibly recovering data you would never have seen again.  Data recovery services or agencies may consist of one dude or a number of licensed and trained technicians.  They can often be found online, since that is where their target market lives.  You can Google data recovery services for one in your area.  Most data recovery services will walk you through a process that will allow you to recover your own data, making a house call generally unnecessary.

Sure, you might be able to find the missing data yourself, but at what price?  Time is money, and data recovery agencies can save you time, normally without charging you too much money.  They are professionally trained and can recover a variety of lost data whether it was your own fault or a technological failure like a crashed hard drive or corrupt software.  They can work on different machines and operating systems and can nearly always solve your problem, no matter how bad you think it may be.

Data recovery service providers are on call around-the-clock, because that is what data is lost.  They’re like emergency room doctors for your computer.  Since you don’t plan your data loss, they can’t plan their schedule, and so need to be available when you need them.  They are available for individuals, as well as businesses.

For businesses, it is often wise to select a data recovery service with which you form a partnership.  They make themselves available to you on a priority basis, and offer their support to all the employees in your company.  Doing this, they can offer more competitive rates, and maybe even a single individual dedicated to your business needs.  When it comes to data loss in businesses, that lost data can be very expensive, and so having someone around full-time may be a small price to pay.

Data recovery service professionals are an integral part of today’s technological environment.  Whether it’s your business needs that are involved, or your letter to grandma, lost data is never fun.  Computers, and technology in general, can be unreliable, so it’s good to know who you can call when your data is gone.

  • Share/Bookmark
0 Comments | Leave a comment


A Word About Video And Audio Blogs

September 15th, 2010
by Cliff | HireAWiz

Blogs are revolutionizing the way businesses interact with their customers. To elevate blogs to the next level, you may want to embed video in your business blog. Video is becoming increasingly in demand online. If you heard of YouTube, you know the impact of video online. Why not take advantage of this revolution? You can make your blog more entertaining when you include video. You may provide short clips about using your products, or you could make short presentations about your services.

Don’t confuse video blogs with online commercials, because the two are not at all the same. Video blogs are not supposed to be shameless plugs or infomercials. When you offer video in your blog you are providing valuable information in a different form. Instead of entertainment, think value. That, of course, doesn’t mean that your video should be boring. On the contrary, the more exciting you make it the more buzz it will generate. Webinars are quite common tools that would benefit your blog.

We won’t go into the details of how to get your videos on your blog, but it is easier than you think. Don’t worry if you don’t have video equipment worth millions of dollars. Most digital video recorders are more sophisticated to day than much of the video equipment professionals have used in the past.

One of the most important aspect of video to remember is that it is using much more bandwidth than text. Be sure you check with your hosting company to make sure there is enough bandwidth for you to embed video in your blog. As video is becoming ever more popular, video hosting providers have made it very easy for the end user to add video content to their blogs.

Most popular video sharing sites such as YouTube, Google Video, etc will auto-generate code that you can cut and paste into your blog post. The most widely implemented blog backend providers such as TypePad and WordPress, have both a WYSIWYG and an HTML tab for writing and editing posts. This functionality is very similar to what many people are used to seeing in popular web-page building programs like Adobe’s Dreamweaver. Most blogging software allows you to paste the video embeded code into the HTML tab of your post.

  • Share/Bookmark
0 Comments | Leave a comment