Main  /  Edit  /  History  /   /  Users Area

Internals of CppCMS 1.x.x

The CppCMS framework consists of following parts:

Long Living Classes

Connection Related Classes

When the main loop is started all incoming connections are accepted and processed by impl::cgi::connection class.

This is an abstract class that various protocol connectors implement it. Currently CppCMS supports following protocols:

So, each time new connection is accepted it is read completely, including parsing headers and all POST data.

When the connection becomes ready it is assigned to user visible http::context object that provides an interface for user to lower level CGI like protocol.

When the http::context is ready, appropriate application is fetched from applications_pool and http::context object is assigned to it.

When application finishes response, it releases http::context object that sends all the pending data to output and releases cgi::impl::connection for further reuse --- keep-alive requests.

Then application is recycled to applications_pool for reuse.

Other classes are used together with http::context

Their lifetime is bounded to lifetime of http::context object.

Various Objects Lifetime

All dynamically created and destroyed objects are reference-counted. Their lifetime is tightly bounded to their users.

CppCMS 1.x.x tasks | Top | Coding Standards for CppCMS 1.x.x


CppCMS is a web development framework for performance demanding applications.

Support This Project Logo

Поддержать проект

CppCMS needs You


Main Page

Valid CSS | Valid XHTML 1.0