ejb生命周期_无状态EJB:池化和生命周期

ejb生命周期

无状态EJB池和生命周期的概述视图(注释)。 对新手有用。 。 。 。 。

EJB池:快速概述

  • EJB实例存储在称为EJB池的位置-这不过是内存中的缓存
  • 无状态EJB通常按需实例化,即,当客户端调用Bean上的方法时。
  • 但是,大多数应用程序服务器还提供了一种功能,可以对其进行配置,以便在启动时可以使用一定数量的实例(例如,在Weblogic中)填充EJB池,这可以通过声明以下内容在weblogic-ejb-jar.xml中进行配置:初始空闲池中元素的确切数字。

合并收益

  • 性能提升
  • 客户端不需要等到实例化bean即可为请求提供服务

无状态Bean生命周期

slsb-lifecycle1

NON_EXISTENT –在这种情况下,bean在EJB池中尚不存在(尚未实例化)

不活动 –在这种状态下,EJB实例已经存在于EJB池中,但没有为客户端请求提供服务

BUSY(忙) –调用EJB实例以服务于客户端请求,结果,它进入BUSY状态。

为了服务客户端请求,将调用一个EJB实例,结果,该实例进入BUSY状态。 EJB可以从INACTIVE或NON_EXISTENT状态进入BUSY状态

SLSB状态转换

不忙-顾名思义,池中选择了不活动的bean来满足客户端调用

NON_EXISTENT变为繁忙 –创建了一个新的EJB实例来满足客户请求

EJB可以从繁忙状态回到不活动状态,即,在为客户端请求提供服务之后,实例将返回到池中

在某些情况下,还可以通过配置超时来破坏 EJB实例,该超时迫使应用程序服务器删除池中在特定时间间隔内处于非活动状态的所有EJB实例。 但是,应用服务器确实要确保EJB实例数量不低于允许的实例的最小数量(可配置属性-上面已读)

注意 :这样做主要是为了节省池中的EJB所消耗的内存量,因为它们被缓存在那里。 如果有许多未使用的实例,可以将它们删除以优化内存消耗。 容器可以按需创建新实例

客户端在无状态Bean上调用方法时会发生什么?

场景1 :容器实例化bean的新实例。

可能的原因是

  • 开始时, EJB池中没有bean –没有指示App Server在服务器启动时将默认数量的bean池化
  • EJB池中的所有Bean都在忙于处理来自客户端的请求,但是池中的Bean总数少于允许的最大实例数(配置参数)

场景2 :容器返回了bean的现有实例

可能的原因

  • 池中有一定数量的EJB实例,它们没有处于BUSY状态,即它们没有参与服务客户机请求。 容器刚刚返回一个这样的实例
  • 池中有一定数量的EJB实例可用,但是它们都处于BUSY状态,并且池中的bean的最大允许数量已经达到。 客户端应用程序必须等待,直到一个这样的bean变为可用并可以满足客户端请求为止

方案3 :客户端请求不是服务(收到异常)

可能的原因

如果已达到池中允许的最大数量的bean,并且在特定时间范围内没有任何BUSY bean可用。

翻译自: https://www.javacodegeeks.com/2014/05/stateless-ejbs-pooling-and-lifecycle.html

ejb生命周期

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/341727.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单E1光端机分类及技术指标详解

单E1光端机是一种将G.703的E1信号调制到光纤上传输的设备。采用大规模集成芯片,电路简单,功耗低,可靠性高,具有完整的告警状态指示和完善的网管功能。那么,单E1光端机分类及技术指标有哪些呢?接下来我们就跟…

将Java类作为子进程运行

我本周需要将Java类(而不是jar)作为子进程运行。 更准确地说,我想从测试内部产生一个新进程,而不是直接在测试内部运行(进程内)。 我不认为这是幻想或复杂的事情。 但是,这不是我以前不需要做的…

光猫的分类及应用范围有哪些?

光猫也称为单端口光端机,是针对特殊用户环境而设计的产品,它利用一对光纤进行单E1或单V.35或单10BaseT点到点式的光传输终端设备。该设备作为本地网的中继传输设备,适用于基站的光纤终端传输设备以及租用线路设备。而对于多口的光端机一般会直…

关于光模块用单模光纤和多模光纤小知识

通过对光纤的认知,我们了解到光纤是通过导光来传输信号、不导电、不怕雷击,所以也不需要用接地保护,我们按光在光纤中的传输模式分为:多模光纤和单模光纤。对于我们使用者来说,你把多模和单模名称由来记住就可以了。接…

硬盘序列号示例_序列化代理模式示例

硬盘序列号示例有些书极大地改变了你的生活。 其中一本书是Joshua Bloch撰写的“ Effective Java” 。 在下面您可能会发现一些小的实验,该实验的灵感来自于本书的第11章“串行化”。 假设我们有一个为继承而设计的类,它本身不是可序列化的 &#xff0c…

什么是光纤转换器?光纤转换器转换类别介绍

