forked from microsoft/rDSN
-
Notifications
You must be signed in to change notification settings - Fork 11
/
Release Note.txt
33 lines (17 loc) · 2.48 KB
/
Release Note.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Robust Distributed System Nucleus (rDSN) is an open framework for quickly building robust and high performance distributed systems. Besides Programmability and High-Performance that many other frameworks focus on, rDSN provides a holistic solution to also systematically and (semi-)transparently address topics important for robustness that occur throughout the whole lifetime of a distributed system's development and operation, such as test, debug, deployment, how to scale-up/out, and how to achieve high-availability. The system has been used and validated in production inside Microsoft. The current release is in C++ and can run on Ubuntu, OS X, and Windows.
Release notes @ 4/15/2015, Version 0.9
- Languages and platforms
. C++
. Ubuntu14.04/Windows 8.1
- What's New
. src/core: the kernel of rDSN, which defines the Service API and the Tool API, and translates the former to the latter.
. Service API: RPC, thread/tasking, synchronizing (lock, semaphore, etc.), asynchronous file IO, and environment (time and random), and the service_app abstraction.
. Tool API: component abstractions for network, task queue, task worker, lock, rw_lock, semaphore, aio_provider, env_provier, message_parser, perf_counter, logging_provider, and the toollet/tool_app abstractions.
. src/dev: syntactic sugar for application development, including the serverlet abstraction and the typed interface for RPC/task calls.
. src/tools/common: default component provider instances for locks, logger, aio_provider, network (adapted from boost asio), task queue, etc. It also implements several simple tools such as tracer, profiler, and fault injector.
. src/tools/simulator: simulation tool implementation which virtualizes time and random, and enables cooperative scheduling of the tasks. Together with the fault injector tool in rDSN.tools.common, it supports random tests with faults, and deterministic replay to reproduce the bugs when exposed.
. src/dist/failure_detector: a perfect failure detector implementation based on rDSN's programming model, which also serves as a common distributed system component.
. src/apps/echo: a simple echo service as the application example.
. src/apps/replication: a replication framework based on rDSN's programming model, which also servers as a common distributed system component.
. codegen: code generator tool to leverage Apache Thrift/Google Protocol Buffer to generate the application code based on a given IDL file.
. codegen/libs: code generation templates.