根据 Web 服务器端的架构相关知识,将PHP改JAVA重构企业网站系统

news2024/11/28 2:45:47

目录

案例

【题目】

【问题 1】(7 分)

【问题 2】(8 分)

【问题 3】(10 分)

答案

【问题 1】解析

【问题 2】解析

【问题 3】解析

相关推荐


案例

        阅读以下关于应用服务器的叙述,在答题纸上回答问题 1 至问题 3。

【题目】

        某电子产品制造公司,几年前开发建设了企业网站系统,实现了企业宣传、产品介绍、客服以及售后服务等基本功能。该网站技术上采用了 Web 服务器、动态脚本语言 PHP。随着市场销售渠道变化以及企业业务的急剧拓展,该公司急需建立完善的电子商务平台。公司张工建议对原有网站系统进行扩展,增加新的功能(包括订单系统、支付系统、库存管理等),这样有利于降低成本、快速上线;而王工则认为原有网站系统在技术上存在先天不足,不能满足企业业务的快速发展,尤其是企业业务将服务全球,需要提供 24 小时不间断服务,系统在大负荷和长时间运行下的稳定性至关重要。建议采用应用服务器的 Web 开发方法,例如 J2EE,为该企业重新开发新的电子商务平台。

【问题 1】(7 分)

        王工认为原有网站在技术上存在先天不足,不能满足企业业务的快速发展,根据你的理解,请用 300 字以内的文字说明原系统存在哪几个方面的不足。

【问题 2】(8 分)

        请简要说明应用服务器的概念,并重点说明应用服务器如何来保障系统在大负荷和长时间运行下的稳定性以及可扩展性。

【问题 3】(10 分)

        J2EE 平台采用了多层分布式应用程序模型,实现不同逻辑功能的应用程序被封装到不同的构件中,处于不同层次的构件可被分别部署到不同的机器中。请填写图 4-1 中(1)~(5)处的空白,完成 J2EE 的 N 层体系结构。

答案

        本题考查 Web 应用开发的知识及应用,主要是 Web 服务器端的架构知识,属于比较基础的题目。

【问题 1】解析

        本问题考查 Web 服务端的脚本开发知识。原有的 Web 服务器扩展接口的方式过于底层,对开发者的素质要求很高,往往需要懂得底层编程方法,了解 HTTP协议,调试也很困难。因此开发者使用一些脚本语言来进行 Web 开发,包括 ASP HP 等。其实质是在 Web 服务器端放入一个通用的脚本语言解释器,负责解释各种不同的脚本语言文件,其最大的优点是简化了开发流程,降低了对程序开发人员的要求。但是该方法也有在一些明显的缺点,主要包括:脚本语言嵌入在 HTML 文件中,使得 IO、业务逻辑、数据处理等程序代码混杂在一起,使得开发、维护困难;系统采用 Web 服务器实现业务逻辑,系统的扩展性差,并发能力差,系统一旦繁忙,缺乏有效的手段进行扩充;系统缺乏有效的维护、管理工具。

        答案:

        原有基于 Web 服务器的脚本语言的解决方案,其实质是在 Web 服务器端放入一个通用的脚本语言解释器,负责脚本语言的解释执行。其存在的不足有:

        1.脚本语言嵌入在 HTML 文件中,使得 IO、业务逻辑、数据处理等程序代码混杂在一起,使得开发、维护困难;
        2.系统采用 Web 服务器实现业务逻辑,系统的扩展性差,并发能力差,系统一旦繁忙,缺乏有效的手段进行扩充;
        3.系统缺乏有效的维护、管理工具。

【问题 2】解析

        本问题考查应用服务器技术的基本概念。应用服务器技术是脚本语言开发技术之后出现的一种 web 应用开发技术。应用服务器是指通过各种协议把商业逻辑暴露给客户端的程序。它提供了访问商业逻辑的途径以供客户端应用程序使用。应用服务器为实现Web 应用程序和系统资源的访问机制提供了一种简单、可管理的方式。它是一个开发、部署、运行、管理和维护的平台,可以提供软件“集群”功能,让多个不同的、异构服务器协同工作、相互备份,满足企业级应用所需要的可用性、高性能、可靠性和伸缩性。

        应用服务器通过分布式体系来保障系统在大负荷和长时间运行下的稳定性以及可扩展性:当系统处理能力不够时,通过简单增加硬件来解决,提供水平可扩展性;动态调整不同主机间的负载可以最大限度地利用资源,提供单机稳定性;动态调整主机工作职能,当系统中某台机器出现故障时,它的工作可由其他机器承担,不会影响系统整体的运行,没有单点故障。

        答案:

        应用服务器是指通过各种协议把商业逻辑曝露给客户端的程序。
        1.若系统负荷很大,可以布署多台应用服务,多台应用服务器分担任务,以达到性能要求。
        2.应用服务器可以通过灵活的增加服务器完成扩展,所以可扩展性很好。
        3.应用服务器可长时间稳定运行。因为当一台应用服务器出现故障时,可以将当前运行的事务转移至正常应用服务器上完成执行,不影响业务正常执行,从而保障高可靠性与稳定性。