光纤转换器是RS-232/422/485串行数据通过光纤的远距离传输,可以完成串口到光纤的转换,并且可以延长串行通信信号的传输距离。那么,光纤转换器转换类别有哪些呢?接下来我们就跟随飞畅科技的小编一起来详细了解下吧! 光纤…

H2数据库的Spring Boot

在本快速教程中,我们将引导一个由内存H2数据库支持的简单Spring Boot应用程序。 我们将使用Spring Data JPA与我们的数据库进行交互。 项目设置: 首先,让我们使用Spring Initializr生成我们的项目模板: 单击“生成项目”链接后&…

集线器,交换机,路由器工作层次的区别

集线器(Hub)、交换机(Switch)与路由器(Router)号称是网络硬件三剑客,一直以来都是网络界的活跃分子,但让非常多初入网络之门的菜鸟恼火的是,它们三者不仅外观相似&#x…

什么是协议网桥?

网桥(Bridge)是早期的两端口二层网络设备,用来连接不同网段。网桥的两个端口分别有一条独立的交换信道,不是共享一条背板总线,可隔离冲突域。网桥比集线器(Hub)性能更好,集线器上各端…

网桥是怎么分类的?具体有哪些分类?

网桥也叫桥接器,是连接两个局域网的一种存储/转发设备,它能将一个大的LAN分割为多个网段,或将两个以上的LAN互联为一个逻辑LAN,使LAN上的所有用户都可访问服务器。那么,网桥具体是怎么分类的,有哪些类别呢&…

c++返回指针时候注意提防_编写干净的测试–提防魔术

c返回指针时候注意提防很难为干净的代码找到一个好的定义,因为我们每个人都有自己的单词clean的定义。 但是,有一个似乎是通用的定义: 简洁的代码易于阅读。 这可能会让您感到有些惊讶,但我认为该定义也适用于测试代码。 使测试尽…

无线网桥的特点及应用方案

无线网桥顾名思义就是无线网络的桥接,它利用无线传输方式实现在两个或多个网络之间搭起通信的桥梁;无线网桥从通信机制上分为电路型网桥和数据型网桥。那么,无线网桥的特点及应用方案有哪些呢?接下来我们就一起来看看吧&#xff0…

Spring WebClient的单元测试

WebClient引用其Java文档是Spring Framework的 非阻塞,反应式客户端执行HTTP请求,通过底层HTTP客户端库(如Reactor Netty)公开流利的,反应式API 。 在我当前的项目中,我广泛使用WebClient进行服务到服务…

以太网的光猫和光纤的光猫有什么区别吗?

光调制解调器,光猫也称为单端口光端机,是针对特殊用户环境而研发的一种三件一套的光纤传输设备。该设备采用大规模集成芯片,电路简单,功耗低,可靠性高,具有完整的告警状态指示和完善的网管功能。光猫可以分…

SFP光模块基本概念及使用注意事项详解

光模块(optical module)由光电子器件、功能电路和光接口等组成,光电子器件包括发射和接收两部分。简单的说,光模块的作用就是光电转换,发送端把电信号转换成光信号,通过光纤传送后,接收端再把光信号转换成电信号。现在…

Java中的状态设计模式

在本教程中,我们将探讨另一种流行的行为设计模式-状态设计模式。 当我们使用可以存在于多个状态的对象时,状态设计模式的知识变得非常有用。 当对象的行为取决于其当前状态时,我们应该主要使用它。 这种模式有助于我们避免在该类的方法中对对…

串口服务器工作方式及常见异常故障问题排除方法介绍

串口设备联网服务器就像一台带CPU、实时操作系统和TCP/IP协议的微型电脑,方便在串口和网络设备中传输数据。您可以在世界任何位置通过网络,用您的计算机来存取,管理和配置远程的设备。但是我们在实际使用串口服务器的过程中,难免会…

E1立体声卡侬头(XLR) 音频编解码器产品介绍

FCA系列音频编解码器是一种采用数字处理芯片及大规模FPGA、数字编解码转换和时钟恢复技术方法设计的基于E1(2M)通道传输立体声广播信号的广播传送设备系统,它可以借助目前成熟可靠的E1传输系统网,建立起数字立体声广播传送系统网络,实现广播传…

E1视音频编解码器应用方案详细说明

E1音频编解码器,是采用数字处理芯片及大规模FPGA、数字编解码转换和时钟恢复技术方法设计的。适用于广播节目源传输的设备。音频编码器是将输入的立体声音频信号,经A/D数字编解码变换或数据格式转换后,重新成帧,形成串行数据流&am…

java请求接口示例_Java 8:功能接口示例

java请求接口示例为了支持Java 8中的lambda表达式,他们引入了Functional Interfaces。 具有单一抽象方法的接口可以称为功能接口。 Runnable,Comparator,Cloneable是功能接口的一些示例。 我们可以使用Lambda表达式实现这些功能接口。 例如…