Git Product home page Git Product logo

lu-rpc's Introduction

开发者须知

开发者在修改、扩展框架时,需要阅读开发规范:

  1. 框架设计原则(梁飞)
  2. 汇总梁飞博客设计文章
  3. 框架设计上的十点基本常识
  4. Java-并发编程常识-by-梁飞

关于修改配置:

  1. 配置设计

Lu-Rpc

Lu-Rpc 是个专为学习者准备的 RPC 框架, 初始架构非常简单, 可供初学者扩展和学习.

Lu 可以认为是中文世界的撸, 即撸 Rpc--- 造个 Rpc 轮子.

Lu-Rpc 架构图如下:

Lu-Rpc 的领域模型设计借鉴 Dubbo, 服务域没有明显的界限. 核心域就是 Invoker, 非常合适作为核心领域模型的接口.

会话域可以是Request,也可以是 Invocation. 这个问题不大.

快速开始

进入 example 模块

先启动 ServerTest, 再启动 ClientTest.

待开发功能

  1. 自研基于 Raft 协议的注册中心(已开发结束,地址: https://github.com/stateIs0/lu-raft)
  2. Lu-Service-mesh
  3. 负载均衡
  4. 异常处理
  5. 异步调用,feature 调用。oneway 调用
  6. 连接管理,心跳管理
  7. 服务监控
  8. 服务优雅下线
  9. 无缝支持 SpringBoot
  10. 服务故障转移
  11. 服务链路追踪
  12. 支持分布式配置中心(自研或使用第三方)
  13. 自研网络通信框架。定义自己的 RPC 协议。
  14. 支持零拷贝序列化。
  15. 使用字节码增强,减少反射调用开销。
  16. 增加扩展点机制。
  17. 熔断(已开发结束)
  18. 限流(已开发结束)

欢迎提交 PR,issue。

本人微信:

image

lu-rpc's People

Contributors

stateis0 avatar

Watchers

James Cloos 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.