【问题 3】解析

        本问题考查 J2EE 平台的基本架构。

        J2EE 是针对 Web Service、业务对象、数据访问和消息传送的一组规范。这组应用编程接口确定了 web 应用与驻留它们的服务器之间的通信方式。J2EE 注重两件事,-是建立标准,使Web应用的部署与服务器无关;二是使服务器能控制构件的生命周期和其他资源,以便能够处理扩展、并发、事务处理管理和安全性问题。I2EE 规范定义了以下几种构件:应用客户端、EJB 构件、Servlet 和 JSP、Applet 构件。J2EE 采用的是多层分布式应用模型,意味着应用逻辑将根据功能分成几个部分,用户可以在相同或不同的服务器上安装不同应用构件组成 J2EE 应用。

        答案:

        (1)Applet
        (2)Servlet
        (3)EJB 容器
        (4)SessionBean(会话 Bean)
        (5)EntityBean(实体 Bean)

我以为我可以,结果回答的一塌糊涂。

相关推荐

【系统架构设计师】十一、系统架构设计(中间件|典型应用架构)-CSDN博客文章浏览阅读398次,点赞10次,收藏3次。中间件:在一个分布式系统环境中处于操作系统和应用程序之间的软件,可以在不同的技术之间共享资源,将不同的操作系统、数据库、异构的网络环境以及若干应用结合成一个有机的协同工作整体。JSP发一个数据到Servlet,Servlet收到后做下解析再根据数据调用相应的Service去服务,Service如果有要调用数据库就通过DAO跟数据库交互,使用JavaBean完成封装,返回结果给Servlet,Servlet再返回给JSP。_j2ee应用系统支持五种不同类型的构件模型,包括https://shuaici.blog.csdn.net/article/details/140464924

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

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

相关文章

现有electron-quick-start把vue项目打包后的dist打包exe自定义最小化点击事件

