Programming Tutorials Browser Tutorials Articles Struts Tutorials Hibernate Tutorials

  Tutorial: A Practical Roadmap for Deploying Enterprise Web Applications: Taking the First Step

This article covers important decision points around the availability, scalability, and security that are needed for enterprise web applications.

Tutorial Details:

Contents:

First Things First
Establishing Your Presence
Availability
Scalability
Security
Resources
So you've got an idea that could be the "Next Big Thing" on the Internet. More than that, you've got a solid business plan and a realistic expectation of success. Once upon a time this would have been enough to get you at least a couple of million dollars in venture capital. For better or worse, those days are past, and entrepreneurs with a great idea are forced to find ways to bootstrap their Internet-based businesses. Fortunately for you, the industry has grown a lot since those early days, and today a wealth of inexpensive options are available for the enterprising bootstrapper. With a little planning (OK, maybe a lot of planning) your enterprise application can grow painlessly to meet the demands of your ever-increasing customer base.



First Things First
Before deciding what kind of hardware you need to get started, you must make a few important decisions. The first of these is deciding where to host your application. Several options are available, ranging from a business DSL line in your office to a fully managed co-location environment.

The cheapest hosting solution is to host your server from your own office using an inexpensive DSL or cable modem. DSL or cable lines, while often offering excellent bandwidth, are also unreliable. Apart from the network, you must also consider the other infrastructure limitations of your office: How reliable is your power supply? How many other people will be using the network connection? Is the temperature in the office stable enough for servers? Because of these and many other factors, hosting from your own office is almost never an acceptable solution.

A better solution is to rent some space from a dedicated hosting facility. These facilities provide you with highly reliable network connections, a power supply with generator backup, and climate control. Costs for these services are shared between thousands of other tenants, so the prices tend to be reasonable. While it is a straightforward matter to rent space from a hosting facility, keep in mind that most facilities only provide you with some rack space, a power strip, and an Ethernet cable. You are responsible for buying your hardware, placing it in the rack, configuring it, and maintaining it. If you are feeling up to the challenge of doing this, then this is an ideal situation. If you feel less than comfortable with this proposition, you may want to opt for a managed-hosting service.

Managed hosting services provide an extra level of support for people who don't want to deal with buying a machine, configuring it, and maintaining it. Although these services are much more expensive per month than basic co-location services, they provide many advantages for a budding e-business. Many start-ups do not have employees with the knowledge and/or time to configure and maintain servers. Managed hosting providers have staff on-hand to debug networking problems, apply patches and updates, and reconfigure hardware.


Another potential advantage to managed hosting services is the ability to lease hardware. One way to lower your startup costs is to lease big-ticket items, such as:

Firewalls (for example, iForce VPN/Firewall Appliance)
Load balancers (for example, Sun Fire B10n Content Load Balancing Blade)
RAID arrays (RAID is an acronym for Redundant Array of Inexpensive Disks) -- see Sun's Storage product page for more information
Keep in mind, however, that if you stay with managed hosting for an extended period of time, you could end up paying several times the cost of buying the hardware yourself. The business model for these services depends on this fact.

Once you have chosen a home for your servers, you then have to decide on a platform for your application. In some cases your application dictates the platform that it must be run on (such as ASP or .NET), but in most cases your application is written in a programming language that can easily be ported from one platform to another (such as Java, PHP, Perl, and so on). The two most popular platforms for serving web applications are Windows and UNIX-based operating systems.


The Windows platform has the appeal of having a nice "point-and-click" interface that appears to be easier to set up, while most UNIX platforms require specialized knowledge of command-line utilities to manage them effectively. The situation is not so clear-cut, however. The recent spate of serious Windows security flaws should cause serious concern for anyone managing a Windows-based server environment. In addition to security problems, a high price may be paid for that nice "point-and-click" interface. These servers are typically much harder to administer remotely -- requiring remote desktop applications such as NetMeeting, Symantec's pcAnywhere, or Microsoft Terminal Services. These applications generally require much higher bandwidth, and they may be painful to use on slow connections or congested networks. While setting up web services is relatively easy on Windows boxes, there is no substitute for a knowledgeable system administrator. For this and many other reasons, the Windows platform has not diminished the popularity of UNIX-based operating systems for serving web applications.


 

