Xitami
   HOME

TheInfoList



OR:

Xitami is a
Web Web most often refers to: * Spider web, a silken structure created by the animal * World Wide Web or the Web, an Internet-based hypertext system Web, WEB, or the Web may also refer to: Computing * WEB, a literate programming system created by ...
and
FTP The File Transfer Protocol (FTP) is a standard communication protocol used for the transfer of computer files from a server to a client on a computer network. FTP is built on a client–server model architecture using separate control and dat ...
server, originally developed by iMatix Corporation as a free,
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
product from 1996 to 2000. It ran as a single process with a small footprint. It was not as fast as the fastest servers but scaled well. It supported several web application protocols and was very portable. It also had a web interface to configure the web/FTP server. In 2009, iMatix launched a new version of Xitami, called X5 (Xitami/5).


iMatix, developer of Xitami

iMatix is a firm that produced
free software Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed open-source license, under terms that allow users to run the software for any purpose as well as to study, change, distribut ...
applications, such as the
ZeroMQ ZeroMQ (also spelled ØMQ, 0MQ or ZMQ) is an asynchronous messaging library, aimed at use in distributed or concurrent applications. It provides a message queue, but unlike message-oriented middleware, a ZeroMQ system can run without a dedicated ...
high performance message
library A library is a collection of Book, books, and possibly other Document, materials and Media (communication), media, that is accessible for use by its members and members of allied institutions. Libraries provide physical (hard copies) or electron ...
, the OpenAMQ AMQP
messaging A message is a unit of communication that conveys information from a sender to a receiver. It can be transmitted through various forms, such as spoken or written words, signals, or electronic data, and can range from simple instructions to co ...
service, Libero, the GSL code generator. Hintjens was CEO and chief software designer for it.


History

iMatix started the original Xitami server in 1996 as a demonstration of its "SMT" multithreading technology for building protocol servers. The name was chosen at the last minute when the developers realized that their original choice ("Cosmos") had already been taken by another web server that no longer exists. "Xitami" is "iMatix" spelled backwards. Xitami was featured in an April 1997 article in Dr. Dobb's Journal. The web server attracted people looking for a fast but simple web/FTP server, mainly on
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
. Xitami was designed to be portable, and was ported to
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
and other Unices,
OpenVMS OpenVMS, often referred to as just VMS, is a multi-user, multiprocessing and virtual memory-based operating system. It is designed to support time-sharing, batch processing, transaction processing and workstation applications. Customers using Op ...
,
BeOS BeOS is a discontinued operating system for personal computers that was developed by Be Inc. It was conceived for the company's BeBox personal computer which was released in 1995. BeOS was designed for multitasking, multithreading, and a graph ...
, and
OS/2 OS/2 is a Proprietary software, proprietary computer operating system for x86 and PowerPC based personal computers. It was created and initially developed jointly by IBM and Microsoft, under the leadership of IBM software designer Ed Iacobucci, ...
. All non-portable functionality was encapsulated in a library layer called SFL (the "standard function library"). SFL was a free and open source project and was used fairly widely in other such projects. In 1999, the Apache web server adopted a similar approach to portability for Apache2, building the
Apache Portable Runtime The Apache Portable Runtime (APR) is a supporting library for the Apache web server. It provides a set of APIs that map to the underlying operating system (OS). Where the OS does not support a particular function, APR will provide an emulation. T ...
(APR). The Xitami team continued to add features until mid-2000 when development of the server stopped except for security updates. In 2008 multiple
printf printf is a C standard library function that formats text and writes it to standard output. The function accepts a format c-string argument and a variable number of value arguments that the function serializes per the format string. Mism ...
vulnerabilities were reported in the final release of Xitami/2.5.


X5

In January 2009 iMatix announced the start of a new Xitami project, version 5, called ''X5''. This uses the latest generation of iMatix's multithreading technology (''Base2''), making Xitami scalable to multiple cores, while remaining small, and simple. iMatix has stated that it is "designed to handle thousands of connections without difficulty" which makes it ready for long polling, in which client connections remain open for extended durations. Windows binaries for X5 were released in February 2009 and X5 was used for the first time to run the iMatix Live Zyre website. X5 shares the same technical framework as iMatix's OpenAMQ message service. X5 is written in ANSI
C99 C99 (previously C9X, formally ISO/IEC 9899:1999) is a past version of the C programming language open standard. It extends the previous version ( C90) with new features for the language and the standard library, and helps implementations mak ...
, using a meta-programming approach called "Model Oriented Programming". X5 was presented at
FOSDEM Free and Open source Software Developers' European Meeting (FOSDEM) is an annual software engineering conference. It is non-commercial and volunteer-organized with a focus on free and open-source software. Initiated in 2000, it is usually held d ...
2009 as consisting of 3,457 lines of meta-meta code.FOSDEM 2009 presentation
X5 uses APR in place of SFL, and has been run on
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
,
AIX Aix or AIX may refer to: Computing * AIX, a line of IBM computer operating systems *Alternate index, for an IBM Virtual Storage Access Method key-sequenced data set * Athens Internet Exchange, a European Internet exchange point Places Belg ...
,
Solaris Solaris is the Latin word for sun. It may refer to: Arts and entertainment Literature, television and film * ''Solaris'' (novel), a 1961 science fiction novel by Stanisław Lem ** ''Solaris'' (1968 film), directed by Boris Nirenburg ** ''Sol ...
, and
OpenVMS OpenVMS, often referred to as just VMS, is a multi-user, multiprocessing and virtual memory-based operating system. It is designed to support time-sharing, batch processing, transaction processing and workstation applications. Customers using Op ...
.


See also

*
Comparison of web servers Web server software allows computers to act as web servers. The first web servers supported only static files, such as HTML (and images), but now they commonly allow embedding of server side applications. Some web application frameworks include s ...
*
ØMQ ZeroMQ (also spelled ØMQ, 0MQ or ZMQ) is an asynchronous messaging library, aimed at use in distributed or concurrent applications. It provides a message queue, but unlike message-oriented middleware, a ZeroMQ system can run without a dedicated ...


References


External links

*
Xitami legacy web siteServerWatch review of XitamiImplications of RestMS protocol on X5 design
{{Web server software Free web server software Software using the BSD license