Comments (7)
- 这可以实现一个流控的插件,如果没有贡献者开发,后续我会实现一个
- 其实我觉得微服务网格的场景中,大家使用grpc就好了。 但是也非常欢迎有人贡献
- 第三个可以使用最新的
Oneshot
方法,不需要传入reply
from rpcx.
- 这可以实现一个流控的插件,如果没有贡献者开发,后续我会实现一个
- 其实我觉得微服务网格的场景中,大家使用grpc就好了。 但是也非常欢迎有人贡献
- 第三个可以使用最新的
Oneshot
方法,不需要传入reply
这个流控看起来也不是很简单, 我觉得流控最佳的方案还是消费者告诉生产者降低发送速度。
grpc主要还是背靠大厂,云原生支持得比较好。rpcx协议比较简单,也容易实现.
我们现在有一个需求是这样, rpc客户端发送消息给服务端, 客户端可以异步接收响应。然后服务端可以发送响应,也可以不发送响应。这个希望能够把消息流量属性和业务属性分离开来,一方面是解耦,另一方面是观测,在使用deepflow类似的云原生观测系统的时候,能够使用ebpf来从中进行链路追踪。这就要求,在服务端异步sendmessage回去的时候,需要携带和请求到来时的标识。现在,rpcx的bidistreamclient看起来做不到这件事情.
from rpcx.
- 这可以实现一个流控的插件,如果没有贡献者开发,后续我会实现一个
- 其实我觉得微服务网格的场景中,大家使用grpc就好了。 但是也非常欢迎有人贡献
- 第三个可以使用最新的
Oneshot
方法,不需要传入reply这个流控看起来也不是很简单, 我觉得流控最佳的方案还是消费者告诉生产者降低发送速度。 grpc主要还是背靠大厂,云原生支持得比较好。rpcx协议比较简单,也容易实现. 我们现在有一个需求是这样, rpc客户端发送消息给服务端, 客户端可以异步接收响应。然后服务端可以发送响应,也可以不发送响应。这个希望能够把消息流量属性和业务属性分离开来,一方面是解耦,另一方面是观测,在使用deepflow类似的云原生观测系统的时候,能够使用ebpf来从中进行链路追踪。这就要求,在服务端异步sendmessage回去的时候,需要携带和请求到来时的标识。现在,rpcx的bidistreamclient看起来做不到这件事情.
如果你是这个需要的话,可以传递meta数据:https://github.com/rpcxio/rpcx-examples/blob/master/metadata/client/client.go
from rpcx.
- 这可以实现一个流控的插件,如果没有贡献者开发,后续我会实现一个
- 其实我觉得微服务网格的场景中,大家使用grpc就好了。 但是也非常欢迎有人贡献
- 第三个可以使用最新的
Oneshot
方法,不需要传入reply这个流控看起来也不是很简单, 我觉得流控最佳的方案还是消费者告诉生产者降低发送速度。 grpc主要还是背靠大厂,云原生支持得比较好。rpcx协议比较简单,也容易实现. 我们现在有一个需求是这样, rpc客户端发送消息给服务端, 客户端可以异步接收响应。然后服务端可以发送响应,也可以不发送响应。这个希望能够把消息流量属性和业务属性分离开来,一方面是解耦,另一方面是观测,在使用deepflow类似的云原生观测系统的时候,能够使用ebpf来从中进行链路追踪。这就要求,在服务端异步sendmessage回去的时候,需要携带和请求到来时的标识。现在,rpcx的bidistreamclient看起来做不到这件事情.
如果你是这个需要的话,可以传递meta数据:https://github.com/rpcxio/rpcx-examples/blob/master/metadata/client/client.go
在ebpf获取到rpcx协议里面的metadata然后进行解析.确实可以使用这种形式. 所有疑问已经得到解答
from rpcx.
- 这可以实现一个流控的插件,如果没有贡献者开发,后续我会实现一个
- 其实我觉得微服务网格的场景中,大家使用grpc就好了。 但是也非常欢迎有人贡献
- 第三个可以使用最新的
Oneshot
方法,不需要传入reply这个流控看起来也不是很简单, 我觉得流控最佳的方案还是消费者告诉生产者降低发送速度。 grpc主要还是背靠大厂,云原生支持得比较好。rpcx协议比较简单,也容易实现. 我们现在有一个需求是这样, rpc客户端发送消息给服务端, 客户端可以异步接收响应。然后服务端可以发送响应,也可以不发送响应。这个希望能够把消息流量属性和业务属性分离开来,一方面是解耦,另一方面是观测,在使用deepflow类似的云原生观测系统的时候,能够使用ebpf来从中进行链路追踪。这就要求,在服务端异步sendmessage回去的时候,需要携带和请求到来时的标识。现在,rpcx的bidistreamclient看起来做不到这件事情.
如果你是这个需要的话,可以传递meta数据:https://github.com/rpcxio/rpcx-examples/blob/master/metadata/client/client.go
存在一个很困惑的地方,https://github.com/rpcxio/rpcx-examples/blob/master/metadata/client/client.go,
send方法调用的时候,直接就用conn.write了,没有锁,这让我非常困惑。完全不明白这是什么情况
from rpcx.
- 这可以实现一个流控的插件,如果没有贡献者开发,后续我会实现一个
- 其实我觉得微服务网格的场景中,大家使用grpc就好了。 但是也非常欢迎有人贡献
- 第三个可以使用最新的
Oneshot
方法,不需要传入reply这个流控看起来也不是很简单, 我觉得流控最佳的方案还是消费者告诉生产者降低发送速度。 grpc主要还是背靠大厂,云原生支持得比较好。rpcx协议比较简单,也容易实现. 我们现在有一个需求是这样, rpc客户端发送消息给服务端, 客户端可以异步接收响应。然后服务端可以发送响应,也可以不发送响应。这个希望能够把消息流量属性和业务属性分离开来,一方面是解耦,另一方面是观测,在使用deepflow类似的云原生观测系统的时候,能够使用ebpf来从中进行链路追踪。这就要求,在服务端异步sendmessage回去的时候,需要携带和请求到来时的标识。现在,rpcx的bidistreamclient看起来做不到这件事情.
如果你是这个需要的话,可以传递meta数据:https://github.com/rpcxio/rpcx-examples/blob/master/metadata/client/client.go
存在一个很困惑的地方,https://github.com/rpcxio/rpcx-examples/blob/master/metadata/client/client.go, send方法调用的时候,直接就用conn.write了,没有锁,这让我非常困惑。完全不明白这是什么情况,net.Conn标准接口并不是并发安全调用的啊
from rpcx.
Multiple goroutines may invoke methods on a Conn simultaneously.
https://pkg.go.dev/net#Conn
from rpcx.
Related Issues (20)
- 编码方式为 protocol.SerializeNone时调用异常 HOT 5
- 服务重启后,客户端报 can not found any server HOT 4
- 一致性hash, 想要自定义key HOT 1
- 我这边偶尔出现ERROR: rpcx: client protocol error: unexpected EOF 和客户端缓存有关系吗 HOT 1
- 通过RegisterFunction注册的接口, 不能触发PreCall、PostCall HOT 1
- plugins print all request log HOT 1
- gogo/protobuf已经声明Deprecated了,是否可以考虑其它替代实现? HOT 2
- server状态变更client无法感知 HOT 1
- rpcx 使用默认设置 , 当我的 reply 里面包含一个 []int 切片的时候, 获取reply 始终为空值 HOT 2
- typo: Zookepper
- service 返回error 后 client Call 捕获不到error HOT 2
- 返回没有值的异常 HOT 6
- RPC Service主动抛非strErr错误
- Server error overwritten ref #825
- 文档里面的demo跑不通
- 请问如何保证数据有序性? HOT 4
- 请问作者,如果在其它协程理出现错误,如何让serveConn循环结束,进而让server从activeConn删除此Conn HOT 2
- 官方文檔中的「异步调用 Service 」範例會阻塞 HOT 1
- C或C++怎么实现与rpcx客户端或服务端交互? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rpcx.