Jump to content

Talk:Web server

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 73.71.251.64 (talk) at 19:11, 11 December 2021 (→‎About static vs. dynamic content and web pages in article). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

WikiProject iconComputing C‑class High‑importance
WikiProject iconThis article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
CThis article has been rated as C-class on Wikipedia's content assessment scale.
HighThis article has been rated as High-importance on the project's importance scale.

Changes to web server article

To complete the article I am going to do the following changes:

  • to add a few diagrams (images) about clients and HTTP/web server, both with a static and a dynamic configuration (done);
  • to add a few sections about "Content cache", "File cache", etc. (done);
  • to complete section "History".

Then in the middle-long term there would be some more radical changes to do as described in the following sentences.

The term "web server" is an alias for the term "HTTP server" which is the software and the process that implement HTTP protocol (which may also include HTTPS, ecc.).

As an extension, a "web server" should be intended as the software installation or the software installation and the computer hardware dedicated to host and manage a website.

Maybe the right thing to do would be:

  • to move 80% of content of "Web server" article to "HTTP server" article;
  • to remove above mentioned 80% of content from "web server";
  • to add to "Web server" article a few definitions about the fact that usually the term "web server" is used to include both the "HTTP server" software and the computer hardware dedicated to run the "HTTP server" and its related software.

UPDATE: after a few thoughts about above topic I think that it is better to keep the current division of topics as the term web server predates that of HTTP server and so it is right to only add a few references to HTTP server and to explain the difference between an HTTP server and a web server.

If there are other proposals about non trivial changes to the article, please write here your ideas. Ade56facc 13:11, 17 November 2021 (UTC)[reply]

Web server on a single computer

An IP editor removed a few computer examples at the beginning of the article, leaving this comment:

dubious examples; "single computer" in this context normally would not mean a desktop and especially not a laptop-

Original text:

A web server can be a single computer, i.e. a desktop, a laptop or even an embedded system (such as a router, a printer, a webcam, etc.) with a built-in configuration interface, but high-traffic ..

Edited text:

A web server can be a single computer, or even an embedded system such as a router with a built-in configuration interface, but high-traffic ...

Answer: a web server program can run on any kind of computer that has enough HW resources to run it; web servers are used also to configure other local programs, license managers, etc. on a local computer (a desktop or a laptop), to run web interfaces with embedded HW, etc. so a web server is not required to reply only to requests coming from Internet, the majority of web servers could serve contents inside private organizations (LAN, WAN), to local single computers, etc.

The examples about the various kind of single computers were meant to let the reader understand that concept. An embedded system is a single computer so the word "or" is out of context without the previous examples, and a web server can be also a notebook, a laptop, etc. because there is written nowhere that the availability of a web server must be 24h per day, 365 days per year.

The original definitions for a web server were two:

  1. a web server program;
  2. a web server program + computer HW to run the first one.

... then those 2 definitions were removed and things started to get unclear. ade56facc (talk) 17:53, 10 December 2021 (UTC)[reply]

Web Server vs Cloud?

Today people talk about "cloud", not "web servers".

It would be nice to have section about the difference of a web server and the cloud.

I guess this is a difficult task to distinguish between both.

The client still does a client-server request-response communication.

But the client, does it today still communicate to a web server?

What you are proposing is inappropriate for this article because Wikipedia is not a textbook. Go see WP:NOT. Specifically, this paragraph: "Wikipedia is an encyclopedic reference, not a textbook. The purpose of Wikipedia is to present facts, not to teach subject matter. It is not appropriate to create or edit articles that read as textbooks, with leading questions and systematic problem solutions as examples. These belong on our sister projects, such as Wikibooks, Wikisource, and Wikiversity. Some kinds of examples, specifically those intended to inform rather than to instruct, may be appropriate for inclusion in a Wikipedia article."
Cloud computing refers to a style of computing. A Web server is a specialized kind of server. Totally different concepts.
Yes, clients still talk to servers. Usually those servers are Web servers, but not always. It sounds like you need to read up on multitier architecture. For example, a Web server that talks to an underlying SQL database server to add or retrieve data is a client as far as the database is concerned. Similarly, email clients like Outlook and the mail apps built into smartphones talk to email servers.
If you still don't get it, you need to read textbooks on computer networking and Web applications, or consider taking an online course. --Coolcaesar (talk) 16:10, 15 April 2020 (UTC)[reply]

Code of the first web server

A few years ago, I remember following-along with this reddit thread searching for the code of the first web server. I wasn't sure if it was worth linking to the code, which is now in this GitHub repo.

At the very least, it's an interesting thread that folks might be interested in reading. = paul2520 (talk) 21:09, 16 May 2020 (UTC)[reply]

About static vs. dynamic content and web pages in article

I would like to state that the following conclusions are right by facts not by abstract ideas.

1. nowadays serving static content by a modern and efficient OS on a fast computer is usually faster than serving complicated / formatted dynamic content with the same size (90% of times) because of the following reasons:

  • if file has already been read recently then probably it's content has been kept in OS RAM pages (file system cache); so unless it is a really big file, then sending that file is a really fast operation; you may end up to be able to cache most of your website files in RAM, just add enough RAM to web server computer;
  • if file has been cached by web server too then small file contents can be kept in web server memory and sent with no delay due to open/read/close file; medium sized files can be kept mapped (mmap), etc.;
  • file content is usually sent without any further application operation (well, if you compress content on the fly and/or you encrypt HTTP connection this adds up to your computational costs in both cases, static and dynamic);
  • what about SSD disks? It's almost like sending content already in RAM, the whole operation can be done at the speed of light.

Of course if content of a dynamic request is read directly from RAM and it is not too large then this operation can be faster than sending a static file of equal size.

Usually, sending dynamic content implies:
A) CGI: spawning an external program (hundreds of times slower);
or
B) FCGI, etc.: sending the request to an external program, already in execution via local socket connection and getting the reply via socket (two .. five times slower);
or
C) passing the request to an internal thread that creates the dynamic content on the fly (maybe not always slower than sending a file of the same content size but usually yes, if thread has to collect data from a DB or some other source, then format it, etc.).

2. HTTP was not created to distribute web pages only; maybe the first version 0.9 had that target but all subsequent versions, starting with HTTP/1.0 drafts around 1992 .. 1996 aimed to allow access to many types of contents (HTML files, images, other binary / executable files, etc.) so, since 1992..1993, it is much more correct to use the term web content instead of web pages. In fact, in RFC-1945 term "hypermedia information" (a synonym for web content) is used:

The Hypertext Transfer Protocol (HTTP) is an application-level

protocol with the lightness and speed necessary for distributed,

collaborative, hypermedia information systems.

— RFC-1945 (HTTP/1.0), 1996

The right thing to do about wiki articles "Static web page" and "Dynamic web page" would be to create articles with a more general idea of content, i.e. "Static web content" and "Dynamic web content", and move there part of what is contained in "Static web page" and "Dynamic web page". Ade56facc 08:54, 8 November 2021 (UTC)[reply]

I feel truly sorry for anyone who tries to read this article beyond the lead and the history section. It reminds me of what Harrison Ford once said to George Lucas: "You can write this shit but you sure as hell can't read it." Whoever loaded it up with "i.e."s and "etc."s, in particular, should do penance. 73.71.251.64 (talk) 04:43, 11 December 2021 (UTC)[reply]

Merely replacing "i.e." with "e.g." does not make the text more readable in this regard. I look at the article and see an interminable Powerpoint presentation written with a short attention span (as indicated by the endless "etc."s). 73.71.251.64 (talk) 19:11, 11 December 2021 (UTC)[reply]