Read Tutorial at: Click here to view the tutorial

Rate Tutorial:
A Practical Roadmap for Deploying Enterprise Web Applications: Taking the First Step

View Tutorial:
A Practical Roadmap for Deploying Enterprise Web Applications: Taking the First Step

Related Tutorials:

Alternative deployment methods, Part 3: The code - JavaWorld September 2000
Alternative deployment methods, Part 3: The code - JavaWorld September 2000
 
Get the app out - JavaWorld January 2001
Get the app out - JavaWorld January 2001
 
The art of EJB deployment - JavaWorld August 2001
The art of EJB deployment - JavaWorld August 2001
 
A birds-eye view of Web services
A birds-eye view of Web services
 
US Department of Energy signs on to J2EE
US Department of Energy signs on to J2EE
 
Is the JCP adequately preparing Java for Web services?
Is the JCP adequately preparing Java for Web services?
 
Axis-orizing objects for SOAP
Axis-orizing objects for SOAP
 
The J2EE 1.4 Tutorial
The J2EE 1.4 Tutorial is a guide to developing enterprise applications for the Java 2 Platform, Enterprise Edition (J2EE) version 1.4. Here we cover all the things you need to know to make the best use of this tutorial.
 
Clustering and Load Balancing in Tomcat 5, Part 1
The latest version of the Tomcat servlet container provides clustering and load balancing capabilities that are essential for deploying scalable and robust web applications.
 
Turn EJB components into Web services
Summary Web services have become the de facto standard for communication among applications. J2EE 1.4 allows stateless Enterprise JavaBeans (EJB) components to be exposed as Web services via a JAX-RPC (Java API for XML Remote Procedure Call) endpoint, al
 
Developing Your First Enterprise Beans, Part 1
One of the most important features of EJB is that enterprise beans have the ability to work with containers from different vendors. However, that doesn't mean that selecting a server and installing your enterprise beans on that server are trivial processe
 
Developing Your First EJBs, Part 2
the authors walked through what you need to do to develop your first entity bean. This week concludes this series with a look at how to develop a session bean, building on the examples presented in part one.
 
A first look at Apache Geronimo
Start developing and deploying J2EE apps on the first open source J2EE server. When released, Geronimo will be the first J2EE-certified open source server. This article will give you the basics you need for developing and deploying J2EE applications on Ge
 
Practically Groovy: JDBC programming with Groovy
Take your practical knowledge of Groovy one step further this month, as Andrew Glover shows you how to use GroovySql to build a simple data-reporting application. GroovySql combines closures and iterators to ease Java Database Connectivity (JDBC) programm
 
Introduction To Enterprise Java Bean(EJB). WebLogic 6.0 Tutorial.
Introduction To Enterprise Java Bean(EJB). WebLogic 6.0 Tutorial. Welcome to EJB Section (Learn to Develop World Class Applications with Enterprise Java Beans) (Online WebLogic 6.0 Tutorial) Introduction To Enterprise Java Bean(EJB) Enterprise
 
Introduction To Enterprise Java Bean(EJB). Developing web component.
Introduction To Enterprise Java Bean(EJB). Developing web component. Developing web component Introduction To Java Beans J2EE specification defines the structure of a J2EE application. According to the specification J2EE application consists of
 
Building Web Application With Ant and Deploying on Jboss 3.0
Building Web Application With Ant and Deploying on Jboss 3.0 Building Web Application With Ant and Deploying on Jboss 3.0 Previous Tutorial Index Next In this lesson I will show you how to build you web application and install on the Jboss 3.0
 
Roadmap to Sun Developer Documentation
This article offers an array of information sources about Sun products for developers, particularly those on docs.sun.com. Topics include the Solaris Operating System, Sun Studio tools, and other products and technologies.
 
A Practical Roadmap for Deploying Enterprise Web Applications: Taking the First Step
This article covers important decision points around the availability, scalability, and security that are needed for enterprise web applications.
 
Chat Transcript: Java Web Services Developer Pack (Java WSDP) 1.5
Learn about the exciting new web services features in the recently-released Java WSDP 1.5.
 
Site navigation
 

 

Send your comments, Suggestions or Queries regarding this site at roseindia_net@yahoo.com.

Copyright © 2006. All rights reserved.