Team LiB
Previous Section Next Section

.NET Enterprise Servers

Next we will cover the Microsoft .NET Enterprise Servers. Although not all of them have something to do with scalability issues, we feel that it is essential to have knowledge about them when designing a Microsoft solution. This part of the chapter is only an introduction to these servers. Later in this book you get a chance to take a closer look at a few of them; we have left others out of our discussions because they do not directly affect the design of a scalable .NET application.

All of these servers are perhaps not yet true .NET servers, but they will be with their next releases.

There are, as of this writing, twelve .NET Enterprise Servers:

Microsoft Application Center Server

Because this is Microsoft's tool for deploying and managing highly available Web applications, this server is useful for you. So useful, actually, that we have dedicated much of Chapter 6 to it. Please refer to this chapter for more information.

Microsoft BizTalk Server

Most large enterprises have made huge investments in their legacy systems. These could be many kinds, like CRM, SAP, and so on. These investments make it hard to replace these systems if new functionality is required, and it is usually quite expensive to add new features to them. We have noticed an increase in requests for help on how to integrate new systems with these existing legacy systems. We have also noted that demands for integration with other enterprises and customers have increased. To be able to easily integrate and automate business processes, Microsoft has developed the BizTalk Server, and you do not have to be a programmer to use many of its features. This makes it quite effortless for nonprogrammers to develop business processes in an easy-to-use graphical interface and then let the developers implement them.

Microsoft Commerce Server

Online businesses seem to be ever increasing. More and more possibilities exist for leveraging the business around the world. The times when business was local are over for many companies. Not only large enterprises, but also small and medium-sized companies are finding a new market globally. This puts high demands on how to engage and manage a global network of customers and trading partners. Suddenly, not only do you have to worry about local currency, you have to do business transactions in multiple currencies and languages. All this means your business decisions have to be smarter, and more carefully considered, if you want your company to prosper.

Microsoft Commerce Server is a set of tools that can help you improve your online business. Commerce Server consists of five integrated systems:

  • Business analytics system

  • Profiling system

  • Product catalog system

  • Targeting system

  • Business processing pipeline system

Commerce Server systems, Business Desk, Commerce Server Manager, and the Commerce Server database are preconfigured and packaged in solution sites, which developers can use as a starting point for building a custom site and for integrating third-party applications.

Figure 2-4 shows the internal relations between these five systems. You can also see how these systems interact with databases and administrative tools.

Click To expand
Figure 2-4: An overview of the internal relations in Commerce Server

Business Analytics System

With an online business, you often do not get to meet your customer in person. This way you miss a lot that a salesperson in a store takes for granted. The interaction with the customer in a store makes it possible to see purchasing patterns easier. It is also an immediate way to find out which campaigns give the best sales result, since the salesperson is standing in the midst of it. The customer can also tell the salesperson what he or she needs, or would buy, if a store does not have it in stock. The salesperson can also get valuable feedback from demonstrating upcoming products, and thereby decide what to carry next.

In the online world, all this is not so easy to get a grip on. The Business Analytics System helps you deliver more effective customer and partner interaction, and drive increased revenue through sophisticated analysis and predictive business intelligence tools. With these tools, you hopefully can catch new trends and market opportunities, and hence make the correct decisions with the information given.

Profiling System

One important issue in your business is making your customers feel welcome to your Web site. Since in this case you do not meet the customer in person, you need to have other ways to attract them. You can do this by personalizing your Web pages to better suit your customers' and partners' needs. Commerce Server's Profiling System gives you a foundation for personalization across your online business. You can create customer-specific product catalogs, pricing, and business processing, as well as targeted merchandising and advertising campaigns. Hopefully all this makes your customers feel welcome and special, which gives you a better platform for doing good business.

Product Catalog System

Based on your Profiling System, you can tailor your product categories for different customers. Different customers get different discounts based on rules you set up, and this has to be reflected in your product catalog as they browse through it.

The search capabilities must also be great, or you will definitely lose your customer. The Commerce Server Product Catalog System helps you with providing the catalog with prices in different currencies, and by displaying product details in various languages—all, of course, based on the Profiling System.

Targeting System

You often need to target your merchandising campaigns so they attract the intended buyer. Relevant content must also be displayed for visitors based on their profile and current context in the business process. Personalized e-mails are often a vital part of online business, and you must have ways to quickly and easily compose them. The marketing campaigns, e-mails, and content must also be displayed in the correct language, so that your Swedish-speaking customers will not receive content in French.

This is where the Targeting System comes into the picture. With the help of its tools, you can achieve this a little easier than without Commerce Server.

Business Processing Pipelines System

When your customers have made a purchasing decision and want to place an order, you need business processes that fit your own business. By providing a series of extensible, prebuilt pipelines that manage the order process and other processes, as well as providing possibilities to interoperate with back-end systems via a tight Microsoft BizTalk integration, the Business Processing Pipelines System can be a valuable tool for developing your business. And if the prebuilt pipelines are not adequate, you can create new ones or extend the existing ones.

Management

Different management tools are supplied with Commerce Server. The Business Desk is used to update catalogs, target content to users and organizations, and analyze site usage and productivity. This tool is primarily intended for business managers so they can work with Commerce Server systems.

