Skip to content
/ bes Public

A C++ micro-services framework with gRPC, FastCGI and templating

Notifications You must be signed in to change notification settings

jordonsc/bes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Bes

Egyptian God Bes

Project Bes is a foundational framework for building a high-performance C++ microservices environment. It contains application templates and an infrastructure that allows you to:

  • Communicate easily with the gRPC and Protobuf messages
  • Handle to HTTP requests with integrated FastCGI
  • Respond to HTTP requests with an high-speed Jinja2-style templating engine
  • Distribute quickly in a containerised environment such as Kubernetes
  • Be cloud-friendly and cloud-provider agnostic

A core value of this project, in order to ensure stability and high-performance:

  • Don't trust random library producers

As such, an absolute minimal external dependency list is mandatory for this project. Dependencies that do make it in must be highly trusted and/or only touch non-critical components.

See the Development Log for ongoing discussion on the development and strategy of the framework.

Documentation Contents

Library Documentation

Code Dependencies

Core dependencies:

  • gRPC
    • Nexus of RPC applications

Non-critical dependencies:

  • YAML C++:
    • Reading application config files
    • Loading routes into a MappedRouter (optional)
  • CPP Redis:
    • For Redis session support
  • GTest:
    • Running test suites

DBAL Requirements:

  • Cassandra: Drivers are required on the OS; see the prerequisites in the building documentation
  • BigTable: Google Cloud APIs are included as a project dependency

About

A C++ micro-services framework with gRPC, FastCGI and templating

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages