What Is .NET?

What Is .NET?

As the purpose of this book is to explain how to performance test a .NET application, and many of the application samples used throughout this book were built using the .NET Framework, it is necessary to first understand what .NET is. In fact, experience has shown us that effective performance testing is difficult, if not impossible, without an in-depth understanding of the underlying technologies involved. The material presented here serves only as an introduction to Microsoft s .NET initiative. For a more detailed perspective of the .NET initiative please visit http://www.microsoft.com/net.

The .NET Platform

What is .NET? Or alternatively, what are the services that make up the .NET platform? The .NET platform is a set of developmental tools and operational systems used to build, expose, and consume XML Web services thereby enabling a personal, integrated Web delivered through smart devices while using open standards. The main .NET platform components are as follows:

  • The .NET Framework is an environment for building, deploying, and running XML Web services and other applications. The .NET Framework has two parts: the common language runtime (CLR) and the class libraries, which include ASP.NET, Enterprise Services, ADO.NET, and Windows Forms.

  • Visual Studio .NET provides a complete development environment for building on the Microsoft .NET platform.

  • The Mobile Internet Toolkit is a set of programming interfaces that enable developers to target mobile devices like smart phones, PDAs, and server infrastructure.

  • The .NET Enterprise Servers include Application Center 2000, BizTalk Server 2000, Commerce Server 2000, Exchange Server 2000, Internet Security and Acceleration Server, Host Integration Server 2000, Mobile Information 2001 Server, and SQL Server 2000.

  • .NET services is the set of core XML Web services that will be supplied by Microsoft. However, XML Web services can be built by anyone.

Figure 1-1 illustrates how the core components of the .NET platform fit together to provide user experiences anywhere and on any device. Developers can use the .NET Framework to build XML Web services. The CLR is important because it is the engine at the core of managed code execution. With the run time engine, developers creating Web services can integrate and execute their code in different languages. Web services that are created with the .NET Framework run on the .NET Enterprise servers and can be accessed anytime, anywhere, and on any device.

figure 3-1 core components of the .net platform

Figure 1-1. Core components of the .NET platform

Real World Example .Net Cross Company Calendaring Service

Let s say you are flying home and need to schedule a meeting with vendors the next morning. Traditionally, because your vendors are not on your company calendar system, you cannot see their schedules to deliver a meeting request. In addition, the only way you can efficiently connect to the Internet during this flight is through a cell phone or wireless PDA. However, if both companies had calendaring systems built using XML Web services and the programming interfaces included with the Mobile Internet Toolkit, not only would you be able to view your suppliers calendar, you would be able to send the meeting request using a wireless PDA or phone utilizing the various programming interfaces for mobile devices. .NET makes this possible because the two calendaring systems are now compatible (that is, they integrate through various programming interfaces), and XML calendaring Web services allow you to schedule the meeting using any device. Features like this exist today on many Web sites, but each site has its own solution, and these solutions do not always allow sharing information among sites.

Standard .NET Protocols

The fact that .NET is built on open Internet-based standards makes the .NET Framework extensible and enables it to easily communicate with other Web and non-Web-based solutions. The predominant standards that .NET employs to make Web services possible are:

  • Extensible Markup Language (XML)

  • Simple Object Access Protocol (SOAP)

  • Hypertext Transfer Protocol (HTTP)

XML, a text-based language much like the ubiquitous HTML, is a specification that allows for custom HTML-like tags that describe both the document (metadata) and the content (data). The .NET vision needs XML because of the inherent problems with HTML. There are conflicting standards with HTML, which cause different browsers to handle standard tags in different ways. This means that Web designers need to create different versions of the same HTML document for different browsers. To date, efforts to create international HTML standards have not materialized. In addition, HTML has an inadequate linking system. HTML links are hard coded into documents and must be searched and changed for each link that changes. XML allows you to associate links to any element and to link to multiple locations, effectively solving these HTML limitations.

Web Service Description Language (WSDL)

.NET also employs a newer XML standard formerly known as the Service Description Language (SDL), and now known as Web Services Description Language (WSDL). As the name implies, WSDL is a language designed for describing a Web service. It is used to create or generate a .wsdl file that other services can use to determine the exposed functionality a Web service offers. Simple Object Access Protocol (SOAP) is used as the basic wire format for communicating between objects and solutions. Very much like Remote Procedure Calls (RPC) in functionality, SOAP uses XML to describe its contents. XML makes it simple, humanly interpretable, open, and extensible.

