Mar 28

Web Services are tested for throughput, efficiency, and response simulating real-world conditions. A well designed load-testing strategy can simulate real-world load and performance scenarios with minimal hassle and cost. User loads and network conditions of varying nature can be effortlessly created and replicated. Testing can be undertaken till the output charts show a performance range considered acceptable for an application of its nature. Load-testing results can hence be taken as a strong indicator of application performance in actual business environments.

Adding Thread Group: Thread group element controls the number of threads. Thread group allows the following controls:

1. Set the number of threads

2. Set the ramp-up period

3. Set the number of times to execute the test plan (Loop)

First control tells JMeter to execute the number of threads to execute the test.

Second control tells JMeter how long to “ramp-up” to the full number of thread chosen.

If 10 threads are used, and the ramp-up period is 100 seconds, then JMeter will take 100 seconds to get all 10 threads up and running. Each thread will start 10 (100/10) seconds after the previous thread was begun.

Third control tells Jmeter how many times to execute the test plan.

Adding WebServices Requests: Samplers are used to tell Jmeter to send requests to a server. For load/stress testing of WebServices select WebService (Soap) Request sampler.

Step 1: On Thead Group use Add–> Sampler--> WebService (Soap) Request.

Step 2: Enter the WSDL URL and click on “Load WSDL”.

If the WSDL was loaded successfully, the “Web Methods” drop down should be populated. Otherwise it will prompt some error or exception.

Step 3: Select the web method and click “Configure”. The sampler populates the “URL”, Path and “SOAPAction” text fields. Change the proxy setting of the browser i.e. Http Proxy: localhost; Port: 8080.

Step 4: Paste the SOAP message in the “SOAP/XML-RPC Data” text area. We can optionally save the soap message to a file and browse to the location. We can also use message folder.

The sampler will randomly select files from a given folder and use the text for the soap message.

Jmeter1 (2)

Adding Listener to Store or view Test results: Listeners are use for storing all of the results of your HTTP requests in a file and presenting a visual model of the data. Select Add–>Listener–>View Results Tree (Select the type of graph you want to use as listener).

From run menu run the test plan. The result will be stored in the listener.

Load Testing Metrics and Parameters
The results obtained by load testing Web Services can potentially be reflected in terms of the following parameters.

Response time: It’s the most important parameter to reflect the quality of a Web Service. Response time is the total time it takes after the client sends a request till it gets a response.

Number of transactions passed/failed: This parameter simply shows the total number of transactions passed or failed.

Throughput: It’s measured in bytes and represents the amount of data that the virtual users receive from the server at any given second. We can compare this graph to the response-time graph to see how the throughput affects transaction performance.

Load size: The number of concurrent virtual users trying to access the Web Service at any particular instance in an interval of time.

CPU utilization: The amount of CPU time used by the Web Service while processing the request.

Memory utilization: The amount of memory used by the Web Service while processing the request.

Wait Time (Average Latency): The time it takes from when a request is sent until the first byte is received.

Sample Graph Result: Below is the sample graph result for a load test of webservices.

img_500_10_2_15

References: Apache JMeter by  Emily H. Halili

http://jakarta.apache.org/jmeter/usermanual/build-ws-test-plan.html

Tagged with:
Mar 23

Introduction

Cascading Style Sheets, also known as CSS is a type of style sheet language that is used to create and design customized web pages with a functionality to create multiple pages using the same style. CSS is primarily created to bifurcate the document content from document presentation, including elements such as layout dimensions, look, colors and fonts. Almost every web browser available in the market knows and possesses ability to handle CSS. CSS is best Web page formatting language available till date. A very few no. of popular browsers can’t handle it as well as they should but, plenty of support is available and developers are tending to use it much more often. It provide ability to define colors, backgrounds, borders, margins, alignment, fonts, sizes and lots of other things for almost any part of web page(s).

Talking about what’s the latest in CSS, it the CSS3. CSS3 introduces bunch of new opportunities for developers to create an emphatic designs, leveraging web development and more diverse style sheets for variety of occasions and more.

Some different CSS3 techniques that work well in some of the leading browsers (i.e. Firefox, Chrome, Safari, Opera), but unluckily users of Internet Explorer are out of luck. IE will still render the backgrounds and native CSS as usual; it just won’t understand the CSS3 style properties.

Since CSS3 is not fully supported yet, developers are suggested to use browser specific extensions:

  • Mozilla/Firefox/Gecko: -moz-
  • Webkit (Safari/Chrome): -webkit- (note: Some webkit prefixes only work in Safari, and not Chrome)

