Giter VIP home page Giter VIP logo

yfs's Introduction

Join the chat at https://gitter.im/chengdedeng/yfs

YFS

architecture

YFS由Gateway和Group组成,Gateway主要负责路由、鉴权、流控、安全等非存储功能,Group主要负责数据存储。 YFS采用对称式架构,没有专门的元数据管理节点,元数据和文件都分散在多个Group(存储单元)。为了实现元数据的分布式一致性和分布式协调,YFS选择了Atomix,由于 Atomix不但实现了Raft,而且提供了非常丰富的高层抽象。基于Raft协议、高可用以及文件的安全等诸多因素,所以Gateway、Group建议至少3个节点。

Group中的Store会实时上报心跳给Gateway,Gateway根据上报的信息实时修改自己的路由策略。为了保证写入的数据安全,YFS认为超半数节点写入完成才算写入成功,如果采用常规的3副本模式,那么至少2个节点写入才会返回成功。 为了应对硬件、软件、运维等多方面的威胁,YFS实现了端到端的CRC保护,能够及时检查和快速恢复异常数据。

环境及编译

  1. JDK8及以上、maven3、文件系统需要支持xattr
  2. mvn package -Dmaven.test.skip=true
  3. yfs-gateway/target/yfs-gateway-.zip和yfs-store/target/yfs-store-.zip就是部署文件

yfs's People

Contributors

chengdedeng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

yfs's Issues

部署后发生 ConnectException 疑问

您好~今天有幸看到您开源的代码,clone下来就行学习
我按照Wiki上介绍将项目打包后,没有修改任何配置并部署到同一台Linux服务器上,这一切都很顺利。当时我发现了访问不了swagger-ui.html页面,同时查看logs日志,发现getway与store均显示ConnectException错误。信息如下:

INFO   | jvm 1    | 2018/12/16 18:09:39 | 2018-12-16 18:09:39 [WARN]-[raft-server-system-partition-1]-[io.atomix.utils.logging.DelegatingLogger.warn(DelegatingLogger.java:230)] RaftServer{system-partition-1}{role=FOLLOWER} - java.net.ConnectException
INFO   | jvm 1    | 2018/12/16 18:09:39 | 2018-12-16 18:09:39 [WARN]-[raft-server-system-partition-1]-[io.atomix.utils.logging.DelegatingLogger.warn(DelegatingLogger.java:230)] RaftServer{system-partition-1}{role=FOLLOWER} - java.net.ConnectException
INFO   | jvm 1    | 2018/12/16 18:09:43 | 2018-12-16 18:09:43 [WARN]-[raft-server-system-partition-1]-[io.atomix.utils.logging.DelegatingLogger.warn(DelegatingLogger.java:230)] RaftServer{system-partition-1}{role=FOLLOWER} - java.net.ConnectException
INFO   | jvm 1    | 2018/12/16 18:09:43 | 2018-12-16 18:09:43 [WARN]-[raft-server-system-partition-1]-[io.atomix.utils.logging.DelegatingLogger.warn(DelegatingLogger.java:230)] RaftServer{system-partition-1}{role=FOLLOWER} - java.net.ConnectException

是否是我需要修改某些配置文件?我将getway与store部署于同一台机器上。
望解答~~~

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.