Universal Description, Discovery, and Integration (UDDI)

.NET also takes advantage of the new Universal Description, Discovery, and Integration (UDDI) specification that is aimed at creating Web service registries. These registries will enable companies to register information about their Web service solutions, as well as other data, so that those who wish to use them can easily find them. Internet Native Integration Methodology (INIM) allows for XML interaction between systems and an open set of standards. INIM works with any operating system, programming model, or network and can expose existing code as XML Web services, giving different systems the ability to communicate. UDDI specifications define a standard to publish and discover information about Web services.

What Is an XML Web Service?

Today s Internet services are mostly portals that offer services that cannot be used anywhere else. One inconvenient result of this service is that companies cannot easily share information. For example, even contact and other personal information has to be entered for each site. XML Web services are units of application logic providing data and services to other applications and users. An example of a Web service is the authentication functionality provided by Microsoft .NET Passport service. Applications access XML Web services via standard Web protocols and data formats (i.e. HTTP, XML, and SOAP) independent of how each XML Web service is implemented. XML Web services combine the benefits of component-based development and the Web, and are a cornerstone of the Microsoft .NET programming model. XML Web services transform read-only Web sites into computing sites that can both expose methods and read other XML Web services. The use of XML allows for the sharing of data between any operating system and network via XML and SOAP services which act to connect formerly incompatible or disparate systems (i.e. accessing an application running on a Macintosh, a Unix, or a Linux via a Windows CE device).

Web Services are software solutions delivered via the Internet to any Web-enabled device. Today, this device is the Web browser on your computers, but the device-agnostic design of .NET will eliminate this limitation. XML is an industry standard, and XML support is currently offered in all Microsoft products, including the latest generation of servers. The .NET Framework is built into all the .NET products such as Microsoft Visual Basic .NET, Microsoft Visual C++, and Microsoft Visual C#.

Real World Example Microsoft .NET Passport

Some potential Web services that can be created with the .NET platform include yellow pages, a dictionary, or an encyclopedia. An example of a Web service is Microsoft .NET Passport. Passport is one of the ten largest Web sites in the world with more than 160 million active accounts, and it is increasing at a rate of more than 10 million accounts per month. Though .NET Passport receives more than 1.5 billion authentications each month, the Web site itself seldom receives visitors because it is an XML Web service.

Devices Drive Demand for Web Services

Web-enabled devices are driving the need for services provided by the .NET platform. There is a plethora of new devices available today. These devices are mobile, small, and smart, and all require different interconnectivity depending on the desires of their users. Meanwhile, businesses want information from a multitude of sources, and they want it immediately. Applications that supply information any time and from any location need to run across multiple client platforms with widely diverse capabilities. The following example illustrates what is possible with the .NET XML-centric programming model.

Real World Example Pre-Heat Your Jacuzzi

Imagine that you are returning home on a long flight, and you want the water in your Jacuzzi to be hot when you get home. With .NET Web services, this futuristic scenario could happen automatically, provided that your Jacuzzi has a thermostat that uses XML Web services. Through pre-programmed algorithms, the XML Web services component could check your flight arrival time and your travel time from the airport based on existing traffic conditions to calculate heating time for the Jacuzzi to preset temperatures based on all the timing variables. With .NET this scenario is possible because your home network can potentially read the airlines current flight arrival information in real time made compatible through XML. A refrigerator already exists that has a built-in smart device component, which includes a bar code reader. This smart device can keep the refrigerator stocked by automatically ordering grocery items at intervals, which are set by the user. Traditional platforms and development environments with bolted-on solutions cannot keep pace with this type of phenomenon.

Web Services Will Increase Importance of Web Performance Testing

This paradigm shift in the way information is delivered to devices will require new ways to test and tune applications for performance. Just as traditional platforms cannot keep pace with this shift in technology, traditional functional testing methodologies cannot adequately define application performance and identify bottlenecks associated with these new .NET applications. A new way of approaching the traditional software development life cycle, which includes effective performance testing throughout, is required for the .NET world. Presenting these new requirements is the driving force behind this book.



Performance Testing Microsoft  .NET Web Applications
Performance Testing Microsoft .NET Web Applications
ISBN: 596157134
EAN: N/A
Year: 2002
Pages: 67

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net