一组常见的 IBM 面试问题,适用于从入门级到经验级的面试。
我们经常收到编制 IBM WebSphere Application Server 面试问题列表的请求。
WebSphere是IBM的应用服务器(中间件产品),IBM在中间件市场份额中占据第一的位置。
WebSphere 是一套产品,本文仅讨论WebSphere Application Server 。
对 WebSphere 套件中包含的产品感到好奇吗?
- 门户网站
- WebSphere 数据能力
- 网状球体铸铁
- 至尊版
- WebSphere 前台
- WebSphere 消息代理
- WebSphere MQ
- 实时WebSphere
- WebSphere远程服务器
- WebSphere虚拟企业
- WebSphere 社区
- 更…
你准备好回答问题了吗?
1. 什么是瑞波启动?
Ripplestart 重新启动您的 WAS 集群。首先停止然后启动 JVM。运行ripplestart 可保证一次仅停止一个JVM,因此您的应用程序不会出现停机。
示例:如果集群中有 5 个 JVM,并且运行ripplestart,它将停止 JVM1,并在停止集群中的其他 JVM 之前启动 JVM1。

2. 如果您的 JVM 消耗了服务器上 100% 的 CPU 和内存,您该怎么办?
首先,确定哪些 JVM 未得到充分利用。获取已识别 JVM 的线程转储进行调查,并重新启动 JVM 作为冷却 CPU/内存的解决方法。

3.什么是节点同步?
IBM WAS 将整个配置存储在称为“主存储库”的中央存储库中,每个节点都有一个本地存储库。
如果通过 DMGR 对节点进行更改,则必须同步节点以将配置推送到每个节点的服务器。
同步始终是从主服务器到本地存储库,因此它是一种单向通信。

