GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - GestaltEngine/userver: The C++ Asynchronous Framework (beta)

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

3,761 Commits
3,761 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
clickhouse
clickhouse
 
 
cmake
cmake
 
 
conan
conan
 
 
core
core
 
 
external-deps
external-deps
 
 
grpc
grpc
 
 
mongo
mongo
 
 
mysql
mysql
 
 
postgresql
postgresql
 
 
rabbitmq
rabbitmq
 
 
redis
redis
 
 
samples
samples
 
 
scripts
scripts
 
 
shared
shared
 
 
testsuite
testsuite
 
 
third_party
third_party
 
 
tools
tools
 
 
uboost_coro
uboost_coro
 
 
universal
universal
 
 
.clang-format
.clang-format
 
 
.clang-tidy
.clang-tidy
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
AUTHORS
AUTHORS
 
 
CMakeLists.txt
CMakeLists.txt
 
 
CODEOWNERS
CODEOWNERS
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE
LICENSE
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
SECURITY.md
SECURITY.md
 
 
THIRD_PARTY.md
THIRD_PARTY.md
 
 
conanfile.py
conanfile.py
 
 
docker-compose.yml
docker-compose.yml
 
 
dynamic_config_fallbacks.yaml
dynamic_config_fallbacks.yaml
 
 
pytest.ini
pytest.ini
 
 

Repository files navigation

userver

Service Templates Status
Core CI Docker build
PostgreSQL CI Docker build
gRPC+PostgreSQL CI Docker build

userver is an open source asynchronous framework with a rich set of abstractions for fast and comfortable creation of C++ microservices, services and utilities.

The framework solves the problem of efficient I/O interactions transparently for the developers. Operations that would typically suspend the thread of execution do not suspend it. Instead of that, the thread processes other requests and tasks and returns to the handling of the operation only when it is guaranteed to execute immediately:

std::size_t Ins(storages::postgres::Transaction& tr, std::string_view key) {
  // Asynchronous execution of the SQL query in transaction. Current thread
  // handles other requests while the response from the DB is being received:
  auto res = tr.Execute("INSERT INTO keys VALUES ($1)", key);
  return res.RowsAffected();
}

As a result, with the framework you get straightforward source code, avoid CPU-consuming context switches from OS, efficiently utilize the CPU with a small amount of execution threads.

You can learn more about history and key features of userver from our articles on Medium (English) or Habr (Russian).

Other Features

  • Efficient asynchronous drivers for databases (MongoDB, PostgreSQL, Redis, ClickHouse, ...) and data transfer protocols (HTTP, GRPC, AMQP 0-9-1 (EXPERIMENTAL), TCP, ...), tasks construction and cancellation.
  • Rich set of high-level components for caches, tasks, distributed locking, logging, tracing, statistics, metrics, JSON/YAML/BSON.
  • Functionality to change the service configuration on-the-fly.
  • On-the-fly configurable drivers, options of the deadline propagation, timeouts, congestion-control.
  • Comprehensive set of asynchronous low-level synchronization primitives and OS abstractions.

See the docs for more info.

About

The C++ Asynchronous Framework (beta)

userver.tech

Resources

Readme
License

Contributing

Contributing

Security policy

Security policy
Activity

Stars

0 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.