Giter Club home page Giter Club logo

stardust's Introduction

#星尘 Stardust 星尘,轻量级服务框架!
设计理念: 简单,易于维护扩展!
远程方法调用,服务自动注册和发现,负载均衡,动态伸缩,故障转移,性能监控。
自认性能还过得去,千万级吞吐率微秒级延迟,因而不支持限流和降级。
极简设计: 客户端作为组件集成到业务应用,连接后登录,有状态长连接,上报所提供的服务,定时拉取所需要消费的服务列表。调用远程方法时直接从服务列表取得服务提供者地址,并建立长连接。

设计概要

提供者P向星尘S注册自己拥有的10个服务接口,消费者C也登入星尘S,得到访问令牌T,查找到某个接口刚好是P提供,于是得到了P的服务地址,然后C直连P,并使用访问令牌T表明身份

提供者->星尘: Key登录
note over 星尘: key/secret
提供者-->>星尘: 注册服务

消费者->星尘: Key登录
星尘-->消费者: 访问令牌Token
note left of 消费者: 向提供者验明身份

消费者->星尘: 查询服务
星尘-->消费者: 服务所在提供者列表

消费者->提供者: Token令牌登录
提供者-->消费者: 登录成功

提供者-->>星尘: 汇报状态

消费者->提供者: 请求服务
提供者-->消费者: 响应数据

SericeMesh架构

Sidecar设计模式正在收到越来越多的关注和采用。作为Service Mesh的重要要素,Sidecar模式对于构建高度高度可伸缩、有弹性、安全且可便于监控的微服务架构系统至关重要。它降低了与微服务架构相关的复杂性,并提供了负载平衡、服务发现、流量管理、电路中断、遥测、故障注入等功能特性。

消费者->本机代理: 初始化
本机代理->星尘: Key登录
星尘-->本机代理: 访问令牌Token

本机代理->星尘: 查询服务
星尘-->本机代理: 服务所在提供者列表

本机代理->提供者: Token令牌登录
提供者-->本机代理: 登录成功

本机代理-->>星尘: 汇报状态

消费者->本机代理: 请求服务
本机代理->提供者: 请求服务
提供者-->本机代理: 响应数据
本机代理-->消费者: 响应数据

新生命开发团队

网站:http://www.NewLifeX.com
QQ群:1600800

项目位置

http://git.newlifex.com/NewLife/Stardust

stardust's People

Contributors

nnhy avatar

Watchers

 avatar  avatar

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.