Java 禁用无状态web服务的HTTPSession

Java 禁用无状态web服务的HTTPSession,java,rest,servlets,restful-architecture,httpsession,Java,Rest,Servlets,Restful Architecture,Httpsession,我想知道,对于仅处理web服务RESTful的应用程序服务器,是否可以禁用HTTPSession 我不知道是否有特定的应用服务器或servlet容器设计用于处理micro RESTful web服务 我认为完全禁用会话概念将带来以下好处: 更好的性能 在会话中保存数据没有风险,打破了RESTful Web服务的无状态概念 类加载器加载的类更少 会话中不保存未使用的信息(例如会话id、会话状态) 减少对同步块的访问(我认为至少在会话中,lastAccessedTime的值会针对每个请求进行更新,

我想知道,对于仅处理web服务RESTful的应用程序服务器,是否可以禁用
HTTPSession

我不知道是否有特定的应用服务器或servlet容器设计用于处理micro RESTful web服务

我认为完全禁用会话概念将带来以下好处:

  • 更好的性能
  • 在会话中保存数据没有风险,打破了RESTful Web服务的无状态概念
  • 类加载器加载的类更少
  • 会话中不保存未使用的信息(例如会话id、会话状态)
  • 减少对同步块的访问(我认为至少在会话中,lastAccessedTime的值会针对每个请求进行更新,这应该在同步块中完成)

如果没有应用服务器或servlet容器可以做到这一点:是否有其他Java引擎可以处理微服务而不创建类似于HttpSession的东西?

您不能在servlet容器(如Tomcat)上禁用HttpSession


可能是实现您的设计的一个好方法。

您不能完全禁用

但您可以确保不会在应用程序中创建。为此,请确保(您自己或您使用的框架)未调用以下方法:

  • true


是一种建筑设计原则。如果您想使用,有一个。

我编辑了问题,并在最后添加了一个新请求。所以这和另一个问题不一样。这只是通过问一个次要的问题来解决问题,这个问题非常模糊和广泛。安德烈斯用一个可能的引擎回答了这个问题。我相信,在适当的时候,你会看到其中的错误,并开始真正阅读你现在不想阅读的东西——这就是我们的其余部分我标记了响应和可能的重复。谢谢,我将查看名为request.getSession(false)的itI,如果没有执行其他请求,它也会返回一个会话。然后该会话已在其他位置创建。rest服务是否嵌入到打开会话的应用程序中?@davidorenzomarino查看:如果
create
false
,并且请求没有有效的
HttpSession
,此方法返回
null
。因此,我相信你的会议正在其他地方进行。你的框架不是为你做的吗?我用一个简单的例子再试了一次,但会话没有创建。凯西奥说得对,谢谢