Cheyenne est un serveur web générique et un serveur d'application pour le langage REBOL. C'est un projet open source sous licence BSD, née en 2006. Sa cible principale est le serveur web personnel ainsi que les serveurs webs en ligne pour des traffics < 10M hits/jour. Il est écrit 100% en REBOL et le code source fait ~200ko. Il est distribué sous forme d'un binaire unique de 500Ko qu'il suffit de lancer pour activer le serveur. Pas d'installation nécessaire. Configuration minimale.
Il tourne sous Windows, Linux, MacOSX, FreeBSD, OpenBSD, Solaris. Le moteur principal est de type mono-thread et asynchrone. Pour servir du contenu dynamique, il utilise le modèle de worker-processes en pre-fork et s'adapte à la charge (gestion dynamique du nombre de workers). Chaque worker peut exécuter soit du CGI, soit du RSP (REBOL Server Pages). Le traitement des requêtes est découpé en évènements au sein d'un pipeline similaire à celui d'Apache.
Un client FastCGI générique est également présent dans le moteur permettant de s'interfacer avec PHP lancé en serveur FastCGI. Les websockets sont également supportées, une démo d'un chat temps réel en websocket est disponible en ligne (http://demo.cheyenne-server.org:8080/chat.html).
Parmi les autres fonctionnalités intégrées: un CRON-like avec son propre DSL, un serveur SMTP avec persistance sur disque, un menu en "system tray" sous Windows, la bascule en mode Windows Service en un click. Il peut écouter sur plusieurs ports HTTP à la fois depuis le même processus et s'intégrer avec nginx en frontal.