MCPcopy Index your code
hub / github.com/baidu/starlight

github.com/baidu/starlight @starlight-v2022.2.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release starlight-v2022.2.0 ↗ · + Follow
3,184 symbols 10,587 edges 409 files 710 documented · 22%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

GitHub license GitHub stars GitHub issues Codecov branch

GroupId ArtifactId Snapshot Version Stable Version
com.baidu.cloud starlight-all Sonatype Nexus (Snapshots) Maven Central
com.baidu.cloud spring-cloud-starter-baidu-starlight Sonatype Nexus (Snapshots) Maven Central

Starlight: Lightweight Java RPC Framework

Starlight 是一套面向云原生的微服务通信框架,兼容Spring生态,基于此可快速构建高效、稳定、可控、可观测的微服务应用,获得研发效率提升、业务稳定性增强等舒适体验。 核心特性如下: * 多种协议支持:Starlight单端口支持brpc、Spring MVC REST协议,提供超丰富的使用场景 * 高性能远程通信:Starlight基于多路复用的NIO框架封装底层通信能力,提供高性能高并发网络通信能力 * 易于使用:无需处理protobuf编译过程,通过原生Java接口和POJO对象加上类级别的注解,类似Java RMI和Spring MVC使用体验,即可实现brpc二进制协议的Server和Client;支持无损升级、异常实例摘除;规范化的日志可以秒级定位超时问题、序列化失败问题

详细使用和设计文档参见Github Wiki

JDK Requirements

minimum JDK 8

License

baidu/starlight is licensed under the Apache License 2.0

微信交流群

添加管理员olivaw2077帮忙加群,备注starlight

Extension points exported contracts — how you extend this code

EchoService (Interface)
Created by liuruisen on 2020/3/26. [6 implementers]
spring-cloud-starter-baidu-starlight/src/test/java/com/baidu/cloud/starlight/springcloud/server/service/EchoService.java
UserService (Interface)
Created by liuruisen on 2020/3/6. [6 implementers]
starlight/starlight-api/src/test/java/com/baidu/cloud/starlight/api/service/UserService.java
UserService (Interface)
Created by liuruisen on 2020/3/6. [6 implementers]
starlight/starlight-core/src/test/java/com/baidu/cloud/starlight/core/integrate/service/UserService.java
UserRestService (Interface)
Starlight Rest 风格支持 @Date 2022/9/28 21:16 @Created by liuruisen [6 implementers]
examples/spring-boot-examples/springboot-demo-consumer/src/main/java/com/baidu/cloud/demo/consumer/service/UserRestService.java
UserService (Interface)
默认情况无需增加SpringMVC注解, 服务端对外提供Rest服务时才需要添加SpringMVC注解 [8 implementers]
examples/demo-api/src/main/java/com/baidu/cloud/demo/api/UserService.java
UserRestService (Interface)
Starlight Rest 风格支持 @Date 2022/9/28 21:16 @Created by liuruisen [6 implementers]
examples/spring-cloud-examples/springcloud-demo-consumer/src/main/java/com/baidu/cloud/demo/consumer/service/UserRestService.java
RestService (Interface)
Created by liuruisen on 2020/7/28. [2 implementers]
starlight/starlight-protocol/starlight-protocol-http/src/test/java/com/baidu/cloud/starlight/protocol/http/springrest/RestService.java
StarlightServerListFilter (Interface)
Ribbon service list filter defined by Starlight. Support filtering server list peer request, pay attention to the time-c [3 …
spring-cloud-starter-baidu-starlight/src/main/java/com/baidu/cloud/starlight/springcloud/client/ribbon/StarlightServerListFilter.java

Core symbols most depended-on inside this repo

get
called by 419
starlight/starlight-protocol/starlight-protocol-http/src/test/java/com/baidu/cloud/starlight/protocol/http/springrest/RestService.java
put
called by 288
starlight/starlight-protocol/starlight-protocol-http/src/test/java/com/baidu/cloud/starlight/protocol/http/springrest/RestService.java
getAttachmentKv
called by 128
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/model/MsgBase.java
getParameter
called by 112
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/common/URI.java
valueOf
called by 95
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/common/URI.java
getMessage
called by 91
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/heartbeat/Heartbeat.java
isEmpty
called by 84
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/utils/StringUtils.java
getCode
called by 83
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/exception/RpcException.java

Shape

Method 2,748
Class 375
Interface 53
Enum 8

Languages

Java100%

Modules by API surface

starlight/starlight-protocol/starlight-protocol-http/src/main/java/com/baidu/cloud/starlight/protocol/http/springrest/NettyServletRequestAdaptor.java73 symbols
starlight/starlight-protocol/starlight-protocol-http/src/test/java/com/baidu/cloud/starlight/protocol/http/springrest/NettyServletRequestAdaptorTest.java67 symbols
spring-cloud-starter-baidu-starlight/src/main/java/com/baidu/cloud/starlight/springcloud/client/properties/ClientConfig.java60 symbols
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/common/URI.java57 symbols
starlight/starlight-protocol/starlight-protocol-http/src/main/java/com/baidu/cloud/starlight/protocol/http/springrest/NettyServletResponseAdaptor.java41 symbols
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/rpc/config/TransportConfig.java41 symbols
spring-cloud-starter-baidu-starlight/src/main/java/com/baidu/cloud/starlight/springcloud/server/properties/StarlightServerProperties.java41 symbols
spring-cloud-starter-baidu-starlight/src/main/java/com/baidu/cloud/starlight/springcloud/client/properties/StarlightClientProperties.java39 symbols
starlight/starlight-api/src/main/java/com/baidu/cloud/starlight/api/transport/buffer/DynamicCompositeByteBuf.java35 symbols
starlight/starlight-serialization/src/test/java/com/baidu/cloud/starlight/serialization/serializer/model/User.java32 symbols
starlight/starlight-protocol/starlight-protocol-http/src/test/java/com/baidu/cloud/starlight/protocol/http/springrest/NettyServletResponseAdaptorTest.java32 symbols
examples/demo-api/src/main/java/com/baidu/cloud/demo/api/model/User.java29 symbols

For agents

$ claude mcp add starlight \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page