Seastar VS drogon

Compare Seastar vs drogon and see what are their differences.

Seastar

High performance server-side application framework (by scylladb)

drogon

Drogon: A C++14/17/20 based HTTP web application framework running on Linux/macOS/Unix/Windows (by drogonframework)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
Seastar drogon
25 18
8,018 10,761
1.6% 1.9%
9.7 8.9
2 days ago about 6 hours ago
C++ C++
Apache License 2.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Seastar

Posts with mentions or reviews of Seastar. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-13.
  • I want to share my latest hobby project, dbeel: A distributed thread-per-core nosql db written in rust
    3 projects | /r/rust | 13 Nov 2023
    I used glommio as the async executor (instead of something like tokio), and it is wonderful. For people wondering whether it's "good enough" or to use C++ and seastar (as I have thought about a lot before starting this project), take the leap of faith, it's fast - both in terms of run time and to code.
  • How much reason is there to be multi-threaded in the k8s environment
    2 projects | /r/scala | 4 Jul 2023
    b) It's proven now e.g Seastar, Glommio that the fastest way to run a multi-threaded application is to have one instance with one thread pinned per CPU core. Then to have fibers/lightweight threads on top handling all of the asynchronous code. Your approach of lots of instances is the slowest so there will be a ton of unnecessary thread context-switching.
  • Are You Sure You Want to Use MMAP in Your Database Management System?
    3 projects | news.ycombinator.com | 2 Jul 2023
    The most common example is DPDK [1]. It's a framework for building bespoke networking stacks that are usable from userspace, without involving the kernel.

    You'll find DPDK mentioned a lot in the networking/HPC/data center literature. An example of a backend framework that uses DPDK is the seastar framework [2]. Also, I recently stumbled upon a paper for efficient RPC networks in data centers [3].

    If you want to learn more, the p99 conference by ScyllaDB has tons of speakers talking about some interesting challenges.

    [1] https://www.dpdk.org/.

    [2] https://github.com/scylladb/seastar

    [3] https://github.com/erpc-io/eRPC

  • Why does Actix-web's handler not require Send?
    3 projects | /r/rust | 18 Jun 2023
    I assume Tokio itself, see e.g monoio or glommio, but also Seastar for C++.
  • What is DPDK library in C and how to learn it?
    1 project | /r/C_Programming | 27 Apr 2023
    https://core.dpdk.org/supported/ lists supported nics. You're best just reading material from the dpdk website for figuring out roughly what it is. It is used for a lot of different goals. For most web C++ stuff it's mainly used because you can avoid round trips of data passing through the kernel and can reference network data without tons of copying. For an example check out the SeaStar framework, https://seastar.io/, which is under the hood of ScyllaDB.
  • How Numberly Replaced Kafka with a Rust-Based ScyllaDB Shard-Aware Application
    1 project | /r/apachekafka | 17 Apr 2023
    As this is a Kafka sub, this may be a good opportunity to mention that Redpanda is based on the same framework (seastar) as Scylla. The idea of sharding work to CPU cores turns out to apply very well to the Kafka data model, too!
  • What are some C++ projects with high quality code that I can read through?
    8 projects | /r/cpp_questions | 16 Jan 2023
    Seastar which is a thread per core runtime written by the Scylla devs thats used in both Redpanda and Scylla as the underlying runtime. https://github.com/scylladb/seastar
  • Abstraction Is Expensive
    1 project | news.ycombinator.com | 7 Dec 2022
    ScyllaDB is, ironically, maybe one of the worst examples the author could have come up with for "abstraction" in the article.

    If folks aren't familiar with their work/internal tech, go check out some of their repos like Seastar. They have some of the most talented systems programmers on the planet writing thin veneers over kernel and hardware API's to squeeze every ounce out of performance.

    https://github.com/scylladb/seastar

    I know it's beside the point, but I just had to share because I thought that was funny

  • Modern JVM Multithreading • Paweł Jurczenko • Devoxx Poland 2021
    3 projects | /r/java | 28 Oct 2022
    I’ve seen frameworks for c++ (https://seastar.io/) and rust (https://github.com/actix/actix) which support what you’re describing out of the box.
  • Who is using C++ for web development?
    12 projects | /r/cpp | 4 Oct 2022
    If you're interested in scaling and asynchronous programming in c++ I highly recommend you investigate the SeaStar application framework. You wouldn't build a web service with SeaStar, rather you would build the infrastructure that you would use to build the web service on top of. https://github.com/scylladb/seastar

drogon

Posts with mentions or reviews of drogon. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-06.
  • Experience using crow as web server
    11 projects | /r/cpp | 6 Nov 2023
    I looked at oatpp and drogon, which are both great, but feel too high-level for my purposes. I tried drogon and got something working, but it feels like too much for my requirements, as in particular I'd like to slot in my choice of Json and message-body handling. C.f. the simple approach in Crow, which I easily understand and build on.
  • Dobri projekti na Githubu za ucenje
    7 projects | /r/CroIT | 26 Jun 2023
    drogonframework/drogon i drogonframework/trantor
  • Ask HN: Easiest and cheapest full-stack frameworks that you love?
    9 projects | news.ycombinator.com | 9 Feb 2023
    talking about C++, there are drogon framework: https://github.com/drogonframework/drogon

    not bells and whistles like on Wt as there are no integrated widgets. But have c++ based template (for HTML) engine and other integrated parts what you expect from framework (routing, controllers, db, authentication handling and so on).

    and boasts high performance design

  • Lies we tell ourselves to keep using Golang
    11 projects | /r/programming | 30 Dec 2022
    C++ - my favorite language, and, with modern revisions, extremely expressive and readable. There isn't a web server in the standard library, but there are a number of solid open-source choices (e.g., Drogon).
  • Cppfront, Herb Sutter's proposal for a new C++ syntax
    13 projects | news.ycombinator.com | 17 Sep 2022
    > * Let’s not pretend all conceivable applications are, or should be, written in C++.*

    This is a discussion on C++.

    > People mostly stopped using C++ to develop web servers which handle web requests, because they moved to Java, C#, PHP, Ruby, Python, etc.

    I'm not sure you understood what I said, or thought things through.

    By the way, the top performing web framework in the Tech Empower benchmark is a C++ framework which uses C++'s standard smart pointers.

    https://github.com/drogonframework/drogon

    Also, one of the most popular web frameworks for Python started off as an April Fools joke. I'm not sure what's your point.

    Lastly, the main reason why C++ ceased to be the most popular choice in some domains was because it was during a very long time the most popular choice in some domains, and still remains one of the most popular choices. Some of the reasons why C++ dropped in popularity is the fact that some vendors decided to roll their own alternatives while removing support for C++. Take for instance Microsoft, which was once responsible for making C++ the only tool in town for professional software development. Since it started pushing C# for all sorts of web applications, multi-platform applications, and even desktop applications, and also pushing the adoption of those technologies as a basic requirement to distribute apps in its app store, developers can only use technologies that exist. But does that say anything about the merits of C++?

  • What library/framework to use for writing a Web server?
    3 projects | /r/cpp_questions | 24 Aug 2022
    https://github.com/drogonframework/drogon has the best performance afaik
  • Hmm
    13 projects | /r/ProgrammerHumor | 11 Aug 2022
    Drogon is a framework for doing web backend in c++ but it is nowhere near on the level of something like Django in terms of ergonomics. In terms of Rust, Rocket is trying to be the easy to use framework with low boilerplate.
  • Programming languages endorsed for server-side use at Meta
    14 projects | news.ycombinator.com | 27 Jul 2022
    > How would one go about building a rest service in C++?

    I'd use https://github.com/drogonframework/drogon if the app needs to be pure C++ or Cutelyst (https://cutelyst.org/) if it's a Qt app which needs to expose an http server

  • Built my first project with rust!
    3 projects | /r/rust | 22 Jul 2022
    About the project - I was trying to find the perfect reliable and performant rust's web framework to use for one of my personal project, and since I've been using Drogon/uWebSockets previously, I wanted to choose the best one to replace it. So I decided to create a benchmark system that is fully automated.
  • Which library canI use for rendering html??
    2 projects | /r/learnprogramming | 29 Jun 2022

What are some alternatives?

When comparing Seastar and drogon you can also consider the following projects:

Folly - An open-source C++ library developed and used at Facebook.

Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11

glommio - Glommio is a thread-per-core crate that makes writing highly parallel asynchronous applications in a thread-per-core architecture easier for rustaceans.

Oat++ - 🌱Light and powerful C++ web framework for highly scalable and resource-efficient web application. It's zero-dependency and easy-portable.

Boost.Asio - Asio C++ Library

POCO - The POCO C++ Libraries are powerful cross-platform C++ libraries for building network- and internet-based applications that run on desktop, server, mobile, IoT, and embedded systems.

Boost - Super-project for modularized Boost

cppcoro - A library of C++ coroutine abstractions for the coroutines TS

ffead-cpp - Framework for Enterprise Application Development in c++, HTTP1/HTTP2/HTTP3 compliant, Supports multiple server backends

trantor - a non-blocking I/O tcp network lib based on c++14/17

Qt - Qt Base (Core, Gui, Widgets, Network, ...)

restclient-cpp - C++ client for making HTTP/REST requests