Seastar - High performance server-side application framework

  •        468

SeaStar is an event-driven framework allowing you to write non-blocking, asynchronous code in a relatively straightforward manner. It is based on futures. Seastar is the first framework to bring together a set of extreme architectural innovations, including Shared-nothing design, High-performance networking, Futures and promises, Message passing etc.

http://www.seastar-project.org/
https://github.com/cloudius-systems/seastar

Tags
Implementation
License
Platform

   




Related Projects

Rusty - Light-weight, user-space, event-driven and highly-scalable TCP/IP stack

  •    C++

Rusty is a light-weight, user-space, event-driven and highly-scalable TCP/IP stack. It has been developed to run on a EZChip TILE-Gx36 processor. Rusty is a light-weight, user-space, event-driven and highly-scalable TCP/IP stack. It has been developed to run on a EZChip TILE-Gx36 processor. Rusty takes full control of cores it runs on.

mTCP - A Highly Scalable User-level TCP Stack for Multicore Systems

  •    C

mTCP is a high-performance user-level TCP stack for multicore systems. Scaling the performance of short TCP connections is fundamentally challenging due to inefficiencies in the kernel. mTCP addresses these inefficiencies from the ground up - from packet I/O and TCP connection management all the way to the application interface. It translates expensive system calls to shared memory access between two threads within the same CPU core.

smoltcp - a smol tcp/ip stack

  •    Rust

smoltcp is a standalone, event-driven TCP/IP stack that is designed for bare-metal, real-time systems. Its design goals are simplicity and robustness. Its design anti-goals include complicated compile-time computations, such as macro or type tricks, even at cost of performance degradation. smoltcp does not need heap allocation at all, is extensively documented, and compiles on stable Rust 1.25 and later.

uC/IP - TCP/IP for microcontrollers

  •    C

uC/IP is a smallish TCP/IP protocol stack developed in ANSI C for microcontrollers and embedded systems.

haproxy-aws - Documentation on building a HTTPS stack in AWS with HAProxy

  •    Shell

This configuration uses an Elastic Load Balancer in TCP mode, with PROXY protocol enabled. The PROXY protocol adds a string at the beginning of the TCP payload that is passed to the backend. This string contains the IP of the client that connected to the ELB, which allows HAProxy to feed its internal state with this information, and act as if it had a direct TCP connection to the client. First, we need to create an ELB, and enable a TCP listener on port 443 that supports the PROXY protocol. The ELB will not decipher the SSL, but instead pass the entire TCP payload down to Haproxy.


Mtcp - TCP/IP and applications for DOS systems

  •    C

mTCP is a TCP/IP stack and applications designed to run well on older x86 personal computers running DOS operating systems. Features include stable/robust code and high performance even on the slowest machines. Current applications include an IRC client (IRCjr), an FTP client, a Telnet client, Netcat, Ping, and SNTP client, a DHCP client, HtGet, and an FTP server.

JAXL

  •    PHP

Jaxl is an asynchronous, non-blocking I/O, event based PHP library for writing custom TCP/IP client and server implementations. From it's previous versions, library inherits a full blown stable support for XMPP protocol stack. In v3.0, support for HTTP protocol stack was also added.

FNET - Embedded TCP/IP Stack

  •    C

The FNET TCP/IP stack is a free, open source, dual TCP/IPv4 and IPv6 Stack for building an embedded communication software on 32bit MCUs.

Netty - Event-driven Asynchronous Network Application Framework

  •    Java

Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

f-stack - F-Stack is an user space network development kit with high performance based on DPDK, FreeBSD TCP/IP stack and coroutine API

  •    C

With the rapid development of Network Interface Cards the poor performance of data packet processing with the Linux kernel has become the bottleneck in modern network systems. Yet, the increasing demands of the Internet's growth demand a higher performant network processing solution. Kernel bypass has emerged to catch more and more attention. There are various similar technologies such as: DPDK, NETMAP and PF_RING. The main idea of kernel bypass is that Linux is only used to deal with control flow; all data streams are processed in user space. Therefore, kernel bypass can avoid performance bottlenecks caused by kernel packet copying, thread scheduling, system calls, and interrupts. Furthermore, kernel bypass can achieve higher performance with multi-optimizing methods. Within various techniques, DPDK has been widely used because of it's more thorough isolation from kernel scheduling and active community support. To deal with the increasingly severe DDoS attacks the authorized DNS server of Tencent Cloud DNSPod switched from Gigabit Ethernet to 10-Gigabit at the end of 2012. We faced several options: one is to continue to use the original network stack in the Linux kernel, another is to use kernel bypass techniques. After several rounds of investigation; we finally chose to develop our next generation of DNS server based on DPDK. The reason is DPDK provides ultra-high performance and can be seamlessly extended to 40G, or even 100G NIC, in the future.

Apache MINA - A network application framework

  •    Java

Apache MINA is a network application framework which helps users develop high performance and high scalability network applications easily. It provides an abstract, event-driven, asynchronous API over various transports such as TCP/IP and UDP/IP via Java NIO.

mIP - A C# Managed TCP/IP Stack for .NET Micro Framework

  •    

A fully managed TCP/IP stack for .NET MicroFramework with the primary purpose of enabling web servers. Local Name Resolution for Windows and iOS is automatic!

RTL-lwIP

  •    C

RTL-lwIP is the porting of the lwIP TCP/IP stack to RTLinux-GPL. It allows the RT-Tasks to use a socket-like API to send and receive TCP/UDP messages through an Ethernet network. Two Ethernet cards are supported: - 3Com905C-X - Realtek8139

mtcp - mTCP: A Highly Scalable User-level TCP Stack for Multicore Systems

  •    C

mTCP is a highly scalable user-level TCP stack for multicore systems. mTCP source code is distributed under the Modified BSD License. For more detail, please refer to the LICENSE. The license term of io_engine driver and ported applications may differ from the mTCP’s. We require the following libraries to run mTCP.

Workerman - An asynchronous event driven PHP framework for easily building fast, scalable network applications

  •    PHP

Workerman is an asynchronous event driven PHP framework with high performance for easily building fast, scalable network applications. Supports HTTP, Websocket, SSL and other custom protocols. Supports libevent, HHVM , ReactPHP.

TCP/IP Communication Framework

  •    DotNet

TCP/IP Communication Framework (TCP/IP CF) is a library that wraps the .NET Socket class and defines several classes for developing communication applications..

JustLog - JustLog brings logging on iOS to the next level

  •    Swift

JustLog takes logging on iOS to the next level. It supports console, file and remote Logstash logging via TCP socket with no effort. Support for logz.io available. At Just Eat, logging and monitoring are fundamental parts of our job as engineers. Whether you are a back-end engineer or a front-end one, you'll often find yourself in the situation where understanding how your software behaves in production is important, if not critical. The ELK stack for real-time logging has gained great adoption over recent years, mainly in the back-end world where multiple microservices often interact with each other.

socket - Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP

  •    PHP

Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP. The socket library provides re-usable interfaces for a socket-layer server and client based on the EventLoop and Stream components. Its server component allows you to build networking servers that accept incoming connections from networking clients (such as an HTTP server). Its client component allows you to build networking clients that establish outgoing connections to networking servers (such as an HTTP or database client). This library provides async, streaming means for all of this, so you can handle multiple concurrent connections without blocking.

sACNView

  •    Delphi

sACNView is a tool for viewing and transmitting the ESTA/ANSI Streaming DMX Lighting Control Protocol, which is a TCP/IP based protocol used in theatrical, architectural and event lighting systems