{ title: 'GoAhead Features', crumbs: [ ], }

# Embedthis GoAhead™ Features

The GoAhead product includes the following components:

- GoAhead HTTP Server library
- GoAhead HTTP Server main program
- Interface to Secure Sockets Layer (SSL/TLS)
- Documentation
- Samples
- Source code

## Feature Overview

### HTTP Server Engine

- Full HTTP/1.1 support
- IPv4 and IPv6
- Single-threaded, event-based server
- Request routing and rewriting
- Supports chunked and pipelined requests
- Error and access Logging (Common Log Format)
- Sand-box resource limits
- Session state storage

### Performance

- Request throughput (> 10,000 requests per second)
- Event-based core for efficient processing of multiple requests
- Small memory footprint: 115K code

### Modularity

- Conditional build-time options
- Handlers for CGI, Javascript templates, files, file upload and SSL
- Configurable request routing
- Extensible / replaceable authorization

### Security

- Secure Sockets Layer (SSL)
- Basic, Digest and Form Authentication
- Route based authorization
- Sandbox limits
- Access and access violation logging
- Safe portable runtime to protect against memory leaks and buffer overflows

### Dynamic Content

- Server-Side JavaScript
- CGI/1.1
- GoActions — In-memory URL actions
- Custom C Handlers

### Javascript Templates (JST)

- Web page templating engine
- Embedded Javascript code in HTML pages
- Fast, automatic reloading of updated web pages
- Ajax View Controls with jQuery support
- Session state management

### Developer Support

- HTTP server libraries
- Shared and static library build options
- Operate single-threaded or multithreaded (Compile or run-time selectable)
- Easy, intuitive programming model
- Extensive C API
- Extensive debug trace logging

### Documentation

- Full C API Documentation
- Guides and programmer references

### Platform Support

- Linux (2.6)
- Windows (7, 8)
- MAC OSX (Lion)
- VxWorks (6.x)
- Free BSD
- Unix
- Easily ported to new platforms

### Embedding Support

- Supports ARM, MIPS, X86, PPC and Sparc processors
- Full cross-compilation support. Use Windows, Linux or Mac as build system
- Fine-grained control for conditional build and compilation
- Execute from ROM (XIP)

### Standards

- HTTP/1.1
- CGI/1.1