24
Tue, Dec
0 New Articles

The Linux Letter: Open-Source Web Serving

Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

Late last year, I had a discussion with my editor about the 2004 editorial schedule of MC Mag Online, during which I learned that the June focus was Web Serving. "Wow," I thought, "that should be an easy topic to write about." But then I contemplated the assignment further and came to the realization that an article about open-source Web Serving hails directly from the Department of Redundancy Department. So much of the Web is running on open-source software that the topic can be at once exciting (because of its possibilities) or dull and pedestrian (because of its success).

This month, we will review a few of the projects that underpin the 'net services that we all take for granted. You may know about all of these projects, or some may be new to you. In either case, the scope of open-source software on the Internet is most impressive.

The OS

The Internet was built with UNIX and, to this day, UNIX and the UNIX-like open-source OSes such as Linux and the various BSDs (OpenBSD, FreeBSD, NetBSD, et al) dominate the infrastructure and servers of the 'net. In fact, the Internet's fifty longest uptimes are all logged by the BSD variants, as reported by Netcraft. I expect that as Linux replaces UNIX on many servers, it will join its BSD cousins on the list.

Although the iSeries makes a good Web server right out of the box, I believe that the real strength of the platform is in its ability to host Linux instances. Assuming that you have sufficient hardware resources on your iSeries, you can host up to 31 separate virtual Linux servers. This is a real convenience for those system administrators who like to segregate their applications on different servers. (These folks are typically Windows admins who are accustomed to dedicating one machine per service.) Once you learn how to create one logical partition, subsequent configurations are fairly straightforward to create and clone. Thus, you can add servers as quickly as you need them.

Which brings up another benefit of Linux on logical partitions: server consolidation. One good, adequately sized iSeries can replace many smaller Intel boxes (assuming that you are running Linux or UNIX on the servers that you are replacing). You gain floor space, power savings, the renowned reliability of the iSeries platform, and improved manageability.

The Web Server

According to the latest Netcraft report, there is one Web server with the lion's share of the market: Apache. With over 67% market share, this open-source project is ubiquitous, appearing on 47 of the "top 50" sites in the list I mentioned earlier. Apache can run on any of the BSDs, as well Linux and the various UNIX flavors, Windows, and OS/400. The Apache project provides the base upon which IBM has built its OS/400 Web server. The 2.x version of Apache has been redesigned to allow easier extensibility to the base Web server. This positions Apache to be the server of choice for today's technologies as well as whatever may come down the pike. Since it is open source, the source code is available for all to see and use, which guarantees its existence for years to come.

Don't Give Me Any Static!

We all know that sites based entirely on static HTML pages are rapidly becoming a relic of a bygone era. (Can an era be less than 15 years?) Today, most sites use some kind of dynamic content generation. Early solutions used the Web server's Common Gateway Interface (CGI) to call external programs, returning their output to the client's browser. These programs were typically written in C, particularly on UNIX servers. On OS/400, they were usually written in RPG and sometimes COBOL. On Linux, the more modern implementations of CGI programs are now commonly written in Perl or Python, as well as C. The problem with CGI programs is that they typically become a performance bottleneck. They simply don't scale well.

The modern solution takes advantage of Apache's extensibility by embedding an interpreter within the Web server itself. Common languages for this purpose include Perl (via mod_perl) and PHP (via mod_php). The advantage to an embedded interpreter is that the overhead involved with a CGI program invocation is eliminated, thereby increasing scalability. The formerly static HTML pages can now be embellished with embedded PHP or Perl code, allowing for database access and computation directly from within the Web server.

Although a major improvement over CGI, embedded scripting languages also can become performance bottlenecks. Worse, embedding code within Web pages tends to lead to spaghetti coding and a major maintenance nightmare. An excellent solution to this problem is the one that IBM is pushing: Java.

Whereas the embedded interpreter solutions tend to put all of the burden on the Web server, server-side Java implementations provide separate processes to execute the Java code. The Web server takes care of the static HTML and communications with the client while passing the code execution to the servlet container, returning any response back to the client. While similar to CGI, server-side Java eliminates the overhead of program invocation that CGI suffers. The result is a solution that scales very well.

There are commercially available products to provide server-side Java. Probably the most familiar example is IBM's all-encompassing WebSphere product. For those with simpler requirements or budgets, the open-source community offers Tomcat. And for full J2EE applications, there is always JBoss. Many of the Internet sites using Java employ one of these products.

But That's Not Open!

"Ah, but Java isn't open source," I hear you say. At the moment, that is correct. Java is under the control of Sun Systems. But that may change in the future. Sun is being pressured to open up Java to the community. However the JBoss and Tomcat implementations are open source. The source code is available for these products, so if the Tomcat project ends or JBoss goes belly up, the code will undoubtedly be used to spawn new projects.

Freedom or Vendor Lock-In?

I have mentioned only briefly the most prominent examples of open-source software in this article. Literally thousands of articles have been written about the open-source projects supporting the Web. I have written a number of them myself in the "pages" of MC Mag Online. I simply wanted to put these together on one page to get you thinking.
As you design your software, consider these questions: Do you want your software to be deployable on many different platforms or just one? Do you want your software to play well with others, or do you want to limit your options? There are basically two factions left on the Internet: those that respect Internet standards (promoting interoperability) and those that try to redefine the standards for their own personal gain (promoting vendor lock-in). Part of your design process must include a decision about which camp you'll join. Making the wrong choice can be a real pain in the ASP which will certainly reduce your .NET gain.

Barry L. Kline is a consultant and has been developing software on various DEC and IBM midrange platforms for over 21 years. Barry discovered Linux back in the days when it was necessary to download diskette images and source code from the Internet. Since then, he has installed Linux on hundreds of machines, where it functions as servers and workstations in iSeries and Windows networks. He also co-authored the book Understanding Linux Web Hosting with Don Denoncourt. Barry can be reached at This email address is being protected from spambots. You need JavaScript enabled to view it..

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$

Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: