问题标签 [stateless-session]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
google-app-engine - 部署在 Google-App-Engine 上的 Python 应用程序很少抛出异常
我已经使用 Python 在 Google-App-Engine 上部署了一个网站。
由于 GAE 不保证“keep-alive”,我实现了一个无状态服务器:
每次内部变量发生变化时,它们都会立即存储到 GQL 数据库中。
每当流程启动时,所有内部变量都会从 GQL 数据库中加载。
我有一个很少引发异常的场景,但我无法追踪它:
客户端发送一个同步的 AJAX POST 请求。
服务器创建一个会话并在响应中发送一个唯一的会话 ID。
客户端发送一个以会话 ID 作为参数的同步 AJAX GET 请求。
服务器在响应中发送一些文本消息。
由于客户端请求是同步的,所以整个序列也是同步的。
这是我的服务器中的相关映射:
这是我的服务器中的相关请求处理:
这是我的服务器的内部实现:
最后,这是我服务器中的数据库维护:
异常本身表示使用密钥对sessions
字典的非法访问。sessionId
根据我的观察,只有在服务器“已经休眠”了相当长的一段时间(比如几天左右)之后启动本问题开头描述的客户端-服务器序列时才会发生这种情况。它可能会为这个问题的根源提供某种线索,尽管我看不到它。
我的问题:
我的设计有什么明显的问题吗?
有人在 GAE 上遇到过类似的问题吗?
有没有人看到一个明显的解决方案,甚至是可能有助于理解这个问题的调试方法?
谢谢
dependency-injection - 在无状态bean中注入有状态bean
stateful session bean
在stateless session bean
using中注入 a 时DI
,究竟会发生什么:容器是否为每个无状态 bean(存在于池中)注入了一个新的有状态 bean 实例,或者它是它们之间共享的同一个实例?
为什么表明JNDI
在这种情况下使用优于DI?
我真的不明白。
java - 什么基于 Java 的技术用于构建无状态应用程序?
我们的一个应用程序将更多地成为基于微服务的架构,驱动程序包括云就绪、响应式、跨渠道、拥抱 API、重型客户端架构、无状态应用程序、动态可扩展应用程序等。
这里的无状态应用程序是什么意思?有哪些 Web 技术可用于构建无状态应用程序?
java - 在 Hibernate 上不推荐使用 StatelessSession#connection()?
我正在清理一些警告,并connection()
使用.StatelessSession
Session
现在,这个问题的答案指向doWork
on 的方法Session
,但在 上不存在这样的方法StatelessSession
。那么,应该如何解决这种弃用?
scala - 从 Drools StatelessKieSession 中的 DefaultFactHandle 提取事实/对象(通过 Scala)
到目前为止,我一直在使用 Stateful Sessions (KieSession),并设法使用带有一些 Java 包装器的 Scala 让我的项目按需要运行。我现在正试图切换到 StatelessKieSessions。根据我找到的文档,我设法运行以下命令将对象/集合插入到会话中,触发它们的规则并更新事实:
当我打印result
(属于 org.drools.core.common.DefaultFactHandle 类)时,它显示了所需事实的结构,按预期更新,前面是“事实 0:1:2050275256:1971742898:2:默认值:NON_TRAIT:”
文档说我应该能够编写类似的东西,result.getValue("myObject")
但是这个选项在 Scala 中似乎不可用。(https://docs.jboss.org/drools/release/6.0.0.Beta1/kie-api-javadoc/org/kie/api/runtime/StatelessKieSession.html)
我知道尚未完全提供 Scala-Drools 互操作性,但是有人知道从 StatelessKieSession 或包含它的 DefaultFactHandle 中提取更新事实的方法吗?
java - 在 Hibernate 中使用 StatelessSession 进行事务管理
我担心在 spring 应用程序中使用StatelessSession
和使用 hibernate。ScrollableResults
我有许多 DAO,主要使用在其中自动装配的通用会话对象,但出于一个目的,我需要循环遍历整个表。我发现为此,使用ScrollableResults
迭代对象而StatelessSession
不是将任何附加结果存储在内存中是有效的。但是,我需要在 DAO 之外进行此迭代,因为来自 DB 的信息用于访问外部 API。所以我已经创建了创建和关闭的方法StatelessSession
来自 DAO 外部。我想知道,在这种情况下我应该如何管理交易?似乎根本不需要事务操作(仅读取数据),但在代码审查中,我被告知事务可以自动创建,并且永远不会被 Spring Hibernate Transaction Manager 关闭。那么它应该是手动覆盖还是无用的预防措施?
reactjs - 实现无状态身份验证的正确方法是什么?
我是单页应用程序的新手。对我来说,一个大问题是如何确保我的应用程序安全。我在前端使用 React,在后端使用 express + mongodb。
我是旧网站,我们使用会话进行授权。如果会话超时,我们可以让用户重定向到登录页面。如果用户继续在我们的网站上执行某些操作,他的会话将永远不会过期。
但是现在,我正在使用 JWT 进行授权。令牌可能会在 1 分钟后过期,之后用户必须重新登录。
据我了解,一种方法是“在每个请求/响应上重新发送一个令牌,然后每个请求/响应都会有一个新令牌”。但我认为这不是如何使用 JWT 的正确方法。
所以我的问题是:
- 如果他仍然在我们的网络应用程序上工作,那么避免用户再次登录的正确方法是什么?
- 我们需要将令牌存储在数据库(mongodb)中吗?
- 如果我将令牌存储在 localStorage 中,每个人都可以从浏览器中借用它并将令牌复制到他们的客户端中。如何避免?
c# - 如何使用无状态会话插入具有值集合的实体?
我有以下(简化的)实体需要批量插入:
并且Tags
配置了属性(通过 FluentNHibernate):
这会产生这些表(使用 SQLite):
我想使用无状态会话来减少内存消耗并提高一点速度。我意识到,因为无状态会话不执行任何级联,我必须Tags
自己插入集合。我尝试了以下方法:
但这失败了,但有一个例外:
NHibernate.MappingException:没有持久性:标签
那么,如何插入书签实体及其标签集?
grails - Grails spring security rest plugin v1.5.3 - 刷新令牌流
我有一个使用 grails v2.5.2 实现的 REST API 和一个使用 AngularJS 的客户端。我正在使用插件默认提供的 JWT 身份验证。
我已将令牌到期时间设置为 3600,并且我想自动刷新 access_token(对用户透明)。我知道我必须使用 application/x-www-form-urlencoded 对 /oauth/access_token 进行 POST 并发送 refresh_token 以获得新的 access_token。
我的问题是:
- 令牌过期时这个插件返回的状态码是什么?我设置了 log4j,我看到它在令牌过期后发送 401。我希望 403 而不是 401,因为最后一个用于无效的登录凭据。
我需要知道这一点才能设置响应拦截器来请求新的 access_token。
谢谢!
java - Spring Boot Basic Authentication without Session(无状态会话)
我已经为我的 Spring-Boot 应用程序配置了基本身份验证。一切都是 Java Config,没有 xml。
它被配置为基本身份验证和普通表单登录。当我在 Firefox 上测试来自 Rest-Client 的基本身份验证时,我可以访问安全 URL“/main”。但在响应标头中,我得到Set-Cookie: JSESSIONID=301225C7AE7C74B0892887389996785D;
.
我不希望为基本身份验证生成 cookie。我希望基本身份验证为 true Stateless session
。请注意,我需要生成 cookie 才能使表单登录工作,因此禁用 cookie 不是一种选择。我知道create-session="stateless"
in xml 配置,但是有没有办法在 Java 配置中做同样的事情,以便基本身份验证是无状态的,而表单身份验证是有状态的..?