Linux and Web Servers
One of the interesting things about the moment in which the Linux community finds itself is the fact that while more and more people are learning about Linux, at the same time Linux itself is changing and expanding, making some newbies feel as if they will never "master Linux". Fortunately for them, "mastering Linux" is a goal probably not worth pursuing. It is like mastering cooking; in actuality, a person only becomes more and more proficient. Even upon reaching a level others might regard as mastery, the true practitioner knows there is always more to learn, more to create and more to discover.
This week on Wall Street News Hour, I will be talking to the Linux-curious about Linux and web servers. While many on the "end-user" side of things tend to think of web servers as something only geeks need concern themselves with, the quality of the web server on a given ISP or within a given network will have a major impact on the quality of the Internet experience the end user eventually enjoys. If it is possible (and I believe it is) that a poor performance by a web server can turn an end user off of the Internet completely, a top-quality web server (run by a talented sys admin, too) can convince an end user of both the seamlessness and exceptional productivity of computing and the Internet.
One of the easiest ways to understand what a web server is is simply to break up the term. A "server" is a software application that provides information to a "client". In the case of a web server, the server application delivers information to a client such as an Internet browser (Netscape, Internet Explorer, Opera, etc.). One of the most popular web servers (also known as "http server" for reasons which might be obvious at this point) is Apache, whose web servers are responsible for powering much of the Internet most of us use every day. Interestingly, virtually every different platform offers its own server software: Windows NT, for example, is a popular OS choice for servers among those preferring Microsoft products. Solaris, an operating system developed by Sun Microsystems, is another very popular server software package used widely on the Internet.
So "web serving"--providing HTML/web pages for browsers--is just one of the functions of server software, as are file and print "serving". The computer which handles the printer = a print server. A hub computer that handles files and applications over a network = a file server. And so on.
Generally, most of the qualities that make for good software on the client side (reliability/availability, strength or "robustness" and a clean, relatively bug-free performance) also make for good software on the server side. In fact, client and server versions of the same operating system are often very much alike (this is especially true with Linux systems), except for certain features that help server software deal with its many special responsibilities. Perhaps foremost among these responsibilities is security. Because servers in general and web servers in particular access a wide array of data for end users, it is paramount that users not only be able to access their servers when they choose to (meaning servers should not be easily crackable, nor should they be so bug-ridden as to become susceptible to crashing or other system failure), but also feel confident that the information they are accessing is not disclosed to others who are using the same software. If you've ever been talking on the telephone and suddenly found yourself hearing another conversation coming through your telephone line at the same time, then you can imagine how important communication security can be.
Another important responsibility of web servers also has to do with their relationship to end users: the ability to centrally manage a variety of remote clients. While from this point in time, such a comment may seem beyond obvious, the ability of various servers to handle both a sizable number of clients with varying types (and quality) of connection is one of the important criteria in determining the suitability of a given server to a given task.
For many end users, hearing that Linux was only okay on the desktop but a real killer as a server did not likely inspire a great deal of end-user enthusiasm toward the open-source operating system. This is a bit unfortunate, but completely understandable. The average end user doesn't care (or, more accurately, doesn't think he or she cares) about what kind of web server their ISP may be using. An end user has his or her client-side machine--desktop, laptop or some other connected device--and all the end-user tends to be interested in is being able to get on-line when his or her browser calls for HTML pages. This, for an increasing amount of people, is where Linux comes in.
One of the things that helped put Linux on the server map was its reliability. Many of the then-current web servers were powerful systems clearly capable of delivering content, but their inherent "bugginess" was a source of constant consternation for many sys admins. This "bugginess"--manifested in repeated crashing and other system failure--became so common that many began to assume crashing and system failure were simply a part of the web server experience. A similar bleak (but false) realization was happening at the same time on the desktop to many end users. The emergence of Linux, an operating system that was almost notoriously crash-free and rarely needed rebooting, was, for these sys admins, a godsend (or a Torvaldsend, depending on your perspective). Like Apache, the popular server used by UNIX and Windows NT systems, Linux is open source, which means programmers, sys admins and others having the expertise can "open up the hood" on the operating system and fix or add to specific parts of the fundamental source code of the system.
Linux's security is another area in which the open-source operating system tends to thrive. While widespread implementation of Linux will increase the overall instances of attacks on Linux systems, the ability to access its source code means that patches, fixes and other repairs can be deployed much more rapidly. It also means that many more security back doors and holes will be detected before these back doors and holes are exploited by crackers.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- SUSE LLC's SUSE Manager
- My +1 Sword of Productivity
- Managing Linux Using Puppet
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Non-Linux FOSS: Caffeine!
- Doing for User Space What We Did for Kernel Space
- Google's SwiftShader Released
- SuperTuxKart 0.9.2 Released
- Parsing an RSS News Feed with a Bash Script
- LiveCode Ltd.'s LiveCode
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide