【问题标题】:¿Restful Service opening socket connection and reuses the same connection in all requests?¿Restful Service 打开套接字连接并在所有请求中重用相同的连接?
【发布时间】:2015-09-19 10:41:04
【问题描述】:

我连接到一个事务服务器,它是一个 Socket 服务器。根据要求,要求只有一个与套接字的连接,并且在同一连接中发送所有事务。 我正在使用 Java EE、Spring、Jboss 服务器。 这个想法是创建一个restful服务,以便其他应用程序连接和发送事务。 是否可以打开客户端套接字连接,并在同一连接中打开以发送和接收客户端 - 服务器消息?

我不知道该怎么做,因为每次调用服务 rest 时,应用程序都会尝试创建一个到服务器的新套接字连接,并且不会重用已经打开的连接。

【问题讨论】:

    标签: spring sockets rest jakarta-ee tcp


    【解决方案1】:

    如果您只想打开一个套接字并保持打开状态,您可以使用 Spring 4.0 websockets http://docs.spring.io/spring/docs/current/spring-framework-reference/html/websocket.html

    使用 websocket,您可以在客户端/服务器之间创建一个 TCP/IP 连接,并在整个过程中保持打开状态,使其成为双向事务,并被重复用于您想要的所有事务。

    【讨论】:

    • 谢谢,但是socket服务器是第三方的,所以我不能使用websockets。
    • 然后你可以使用 Spring 的 DeferredResult,这个 Future 对象将在请求完成后挂起,然后直到 deferredResult.isDone() 你阻止其余的事务使其顺序。 docs.spring.io/spring-framework/docs/3.2.0.BUILD-SNAPSHOT/api/…
    • 你认为做以下事情吗? SocketServer
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-13
    • 1970-01-01
    • 2015-01-07
    • 1970-01-01
    • 1970-01-01
    • 2019-03-05
    相关资源
    最近更新 更多