Administrators, on the other hand, primarily use the Commerce Server Manager, through which they can configure system resources and manage applications, databases, and servers.

Scalability

As you can see, Commerce Server does not help you in enhancing scalability. But it can be a great tool in helping you build your scalable Web applications. Commerce Server can fully take advantage of a Windows Datacenter Server running up to 32 CPUs per server. It also supports Network Load Balancing, which means it is possible to use in a Web farm. You can even use it with Microsoft Cluster Service. All this enables you to build applications for maximum scalability and availability.

Development

Commerce Server 2002 is built on .NET technology. It supports the .NET Framework as well as ASP.NET. The server integrates with Visual Studio .NET, giving the developer a more unified and familiar user interface. Commerce Server now also supports XML Web services to help you enhance your online business solution further.

But keep in mind that it is also backward compatible, so you do not have to take the leap to .NET yet if you choose not to, even though we strongly suggest you consider this if you have not done so already.

Microsoft Content Management Server

Web content management is important in any successful online business today. It must be easy to create, publish, and manage the content provided on your sites. This process must never be more difficult than providing the content itself. If it is, too much energy, time, and money will be spent on administration, and your content might suffer as a result of this. And, of course, if your content does not meet a high level of quality, visitors and potential customers might go somewhere else.

A few content management tools are available on the market today, especially for the Windows market. Microsoft Content Management Server (CMS) is one, and EPiServer from ElektroPost is another. So far we are not impressed with any of them, but Microsoft's new release of CMS, version 2002, looks quite interesting on paper. CMS integrates smoothly with Commerce Server, Sharepoint Portal Server, and Visual Studio .NET, which gives it an advantage over its competitors, and might be a good choice if you are running an all-Microsoft environment.

The whole process of content management is very important, though. In Chapter 4, we take a closer look at some of the tools you can use, both for deciding when content management is needed, and which tool suits your solution the best.

Microsoft Exchange Server

Microsoft Exchange Server is a product that we will not look into especially deeply in this book. It does not enhance scalability or availability in any way, so you do not have to consider it in the design of a scalable .NET application. Nevertheless, it is important for you to be aware of this product.

Exchange Server is Microsoft's messaging server, and as such it can be used in many solutions. We have not been big fans of Exchange Server in its earlier versions, but after getting feedback from friends and partners who have been using Exchange 2000 for a while now, we must say we feel a whole lot better about it lately.

Exchange Server integrates into Active Directory, making it simpler to administer since you do not have to keep redundant user databases. But as Active Directory is necessary for Exchange Server to install, you need to plan the deployment thoroughly before rolling it out. If you, for instance, use a catalog service other than Active Directory, you must plan deployment of Active Directory at the same time as the planning of Exchange Server deployment.

You can design a scalable and reliable communications platform including e-mail, scheduling, online conferencing, and instant messaging, using almost all Microsoft technology if you want. Figure 2-5 shows a scenario integrating Exchange Server with Active Directory, Microsoft ISA Server, and Microsoft Mobile Information Server.

Click To expand
Figure 2-5: An integrated communications platform using Microsoft technology

The solution described shows how users in or out of the office can connect to the messaging server using different devices.

Although it might look attractive to be able to integrate so many servers with each other, you should be cautious. You must consider if it really is such a good idea to leave so much of the infrastructure in the hands of a sole software supplier. The answer to this is not an easy one to give. This is an issue that must be considered internally in an organization, before a decision is made. There are pros and cons to every solution, and finding the one with the most benefits is tricky. We leave the subject for now, but it will keep coming up here and there throughout this book.

Host Integration Server

Integration is the name of the game these days, as we have stated earlier. Host Integration Server will not be discussed in much detail here, but it is nonetheless a great tool to have on hand on many occasions.

Host Integration Server helps in extending Microsoft Windows to other systems by providing application, data, and network integration. If you have invested a lot of money and resources in your existing infrastructure, you will not want to have done so in vain just because you might want to use newer techniques. Host Integration Server helps you preserve the existing infrastructure, while still letting you quickly adapt to new business opportunities.

This server supports a wide variety of network protocols and network service types. It can offer you great support in accessing various data sources on different platforms like mainframes, UNIX, AS/400, or Windows. You can also integrate Microsoft Transaction Server and COM+ with IBM's CICS or IMS, giving you two-phase commit between platforms.

Host Integration Server offers programmatic access to its features, as well as a MMC-based interface, to suit your needs. When you develop new applications that extend the features of legacy systems, Host Integration Server can be of great help to you by simplifying integration difficulties.

Microsoft Internet Security and Acceleration (ISA) Server

The ISA Server might at first glance look like a tool for system administrators only. But if you take a closer look at it, you soon find out that it has some features that help you build your Web solutions as well.

ISA Server consists of two parts that together provide secure, fast, and manageable Internet connectivity. What ISA Server offers is integration between an extensible, multilayer enterprise firewall and a scalable Web cache. Figure 2-6, a subset of Figure 2-5, shows how the ISA Server in this scenario is placed between the internal and the external firewall. It is not a replacement of firewall hardware, but an addition to security, which is important in your solutions.