1.preload.js里暴露接口 const { contextBridge, ipcRenderer } require(electron) contextBridge.exposeInMainWorld(electronAPI, {WindowMin: (data) > {ipcRenderer.send(window-min, data);} });2.vue文件处理 if(window.electronAPI){window.electronAPI.WindowMi…

12/24/30v/36转固定5v输出芯片

设计电源芯片的应用方案时,必须保证输入电压在DC6V至30V范围内,输出电压为固定的5V,同时电流需在200至300mA之间。在这种需求下,推荐使用AH1405芯片,因其输入电压范围宽(6-40V),内置…

正则表达式——详解

正则表达式是什么? 正则表达式(Regular Expression,通常简写为 regex、regexp 或 RE)是一种强大的文本处理工具,用于描述一组字符串的模式。它可以用来匹配、查找、替换等操作,几乎所有现代编程语言都支持…

【精选】基于Python的热门旅游景点数据分析系统的设计与实现(南京旅游,北京旅游,旅游网站,全国各地旅游网站)

目录: 系统简介: 关键技术介绍 2.1 PYTHON语言简介 2.2 MySql数据库 2.3 DJANGO框架 2.4 Hadoop介绍 2.5 Scrapy介绍 2.6 B/S架构 系统总功能结构设计 系统详细实现: 6系统测试 系统测试的目的 软件测试过程 测试用例 为什么选择…

学习之nodejs安装

安装地址 https://nodejs.org/en/download/package-manager 安装 配置环境变量

【网络编程】select实现服务器与客户端进行通信

1、运行1个服务器和2个客户端 实现效果: 1、服务器和2个客户端互相聊天,服务器和客户端都需要使用select模型去实现 2、服务器要监视2个客户端是否连接,2个客户端是否发来消息,以及服务器自己的标准输入流 3、客户端…

20240821让飞凌的OK3588-C的核心板在Linux R4下挂载1TB的exFAT格式的TF卡

fdisk -l df -h df -t df -T mount 20240821让飞凌的OK3588-C的核心板在Linux R4下挂载1TB的exFAT格式的TF卡 2024/8/21 19:47 百度:rk3588 buildroot exFAT mount: mounting /dev/mmcblk1p1 on /mnt failed: Invalid argument Disk /dev/mmcblk1: 955 GB, 10254234…

高性能日志系统 代理模式构建全局日志器获取接口

日志器获取接口 通过两个函数,用于获取指定名称的日志器和root日志器。两个函数分别通过调用loggerManager的getInstance方法,获取单例的日志管理器对象,通过这种方式,借助日志管理器获取具体的日志器对象。 设计的主要目的&…

Nginx平滑升级与回滚示例

Nginx 的平滑升级和平滑回滚是确保 Web 服务高可用性的重要组成部分。这两种操作允许你在不中断服务的情况下更新或回滚 Nginx 的版本。 Nginx 平滑升级与回滚 Nginx 的平滑升级和平滑回滚是确保 Web 服务高可用性的重要组成部分。这两种操作允许你在不中断服务的情况下更新或…

m4a格式音频怎么转成mp3?音频转成mp3的8个方法

在结束关于M4A转MP3格式转换的探讨之际,我们不得不强调这一转换过程对于提升音频文件灵活性和可访问性的重要意义。随着数字媒体的日益普及,音频文件的格式兼容性成为了不可忽视的一环。特别是在一个多元化设备和平台共存的数字时代,确保音频…

虚拟滚动列表组件ReVirtualList

虚拟滚动列表组件ReVirtualList 组件实现基于 Vue3 Element Plus Typescript,同时引用 vueUse lodash-es tailwindCss (不影响功能,可忽略) 在 ReList 的基础上,增加虚拟列表功能,在固定高度的基础上,可以优化大数…

稳定、耐用、美观 一探究竟六角头螺钉螺栓如何选择

在机器与技术未被发现的过去,紧固件设计和品质并不稳定。但是,他们已成为当今许多行业无处不在的构成部分。六角头标准件或六角头标准件是紧固件中持续的头部设计之一,它有六个面,对广泛工业应用大有益处。六角头标准件或常分成六…

animatecss动画效果

1. 官网 https://animatecss.node.org.cn/ 2. 安装 npm install animate.css --save 使用时需要在vue中引入&#xff1a;import "animate.css;与内置组件配合使用&#xff1a; <Transition>Vue官网链接如果按照animatecss官网的用法,则只能指定进入或退出其中一…

L2G: A Simple Local-to-Global Knowledge Transfer Framework for WSSS

摘要 挖掘精确的类感知注意图&#xff0c;即类激活图&#xff0c;是弱监督语义分割的关键。在本文中&#xff0c;我们提出了L2G&#xff0c;一个用于高质量对象注意力挖掘的简单的在线局部到全局知识转移框架。我们观察到&#xff0c;当用局部补丁替换输入图像时&#xff0c;分…

汽车的UDS诊断02

UDS的不同服务: 1)物理寻址和功能寻址 can总线上往往有多个ECU,诊断设备可以和某个ECU通信,也可以和多个ECU通信,通过物理寻址和功能寻址来解决这个问题,只针对请求报文: 物理寻址:就是诊断仪与ECU之间点对点通信 功能寻址:就是诊断仪与多个ECU之间一对多信 我们的…

数字货币发行项目开发基本要求及模式创建与海外宣发策略

随着区块链技术的迅速发展和应用普及&#xff0c;数字货币项目&#xff08;Cryptocurrency Projects&#xff09;成为了全球金融创新的重要领域。无论是中心化的数字货币&#xff08;如稳定币&#xff09;还是去中心化的加密货币&#xff0c;都在重塑金融市场的格局。然而&…

halcon二维码识别

read_image (Image, C:/Users/Administrator/Desktop/二维码测试/1.bmp) rgb1_to_gray (Image, GrayImage) *创建一个二维码数据class模型create_data_code_2d_model (Data Matrix ECC 200,[], [],DataCodeHandle) *-检测和读取图像中的二维数据代码符号或训练二维数据代码模…

【C++笔记】引用和const引用以及inline和nullptr

【C笔记】引用和const引用以及inline和nullptr &#x1f525;个人主页&#xff1a;大白的编程日记 &#x1f525;专栏&#xff1a;C笔记 文章目录 【C笔记】引用和const引用以及inline和nullptr前言一.引用1.1引用的概念和定义1.2引用的特性1.3引用的使用 二. const引用三.指…

自动微分autograd实践要点

目录 定义Value手动定义每个 operator 的 _backward() 函数构建反向传播计算链 本文主要参考 反向传播和神经网络训练 大神Andrej Karpathy 的“神经网络从Zero到Hero 系列”之一&#xff0c;提炼一些精要&#xff0c;将反向传播的细节和要点展现出来 定义Value 第一步首先要…

基于BlockQueue的生产消费模型及Linux中的信号量

基于BlockQueue的生产消费模型 Task.hpp #pragma once#include<cstdio> #include<iostream> #include<string> #include<functional>using namespace std; class CalTask {using func_tfunction<int(int,int,char)>;//typedef function<int(…