Comments (6)
这个有人修么,没人修的话我来?正好最近没事干
from sofa-rpc.
Agree! How about submit a pr to fix it @zonghaishang
from sofa-rpc.
在多笔请求合并时,bolt 层会共用同一个RemotingContext
,到rpc侧处理不同的请求时,根据bizCtx.isRequestTimeout()
这种判断方式去判定超时不一定准确。如果某个接口设置比较小的超时时间,和其他请求合并处理时,会造成预期之外的超时问题。
@seeflood 修这个问题的时候,一并看下怎么处理这块吧。
from sofa-rpc.
在多笔请求合并时和这个超时检查应该是冲突的
可以做一个修复逻辑,即如果是多笔请求合并,让超时检查失效
另看代码里还留了一个口子,com.alipay.remoting.codec.AbstractBatchDecoder#setSingleDecode 控制只返回一个msg,可以一起评估下怎么来提供这个能力比较好
from sofa-rpc.
我不太了解“多笔请求合并”场景的已有逻辑,我确认下:
看上面的讨论,意思是期望改成啥样:合并请求场景,不做超时检查?
不做超时检查的话有点奇怪啊,那业务处理耗时太长咋办……
具体修改方法:是不是在 bolt 里,判断 msg 是 List后,直接 setTimeout(0) 就行? 设置为0后,后面的超时检查就失效了(永远不会超时)
或者哪位老哥明天语音聊下?
from sofa-rpc.
@seeflood 这个并发问题在 bolt 1.6.8 版本修复了,sofastack/sofa-bolt#347
from sofa-rpc.
Related Issues (20)
- Framework Design Optimization Proposal HOT 7
- com.alipay.remoting.DefaultConnectionManager.scan throws NPE HOT 7
- SOFARPC 支持 Stream 流式处理方式 HOT 7
- SOFARPC 支持 Fury 序列化方式 HOT 4
- Provide experimental io_uring support HOT 4
- 什么情况下DefaultConnectionManager.getConnectionPoolAndCreateIfAbsent方法会阻塞? HOT 3
- Support custom exception retry HOT 1
- ExtensionLoader override logic optimization HOT 2
- Tracer Statistics Optimization HOT 5
- Add theadpool extension HOT 3
- 请问为什么 sofaboot-dependencies 的sofa-rpc-all一直固定在 5.8.3 HOT 2
- RPC-020020009问题
- The Rest protocol cannot be used in Jakarta EE 10. HOT 1
- Alipay Cloud Devops Codescan run failed HOT 1
- Nacos+SofaRpc 更新订阅端监听器 并发疑问 HOT 3
- Javassist does not handle interface duplication method correctly HOT 3
- 【Proposal】支持更丰富的压缩算法方便用户在不同的场景选择 HOT 2
- 项目启动提示:WARN | | io.fury.config.FuryBuilder | Class registration isn't forced, unknown classes can be deserialized. If the environment isn't secure, please enable class registration by `FuryBuilder#requireClassRegistration(true)` or configure ClassChecker by `ClassResolver#setClassChecker` HOT 2
- Nacos 没有获得服务
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 sofa-rpc.