Linux里面什么是中间件?

Linux里面什么是中间件?,第1张

中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的 *** 作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。

执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或 OS 环境。

中间件是介于 *** 作系统和应用软件之间,为应用软件提供服务功能的软件,有消息中间件,交易中间件,应用服务器等。由于介于两种软件之间,所以,称为中间件。

Linux系统常用的中间件

1、tomcat

是一款java语言servlet规范的服务器软件适用于本地开发,小项目,或者是个人开发(免费的开放源代码的Web 应用服务器),Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet,但是Tomcat处理静态[HTML]的能力不如Apache服务器

2、weblogic

大项目或者商业项目,Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中,是美国bea公司出品的一个基于j2ee架构的中间件。

3、jetty

一些示例项目或者小项目常(开源的servlet容器),是使用Java语言编写的,Jetty的运行速度较快,而且是轻量级的,可以在Java中可以从test case中控制其运行。从而可以使[自动化测试]不再依赖外部环境,顺利实现自动化测试

4、JBoss

管理EJB的容器和服务器(开放源代码的项目),JBoss遵循商业友好的LGPL授权分发,并且由开源社区开发

5、WebSphere

IBM 的软件平台,它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的软件。WebSphere 是一个模块化的平台,基于业界支持的开放标准。可以通过受信任和持久的接口,将现有资产插入 WebSphere,可以继续扩展环境。WebSphere 可以在许多平台上运行,包括 Intel、Linux 和 z/OS。

1、问题:

1)应用程序的运行有多快?

2)它将适用于多大的规模?

3)应用程序服务器的性能是什么?

2、The Grinder的负载生成/数据收集工具

The Grinder是一个基于Java的工具。

3、J2EE性能测试

1)性能测试一个完整的应用程序;

2)性能设计——分析J2EE API不同方面的性能代价,以及某种设计决策对总体性能的影响。

性能依赖于应用程序以及性能的确切含义。

J2EE是一组广泛的API,甚至一个相对简单的J2EE应用程序都可以以多种方式编写。

前端:有一组JSP和servlet处理与终端用户或客户端的通信,或是将访问委托给一个实体bean;

前端可使用JDBC与数据库通信;

开发人员可选择让该前端调用一个无状态的会话bean;

然后该无状态的会话bean使用JDBC API与数据库通信,或者是将该访问委托给一个实体bean;

实体bean可以使用容器管理的持久性(Container-Managed Persistence,CMP)或者是Bean管理的持久性(Bean-Managed Persistence,BMP)等。

4、获取清晰的真实的有关性能的答案的唯一方法是,在你自己的特定环境中亲自测试它。

1)交互式应用程序:性能一般是通过大小和规划问题的容量来定义,如应用程序能够处理的同时发生的用户数量。

从终端用户的角度看,关键的性能属性是响应时间。

响应时间直接受到同时与应用程序交互的用户数的影响。

随着用户负载的增加,测试应该指出工作繁忙的硬件系统组件,可反过来告知如何在应用程序服务器、数据库服务器和网络之间最佳的分割硬件预算资源。

该信息还能够帮助确定最优的部署配置。

前端(servlet和JSP)可以运行在一个应用程序服务器上,而事务逻辑(EJB、JMS队列)运行在另一个服务器上。

2)后端应用程序

当应用程序的主要接口是面向用户时,基于响应时间和用户数的性能陈述是有意义的;当应用程序具有与另一个系统的接口时,需要:

吞吐量来衡量。

表达吞吐量性能最流行的方式之一是每秒的事务处理(Transactions per Second,TPS)。

使用吞吐量必须清楚地说明了上下文。

在研究servlet时,我们定义事务处理为一个请求——因此吞吐量是servlet在一个设定的时间周期内(一秒)执行的同样请求的数量。

当分析JMS时,吞吐量就是消息(message)。

注意:吞吐量不是一个速度测度,而是一个容量(capacity)测度。

吞吐量并不总是提供应用程序性能的完整描述。

5、上下文测试方法

1)基准测试(Benchmarking):是在各种不同的环境和工作负载下记录应用程序性能的过程;

2)轮廓(Profiling):涉及到精确地调查应用程序将大部分计算周期花费在什么地方,以及应用程序如何高效地使用系统资源;

3)调整(Tuning):测试、基准测试和轮廓都反馈给调整过程,后者是优化应用程序和环境获取最大性能的过程;

6、基准测试

ORACLE数据库——轮廓工具SQL_TRACE和TKPROF;

WEBLOGIC服务器——WEBLOGIC控制台查看起内部情况;

J2EE应用程序——Introscope和JProbe轮廓工具来帮助准确查明应用程序中组件级的瓶颈。

7、调整

一个典型的J2EE应用程序将建立在一个应用程序服务器的基础上,此外,还有数据库、Java虚拟机(JVM)、 *** 作系统、TCP/IP堆栈、Web服务器、网络、路由器和现行的计算机硬件。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/5893646.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-06
下一篇 2023-03-06

发表评论

登录后才能评论

评论列表(0条)

保存