Click To expand
Figure 2-6: The placement of ISA Server between an external and an internal firewall extends the security provided by the firewall hardware.

ISA Server helps you in controlling access to, and monitoring of, your network. If it discovers unauthorized access attempts, or other attacks of the network, it alerts the system administrators so they can respond quickly. The heightened security this offers is something your scalable applications always can benefit from, at least if it does not degrade performance in a drastic way. Since ISA Server scales both up and out, it should be possible to overcome these issues.

The Web cache saves network bandwidth by storing and serving locally cached Web content to your internal users. This way, requests for Internet Web pages that are popular (for instance, news site pages) do not have to travel outside your external firewall, because ISA Server sends the cached page back to the client issuing the request. Some benefits of this are it is faster than fetching the page on the Internet, and you do not have to purchase an unnecessary amount of bandwidth.

Microsoft Operations Manager (MOM)

Microsoft Operations Manager is intended solely for system administrators. It is designed to reduce support costs associated with running a Windows-based infrastructure. It provides the administrators with monitoring and management tools to ease their burden, thereby increasing the quality of the network.

Microsoft Project Server

If you have been doing project management, you know how important it is to be cost effective and complete projects in a timely manner. You also know that you need to deliver projects that reach the goals set up for them. You have probably used Microsoft Project as a tool to help you sort the various tasks, roles, and steps included in a project.

What Microsoft Project Server does is it lets an organization better manage its projects, and share best practices between project teams. The Web-based access to Project Server allows entire project teams to stay informed of the latest news about the projects they participate in. This way, the team members can update, view, and analyze project information, without having to have locally installed copies of Microsoft Project on their computers.

As you can see, Project Server is a tool that can aid most, if not all, projects (including your scalable ones). So Project Server can be a great help in organizing your project and letting you deliver what you set out to deliver, without spending all your effort on administration.

Mobile Information Server

One of Microsoft's newest slogans is bringing information together anytime, anyplace, on any device. This is not as farfetched as many slogans can be, if you think about it. If you are like many people nowadays, you take a PDA, mobile phone, and other mobile devices with you wherever you go. When you are on business trips, you still want to reach your calendars and e-mail. In the past, this has been a bit of a problem, but recently this has become as easy as picking up the mobile phone. The Mobile Information Server lets you securely gain access to your e-mail, contacts, calendar, tasks, or intranet business applications no matter what device you use. (We are sure there are exceptions to this, but it sounds impressive, does it not?)

By using the Mobile Information Server infrastructure, you can build in access to your applications on a wide range of devices. This is a good thing, and as you will see in Chapters 5 and 9 of this book, one of our points is that you should design and build your applications so they can be reachable by many different devices. With the use of XML Web services, you can build business logic that can be accessed by various clients, giving you flexibility and a better reuse of the code you have written.

Microsoft Sharepoint Portal Server

In a large enterprise, it is important to share knowledge and information. It is also important to find the correct information when you need it. If you have a good system for this, employee productivity can increase.

By using a Web portal, you can create a central access point to all information available in your organization. Access to files, documents, databases, and so on can be integrated with document management services and search capabilities. It is often as important for document handling to keep track of versioning as it is for developers to keep track of code versions, so if the tool offers good document management capabilities, you should be happy.

Using Sharepoint Portal Server, you can aggregate information from different data sources into one convenient place. From there, you can control access to the information so that only those allowed can update, view, or create information. It also lets you control versioning and provides extensive search capabilities.

One of our customers at the time of this writing has been using Sharepoint Portal Server since it was in beta. The company was an early adopter of this Microsoft product, indeed. The experience so far has been good, and now all the company's documents and files, which were scattered all over the network, have been inventoried, and are now accessible from a single starting point. Different departments have their own tailored sites where they find information relevant to their line of work. They also have the possibility to personalize the pages to better suit their individual way of working.

The implementation has not been a walk in the park, but now, when all the hard work has been done, it seems most of the customer's employees find it has been worthwhile. You should, however, be aware of weaknesses for Sharepoint Portal Server in areas ranging from deployment to backup and recovery, security, and integration with other .NET servers according to some of our customers. Based on all the feedback we have heard on this product so far, it will definitely be exciting to see what the next release will offer.

Microsoft SQL Server

Databases are an unavoidable part of most applications. If you design and build a distributed application that can expect a large number of simultaneous users, it is essential that the database can handle the load.

SQL Server is Microsoft's relational database management system (RDBMS). It offers XML support and the ability to query across the Internet by being fully Web enabled. You will learn more about the possibilities of providing reliable databases in Chapter 8 of this book. For now, it is sufficient to say that SQL Server fully takes advantage of Microsoft Cluster Service, which gives you great flexibility in providing a data source that is available for as much time as possible. By using Windows Datacenter Edition, you can reach as much as 99.999 percent uptime in your database system.

The current version of SQL Server is SQL Server 2000. The next generation of SQL Server, codenamed Yukon, is expected to be released by the time this book hits the stores. This version offers some exciting news to the world of databases that we will cover later in the book.


Team LiB
Previous Section Next Section