Exciting new functions and features are brought up by CSS3:

  • BORDERS:
    1. Border Color:

      CSS3 introduced some beautiful options for multiple border colors using CSS property : Border-color. Here’s example :

      Code:
      <div style=”width: 200px;border: 8px solid #FF0000; -moz-border-bottom-colors: #F08080 #CD5C5C #A52A2A #B22222 #800000 #FFE4E1#BBBBBB #CCCCCC #FFE4E1 #bbb #ccc; -moz-border-top-colors: #F08080 #CD5C5C #A52A2A #B22222 #800000 #FFE4E1 #BBBBBB #CCCCCC; -moz-border-left-colors: #F08080 #CD5C5C #A52A2A #B22222 #800000 #FFE4E1 #BBBBBB #CCCCCC; -moz-border-right-colors:#F08080 #CD5C5C #A52A2A #B22222 #800000 #FFE4E1 #BBBBBB #CCCCCC; padding: 5px 5px 5px 15px; background-color: #F08080; width:447px;font-size:36px;”> Sample for Border Colors……..</div>

      Colorful Borders

    2. Rounded Borders:

      CSS3 provides variety of ways to create rounded corners on boxes. This easiest terminology is the addition of “extra mark-up” that can be applied directly on the web page(s), while the classical approach is to add the mark-up through DOM manipulation. CSS3 added another cool feature: “border-radius” which can eliminate the need (for images) to create rounded corners in most cases. This function has been implemented in Mozilla FF and Safari.

      Code:
      <div style="background-color: #F08080; width:447px;font-size:32px;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      border: 5px solid #999999;
      padding: 10px;"> Sample for Rounded Borders……..</div>

      Rounded Borders

      Border Radius can also be customized as follows:

      • moz-border-radius-topleft / -webkit-border-top-left-radius
      • -moz-border-radius-topright / -webkit-border-top-right-radius
      • -moz-border-radius-bottomleft / -webkit-border-bottom-left-radius
      • -moz-border-radius-bottomright / -webkit-border-bottom-right-radius
    3. Border Shadows: The border shadow effect accepts multiple values.
      • First ,  the color of the shadow. It will accept four length values, and the first two are the x (horizontal) offset and the y (vertical) offset.
      • The next value is the amount of blur added to the shadow.
      • The fourth and final value is the spread amount of the blur. Box shadow will also accept an inset keyword that will create an inset shadow.

      This really helps developers to use CSS for creating image like elements helping to increase performance incredibly by reducing the use of images in their web page.

      Code:
      <div style=" margin:150px; background-color: #F08080; width:447px;font-size:32px;
      box-shadow: #333 5px 5px 8px;
      -moz-box-shadow: #333  5px 5px 8px;
      -webkit-box-shadow: #333  5px 5px 8px;
      border: 5px solid #804040;
      padding: 10px;"> Sample for Border Shadows……..</div>

      bordershadow

    4. Border Images:

      This is another very compelling property in CSS3. It is capable of creating really cool visual effects that makes the exact slicing of images (and their positioning around an element) quite easy. The most obvious use of them exists in constructing beautiful scalable buttons.

      Code:
      <div style="margin: 0 30px; width: 227px; padding: 14px;
      -moz-border-image: url(‘border-img.png’)32 32 32 32 round round;
      -webkit-border-image: url(‘border-img.png’)32 32 32 32 round round;
      border-image: url(‘border-img.png’)32 32 32 32 round round; border: 1em double #000; background-color: #F08080; width:447px;font-size:32px;
      padding: 10px;">Sample for Border Images……</div>

      borderimages

  • TEXT EFFECTS
    1. Text Shadow:

      Shadow to text is another CSS3 feature that can be added to the webpage(s). It can eliminate some images to speed up the webpage’s loading, and at the same time, make webpage(s) more beautiful. It can be used to create a slightly blurred, slightly moved copy of text, which ends up looking somewhat like a real-world shadow. Shadow effects are applicable exactly in the same order as they’re specified. They don’t increase the size of a box, though they can extend past their boundaries, and their stack order is the same as the element itself.

      Code:
      <div style=" color: #A1A1A1; margin: 150px; background-color: #F08080; width:447px;font-size:32px; text-shadow: 5px 3px 4px #000; border: 5px solid #804040;padding: 10px;"> Sample for Text Shadows……..</div>

      textshadow

    2. Text Wrap:

      CSS3 introduced word wrap feature. So often long words break the web design. The CSS3 word-wrap property allows long words to be broken and wrapped onto the next line. It takes in two values; normal or break-word. In the first paragraph below, normal is used. This is the same as if the property wasn’t used, i.e. the long word breaks out of the box as there isn’t enough width for it to be fully contained in the box. In the second paragraph, break-word is used and the long word is broken into two pieces, so that the second part wraps onto the next line.

      Code:
      <div style="padding:5px; margin:50px; width:670px;font-stretch: extra-expanded; font-size:26px">
      <strong>Word Wrap</strong><br /><br />
      <div style="background-color: #F08080; width:447px;font-size:20px;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      border: 5px solid #999999;
      padding: 10px;">
      Sample for word wrap………This is veryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryvery long word</div>
      <br />
      <div style="background-color: #F08080; width:447px; font-size:20px;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      border: 5px solid #999999;
      padding: 10px; word-wrap: break-word;">
      Sample for word wrap………This is veryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryvery long word</div>
      </div>

      wordwrapcombined

    3. Text – Overflow:

      The text-overflow property allows developers to handle with clipped text: i.e, text that does not fit into its box. If text is too long for the overflow/clipping area and the content is to be visually clipped, this property allows the clipped content to be visually represented by the string “…” (called an “ellipsis”) in the non-clipped area.

      Code:
      <style type="text/css">
      div.textOverflowExample {
         white-space: nowrap;
         width: 14em;
         height: 1.6em;
         overflow: hidden;
         border: 1px solid #000;
         background-color: #fff;
         background-color: #F08080; width:447px; font-size:20px;
         border: 5px solid #999999;
      padding: 10px;
      border: 5px solid #999999;
      padding: 10px;
        
      }
      div.textOverflowExample:hover {
         -o-text-overflow: inherit;
         text-overflow: inherit;
         overflow: visible;
      }
      </style><div class="textOverflowExample">This is text overflow sample……Move your mouse cursor to see it’s effect……</div>

    4. abc

      To conclude even though CSS3 specifications are still on their way, some of its features have already recognized by latest web browsers. This has provided a great-great opportunity to web developers to experiment and head-up new features well in advance. Some of the features are compiled here that can speed up and bring web developers to the cutting edge of CSS3 development. Stay tuned for more…!

