Displaying 1 to 19 from 19 results

emitter - High performance, distributed and low latency publish-subscribe platform.

  •    Go

Emitter is a free open source real-time messaging service that connects all devices. This publish-subscribe messaging API is built for speed and security. Emitter is a real-time communication service for connecting online devices. Infrastructure and APIs for IoT, gaming, apps and real-time web. At its core, emitter.io is a distributed, scalable and fault-tolerant publish-subscribe messaging platform based on MQTT protocol and featuring message storage.

streaming-benchmarks - Benchmarks for Low Latency (Streaming) solutions including Apache Storm, Apache Spark, Apache Flink,

  •    Java

Code licensed under the Apache 2.0 license. See LICENSE file for terms.At Yahoo we have adopted Apache Storm as our stream processing platform of choice. But that was in 2012 and the landscape has changed significantly since then. Because of this we really want to know what Storm is good at, where it needs to be improved compared to other systems, and what its limitations are compared to other tools so we can recommend the best tool for the job to our customers. To do this we started to look for stream processing benchmarks that we could use to do this evaluation, but all of them ended up lacking in several fundamental areas. Primarily they did not test anything close to a read world use case, so we decided to write a simple one. This is the first round of these tests. The tool here is not polished and only covers three tools and one specific use case. We hope to expand this in the future in terms of the tools tested, the variety of processing tested, and the metrics gathered.




Argus - Time series monitoring and alerting platform.

  •    Java

A pom for all Argus projects. It provides standards for plugin versions, configuration and a number of other things.

SmoothieMap - A gulp of low latency Java HashMap

  •    Java

SmoothieMap is a Map implementation for Java with the lowest memory usage and absence of rehash latency spikes. Under the hood, it is a version of extendible hashing with 48-slot mini segments. This project also includes a proof-of-concept implementation of SwissTable algorithm in Java.

P/Opus (.NET Wrapper for libopus)

  •    DotNet

P/Opus is a .NET library written in C# to wrap around the libopus C API/library to provide a more .NET friendly way of encoding and decoding Opus packets.


SmoothieMap - A gulp of low latency Java

  •    Java

SmoothieMap is a java.util.Map implementation with worst put(k, v) operation latencies more than 100 times smaller than in ordinary hash table implementations like java.util.HashMap.

redeo - High-performance framework for building redis-protocol compatible TCP servers/services

  •    Go

The high-performance Swiss Army Knife for building redis-protocol compatible servers/services. For full documentation and examples, please see the individual packages and the official API documentation: https://godoc.org/github.com/bsm/redeo.

jobber - Jobber is an implementation to use AWS Lambda functions for micro requests with no penalty

  •    Go

For both AWS Lambda and Google cloud functions there are two catches. They have high startup time, near 10ms, and they have minimum 100ms time granularity. It means if I want to serve my http requests that take 12ms, first I will face near 10ms delay just to start the function, then both platforms will charge me for 100ms of time, even though I just needed 12ms. This makes Cloud function not suitable for normal usage.

python-rtmixer - :microphone: Reliable low-latency audio playback and recording with Python :snake:

  •    C

Goal: Reliable low-latency audio playback and recording with Python, using PortAudio via the sounddevice module. The audio callback is implemented in C (and compiled with the help of CFFI) and doesn't invoke the Python interpreter, therefore avoiding waiting for things like garbage collection and the GIL.

Micro-XRCE-DDS-Agent - Micro XRCE-DDS Agent respository

  •    C++

Micro XRCE-DDS Agent acts as a server between DDS Network and Micro XRCE-DDS Clients. Micro XRCE-DDS Agents receive messages containing Operations from Clients. Agents keep track of the Clients and the Micro XRCE-DDS Entities they create. The Agent uses the Entities to interact with DDS Global Data Space on behalf of the Client. The communication between a Micro XRCE-DDS Client and a Micro XRCE-DDS Agent supports two kind transports: UDP or SerialPort. While running Micro XRCE-DDS Agent will attend any received request from your Micro XRCE-DDS Clients. Micro XRCE-DDS Agent answers back with the result of a request each time a request is attended.

Micro-XRCE-DDS-Client - Micro XRCE-DDS Client repository

  •    C

In Micro XRCE-DDS a Micro XRCE-DDS Client can communicate with DDS Network as any other DDS actor could do. Clients can publish and subscribe to data topics in DDS Global Data Space. Micro XRCE-DDS provides you with a C API to create Micro XRCE-DDS Clients. You can access Micro XRCE-DDS documentation online, which is hosted on Read the Docs.

zhe - Lighter-than-air, peer-to-peer, bounded, non-blocking, non-threaded, etc

  •    C

Zeno-He (zhe for short) is a compact implementation of the Zenoh protocol that does not depend on dynamic allocation or threading. Instead, it is a non-blocking implementation that assumes single threaded use with polling, and a system that can be sized at compile time. Zhe can be configured to operate in peer-to-peer mode or to operate as a client that relies on a broker. Targeted configurations vary from a minimal client on an Arduino Uno (an 8-bit CPU with only 2kB of RAM) to a bunch of low-power, high-integrity CPUs running a real-time, distributed control system, and on to dozens of peers running on high-end CPUs and saturating a fast network. Whether it will actually meet all these requirements remains to be seen. Still, so far, so good.