building the backend

When launching a new site, you have to make decisions about its technical infrastructure: What kind of hardware and software will support your site?

Smaller sites usually sidestep these decisions by working with a web-hosting service like Earthlink or Yahoo Stores. In this case, the hosting service makes most of the technical decisions for you. They own and control the servers, and dictate what can and can't be done on the sites they host.

But larger companies, which own and operate their own servers, have choices.

Backend technologies include

  • Server hardware

  • Server operating system

  • Server software

  • Database

  • Programming language (for any applications developed)

  • Server-side scripts

Now, it's only in rare cases that you have a clean slate for these decisions. Usually, they'll be forced by the company's previous choices and existing technical infrastructure. In those rare but lovely instances when you do have all your options open, your decisions will be framed by the constraints of time, money, and people and the needs of the site itself.

Factors affecting technical decisions:

  • Existing infrastructure. What servers or operating systems are currently in use? Do you need to integrate with a backend mainframe or legacy software?

  • Familiarity with technologies. There's always an argument for sticking with what you know. It takes time and sometimes money to learn new systems.

  • Available developer pool. Especially when choosing a programming language, the ability to hire experienced developers is always a priority.

  • Cost of systems and support. Decisions are always framed by what you can afford both in terms of equipment and support.

  • Scale of site. Your technical needs may change depending on the amount of data managed by your site. A commerce site with 200 items, for example, will have different needs from one with 20 or 20,000 items.

  • Traffic to site. Similarly, technical needs change as a site grows more popular, particularly if the users are placing orders or using applications.

  • Cost of failure. A question you must ask yourself: What happens if the system fails? For most sites, it's an inconvenience. In some companies, it could mean your job. But in extreme cases like a stock-trading site it could mean a criminal investigation.

  • Risk tolerance. Different organizations have different attitudes toward risk. Some are willing to try new technologies; others won't stray from the tried-and-true. Witness the IT maxim that goes: "No one ever got fired for buying Microsoft."

a note on open-source technologies

As a site grows, its backend infrastructure becomes more expensive: You need more servers and more bandwidth to meet the needs of a growing user base.

One way to keep costs manageable is to use open-source technologies, which are free (or nearly free). The operating system Linux, the web server software Apache, the database MySQL, the server-side scripting language PHP, and the programming language Perl are all excellent, low-cost options on which many sites, large and small, depend.

sorting out backend technologies

technology

what is it?

what are your choices?

Server hardware

This the actual computer from which the site is served.

Choices include Sun, Compaq, Dell, Silicon Graphics, Hewlett Packard, and others.

Server operating system

This is the basic system software running on the server.

Choices include Windows NT, Windows XP, OS2, Mac OS X, Linux, Solaris, and other types of Unix.

Web server software

This is the software that's installed on the computer to convert it from an ordinary machine to a web server.

Web server software includes Windows IIS, Mac, and Apache.

Application server software runs complex web applications, like those for online stores or banking sites.

Application server software includes Weblogic, iPlanet, IBM Websphere, and Microsoft.

Streaming server software is specialized to serve "streaming" audio or video files.

Streaming server software includes WindowsMedia, RealMedia, and QuickTime.

Database

This is the software that stores, organizes, and provides access to large collections of data, such as the products sold in a store or the articles served on a news site.

Choices include Informix, MySQL, Oracle, Sybase, IBM, and others.

Applications

These are the computer programs that power all the web's complex functionality, like banking systems or search engines. These programs are installed on the server. See adding applications to your site, p. 226

No generic choices here. There are many different types of applications, from shopping cart software to search engines to content-management systems.

Server-side scripts

These are small computer programs that connect the application to the web page. See understanding php, p. 168

Choices include ASP, JSP, PHP, ColdFusion, and CGI Scripts.




The Unusually Useful Web Book
The Unusually Useful Web Book
ISBN: 0735712069
EAN: 2147483647
Year: 2006
Pages: 195
Authors: June Cohen

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