4. 即使 DMGR 关闭,我的应用程序也能成功运行吗?
是的,如果 DMGR 出现故障,不会影响正在运行的现有应用程序。但是,如果您需要通过 DMGR 进行更改或部署,您可能会受到影响。
5. 如何将应用程序部署到WebSphere?
共有三种部署方式。
- 热部署 – 将应用程序文件复制到应用程序目录。这适用于非生产环境,但不建议用于生产环境。
- DMGR – 您可以导航到应用程序 >> 新应用程序,通过 DMGR 部署应用程序。
- 脚本 – 您可以开发 wsadmin 脚本或 Ant 任务来部署应用程序。
6. 为什么即使我手动停止/终止进程,JVM 也会自动启动?
有两件事是可能的。
自动 JVM 重启默认启用,可在 JVM>>监控策略中找到。
如果以上都不适用,则 cron 中可能有一个脚本来检查进程并在未找到时启动它。
7. 我可以将哪些类型的文件部署到WebSphere?
WAR、EAR、JAR 或 SAR 模块可以通过 DMGR 控制台或脚本进行部署。
8.什么是虚拟主机?
虚拟主机在单个应用程序上包含多个 URL(基于 IP 或 FQDN),并通过 WAS 管理控制台进行配置。
要使您的应用程序可以通过特定 URL 进行访问,您必须将该 URL 放置在虚拟主机中并将其与您的应用程序关联。
9. 您如何处理客户关于应用程序速度慢的投诉?
导致缓慢的原因有多种,重要的是确定它是由 WebSphere 还是其他组件引起的。要隔离,您可以检查:
- 这种缓慢情况是否适用于所有用户?
- 整个应用程序很慢,还是只有某些功能很慢?
- 为什么不尝试直接访问 JVM URL(绕过 Web 服务器)?
如果您发现 JVM 速度缓慢,您可以进行转储并检查日志以查找原因。值得检查是否有发布并且发布后立即出现减速。
10. 如何在不停止 DMGR 的情况下备份 WAS 配置?
导航到您的 DMGR 配置文件和 bin 文件夹
运行./backupConfig.sh -nostop进行备份。
11. WAS默认端口是什么?
HTTP 的默认端口是 9080 和 HTTPS 9443。查看默认端口页面以获取更多信息。
12. WebSphere 有哪些版本可用?
- WAS——网络部署
- WAS – 开发人员
- WAS – z/OS
- WAS——虚拟机管理程序
- WAS——快递
- WAS——基地
- WAS——自由核心
13. 如何生成和传播插件?
- 登录WAS管理控制台。
- 转到服务器>> Web 服务器。
- 选择服务器并单击“生成”和“传播”按钮。
14. 您遇到的常见问题是什么?
但是,在贡献想法时,您应该始终诚实地介绍您的专业知识。
- 虚拟主机未定义
- 日志不动
- 内部服务器错误
- 内存不足异常
- 缓慢
- JVM 未启动
- CPU/内存/磁盘使用率高
15. 如何查看安装的WAS版本?
- 转到您的个人资料和 bin 文件夹
- 运行./versionInfo.sh
16. 如何知道JVM是否启动?
有多种方法可以检查这一点。
- 是否有任何监控工具可以查看是否有任何警报或当前状态?
- 登录到服务器并使用ps -ef | grep JVM | grep jvm名称
- 检查 JVM URL 是否可访问
- 检查是否可以 Telnet JVM URL 和端口
- 检查JVM端口是否在服务器上监听
- 要查看正在运行的内容,请使用 serverStatus.sh –all 命令。
选择对您来说容易的一个。
17. WebSphere 生成哪些日志文件?
- 系统输出日志
- 系统错误日志
- native_stdout.log
- native_stderr.log
18. 如何生成线程转储?
生成线程转储的方法有3种。
- 通过 DMGR 控制台:转至故障排除 >> 选择 JVM 并单击 Java Core。
- Kill -3 JVM 的 PID
- 按照此处所述使用 wsadmin.sh
19. 垂直集群和水平集群有什么区别?
垂直集群的成员位于同一节点或服务器上,水平集群跨越单元内的多个节点和服务器。
20.什么是垃圾收集?
垃圾收集是一个内存管理过程,它自动释放程序不再使用的对象。
21. 如何禁用 WebSphere 中的安全性?
可以通过在 wsadmin.sh 中运行“securityoff”来禁用安全性。关闭安全性后,必须重新启动 DMGR。
22. 如何启用详细垃圾收集?
默认情况下未启用 Verbose GC,因此如果需要,可以像这样运行它:
- 服务器 >> 服务器类型 >> WebSphere 应用服务器
- 在 Java 和进程管理下选择 JVM >> 进程定义。
- 单击“附加属性”下的“Java 虚拟机”,然后选中“详细垃圾收集”复选框。
23. 如何在服务器重新启动时自动启动WebSphere?
WebSphere 自动在 /etc/init.d 中生成启动脚本以确保重新引导时启动。
但是,如果由于某种原因该脚本不存在,您可以创建一个脚本,将其放置在 /etc/init.d 中并启用它,如下所示:
chkconfig -- add WebSphere #script file name
chkconfig WebSphere on请参阅我关于如何在启动时自动启动服务的详细指南。
24. 如何增加 JVM 堆大小?
- 登录管理控制台
- 导航到服务器 >> 服务器类型 >> WebSphere 应用程序服务器。
- 选择 JVM → 进程定义 → Java 虚拟机。
您可以在此处输入初始堆大小和最大堆大小。
25. 当 Node Agent 关闭时我可以同步节点吗?
绝对必须停止节点代理才能使同步工作。
26. 停止和启动 DMGR、Nodeagent 和 JVM 的命令是什么?
停止
- JVM – stopServer.sh JVMNAME
- 节点代理——stopNode.sh
- DMGR – stopManager.sh
开始
- JVM – startServer.sh JVMNAME
- 节点代理-startNode.sh
- DMGR – startManager.sh
27. WAS 8.5.5 中有哪些新增内容?
高层次上:
- Java SE 7 支持
- HPEL 日志记录
- 内置健康管理
- 自由概况
- 智能路由
- 动态聚类
- JDBC 4.1 集群
- Web2.0支持
详细信息也可以在这里找到。
28. 节点联合是什么意思?
WebSphere 中的联合意味着将节点添加到单元中。这是通过 addNode.sh 命令完成的,可能需要几分钟时间,具体取决于节点的大小。
29.什么是FFDC?
FFDC(首次故障数据捕获)捕获 WebSphere 运行时期间的事件和错误。 FFDC 数据在问题分析中非常有用,并且经常会询问您是否愿意就该问题联系 IBM 支持人员。
30. 我可以解码 WebSphere 密钥库 XOR 吗?
是的,您可以使用在线工具来完成此操作 – http://strelitzia.net/wasXORdecoder/wasXORdecoder.html 。
31. WebSphere 的默认脚本语言是什么?
JACL 是WebSphere 的默认脚本语言。
32. 如何在 WebSphere 8.5.x 上应用修订包?
您可以使用 IBM IM 应用修复。有关详细说明,请参阅如何应用修订包指南。
33. 你们支持哪些环境?
诚实地描述您支持的环境。它可能支持:
- 发展
- C.I.T.
- 坐
- 大学
- 演示
- 预制作
- 生产
- 方向
- 质量保证
34. Web 服务器托管在哪里?
让我们重申一下支持的应用程序架构。然而,在面向 Internet 的应用程序的典型生产环境中,Web 服务器位于 DMZ 内,应用程序服务器位于核心网络内。
这意味着 Web 服务器和应用程序服务器之间的防火墙必须允许所需的端口。
35.什么是会话亲和性?
会话关联性是持久会话的另一种说法。会话关联性允许将请求绑定到单个 JVM。这意味着返回的请求始终路由到同一个 JVM。
36. 我可以在单个 JVM 上部署多个应用程序吗?
是的,您可以在单个 JVM 上部署多个应用程序,只要每个应用程序的上下文根是唯一的。
37.Websphere 使用哪个数据库?
请告诉我你用什么。尽管大多数组织使用 Oracle 数据库,但 WebSphere 还支持以下数据库:
- 数据库2
- 甲骨文数据库
- 微软SQL服务器
- 赛贝斯
38. 如何将我的 Web 服务器连接到 WAS?
有两种方式连接WAS。
- 使用插件 – 这是在 Web 服务器上安装 WAS 插件的推荐方法。
- 使用 ProxyPass – 如果您使用 Apache 并且不想使用插件,则可以使用 ProxyPass 指令连接到 WAS JVM。
39. 在WAS之前我需要一个Web服务器吗?
我们建议您在 WAS 前面放置受支持的 Web 服务器,以提高安全性、性能和维护。
40.什么是细胞?
单元是节点的逻辑分组,可以具有一个或多个节点。集群及其所有内容均通过单个管理控制台进行管理。
41. 管理控制台的默认会话超时是多少?
半小时
42. 什么是修复包?
修订包是 IBM 提供的补丁的集合。可能包括错误修复、安全补丁和性能改进。
43.WebSphere 支持哪些注册表或存储库?
- 联合存储库
- 本地操作系统
- 独立 LDAP 注册表
- 独立的自定义注册表
44.什么是共享库?
我们建议创建共享库以减少重复的库文件。单个共享库可由单元内的多个应用程序使用。
45.什么是上下文根?
每个应用程序的上下文根在单元内必须是唯一的。这是在部署描述符中定义的并用于访问应用程序。
示例:如果应用程序 A 具有名为“retail”的上下文根,则可以从 http://servername:port/retail 访问该应用程序。
46.WAS插件配置文件名是什么?
WebSphere 插件配置名称是plugin-cfg.xml 。
47. 如何更改WebContainer的线程池大小?
可以通过导航到JVM >> Thread Pools >> WebContainer来更改 WebContainer 线程池。
48. 我可以更改已部署应用程序的上下文根吗?
是的,这是可能的。要从管理控制台执行此操作,请进入应用程序并单击“Web 模块上下文根”以更改上下文根。
进行更改后必须重新启动 JVM。
49. 哪个脚本会更改配置文件中使用的 Java SDK?
Managesdk.sh脚本位于bin文件夹中,可帮助您修改SDK。
50.什么是PMT?
PMT(配置文件管理工具)是一个用于创建和管理 WebSphere 配置文件的 GUI。
我希望以上内容能够帮助您找到一份 WebSphere 管理员的工作。如果您在简历和面试方面需要帮助,请查看本教程。




![2021 年如何设置 Raspberry Pi Web 服务器 [指南]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)