Tagged with:
Dec 06

With so much talk about “cloud computing,” it’s easy to feel lost in the clouds. The term cloud is used as a metaphor for internet, it being the foundation of cloud computing.

To define cloud computing in the simplest form would be: a set of shared resources, delivered over the web, powered by software. It involves the interaction of several virtualized resources and is often provided “as a service” over the internet. Instead of running your applications yourself, they run on a shared data center. When you use any application that runs in the cloud, you just log in, customize it, and start using it.

Broadly speaking, cloud computing can be grouped into 3 categories:

  1. Software as a Service (SaaS); Simplest form would be a web service or anything as extensive as a full blown application. For eg CRM on Demand, SalesForce.com, Gmail etc.
  2. Platform as a Service (PaaS); It encapsulates a layer of software and provides it as a service that can be used to build higher level services. For e:g Yahoo Pipes, Force.com etc
  3. Infrastructure as a Service (IaaS); Delivers basic storage and compute capabilities as standardized services over the network. Servers, storage systems, switches, routers, and other systems are pooled and made available to handle workloads that range from application components to high-performance computing applications

Then there are public, private and hybrid clouds. Public clouds are hosted environments, private being on premise and Hybrid clouds are co-located.

The benefits “Cloud” brings to a business is the independence from buying and maintaining the physical infrastructure and resources for the business applications. It helps companies reduce their TCO ( total cost of ownership) and keeps the business competitive with quicker time to market.

A few concerns that businesses may have with cloud computing are data security issues, compliance and control, SLAs, hidden costs like setups, early termination etc.

TarKia in Cloud Computing Space:

As more and more companies adopt cloud-based enterprise solutions, cloud computing has grown to represent a multi-billion-dollar business opportunity. Not to mention its biggest growth is still ahead. This trend has not only translated into real revenue opportunity, but it also given TarKia the chance to help shape an emerging market. As a Oracle Partner, TarKia offers implementation, integration, and custom application services that leverage the latest cloud computing technologies.

Something to talk about next would be clouds integration!

preload preload preload