开发者社区> 问答> 正文

Jfinal能异步吗? 400 请求报错 

您好,大神们。我是jfinal的用户,有个这样的需求,就是用http请求到controller ,然后controller去发送tcp请求另外的服务器拿消息,这个过程中tcp是异步的,但是http是不等待tcp返回消息就要返回。能让http等到以后再返回吗?怎么实现啊,框架有这个功能吗?

展开
收起
kun坤 2020-05-29 09:51:50 567 0
1 条回答
写回答
取消 提交回答
  • 听起来像是个服务器推送消息的功能######可以这么想啊。###### controller调用TCP的同时锁住当前线程,TCP返回后解锁当前线程,不要忘记处理超时。
    整个过程会很麻烦,建议写成公共Service,加锁和解锁在Service中完成。 ######回复 @bBugyang : 就是阻塞线程######锁是用什么锁啊。让线程睡眠?还是。。。###### 我觉得你和前端的ajax整合在一起更好。
    不过还是要看你的具体需求。
    我们对这样的数据都走AJAX ######回复 @bBugyang : 你的正常流程还继续走。 有异步要处理的数据。 你放到一个单独的方法里。ajax去请求你的特殊长时间方法。 ajax本身就是异步处理。你就可以耐心的去等待数据显示了。######技术有限啊。。。######数据请求到controller 再请求tcp 直接开个线程 复杂点中间加个队列做缓冲######是直接开个线程去请求tcp吗?~######用阻塞式不就好了?######什么意思呢?。###### 感觉这个问题跟JFinal无关呢~ 
    可以到其他节点问问看。同关注答案~ ######对,我也觉得和jfinal无关了。。因为之前考虑是jfinal封装了servlet等。。servlet3.0是提供异步的,不知道封装了没有,所以会这么问。######确实无关######上代码吧骚年######写个后台线程,定期通过tcp从另外一台服务器拿回消息,然后放在数据库里,jfinal访问是就直接从数据库里拿了。######google java Exchanger######Servlet 3支持async servlet,至于JFinal支不支持说不清楚。

    2020-05-29 11:37:46
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Java Spring Boot开发实战系列课程【第15讲】:Spring Boot 2.0 API与Spring REST Docs实战 立即下载
Java Spring Boot开发实战系列课程【第7讲】:Spring Boot 2.0安全机制与MVC身份验证实战(Java面试题) 立即下载
杜万-Java reactive programming - Reactor 3 and Spring WebFlux 立即下载