This document is used for contributors to have a better understanding of project's progress.
For Dragonfly
, the following versions are tentatively defined as project milestones.
The following three versions are being planned currently:
This version will focus on to improved the performance and stability of Dragonfly
. Including:
We will try to finish it before October 31, 2019.
Dragonfly
needs a Golang SDK which is stored in https://github.com/dragonflyoss/Dragonfly/tree/master/client. And then we can achieve the following goals:
Dragonfly
can take advantages of this SDK by integrating itDragonfly
.Related issue: #348
As for now, we can specify multiple supenodes
for dfclient at the same time. However, supernode
is not aware of each other.
When one of the supernode server
is unavailable, dfclient will try to register to the one of the remained supernodes
.
The supernode
registered will download the file from source server, reschedule pieces and re-build a P2P network because it lacks the information about the task and the peer node which will cost a lot of time.
So we should make multiple supernodes
be aware of each other.
Related issue: #232
Both dfdaemon
and dfget
are meant for the client and packaged together into dfclient.
So we can merge them into one single command to make the Dragonfly
look simpler and easier to be deployed.
Related issue: #806
Now, dfget
talks to supernode
to discover peers information and publish its own status.
It works well, however, the user has to maintain a supernode
server and supernode
will become the bottleneck of the cluster.
So we can use a new approach where dfget
can discover the same information without talking to supernode
and
all the clients can form a gossip cluster, where they can fire and listen for events.
Related PR: #594
This version will focus on enhancing the Dragonfly's features to make it more adoptive with cloud env. Including:
We will try to finish it before December 30, 2019.
As a cloud native project, we should do more work to support deploy the Dragonfly
on the kubernets platform. Including but not limited to the following list:
supernode
using Helm in Kubernetes to simplify the complexity of scaling SuperNodes in Kubernetes.supernode
cluster using Operator.dfget & dfdaemon
using DaemonSet in Kubernetes.Related issue: #346
With the rise of ARM servers, x86 servers will not be the only choice. However, the images of the two computing frameworks are incompatible for one application. So the user will have to maintain the different versions for the same image which will bring challenges to management.
Related issue: #775
For better to use Dragonfly
, we plan to provide more operation and maintenance tools to make it easy, including:
Dragonfly
clusters.Dragonfly
.This is a stable version in GA stage. And we will focus on making Dragonfly
support more scenarios. Including:
This document give us a trunk direction, however it's not perfect, we may adjust the plan appropriately according to the urgency of demand.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。