Netweaver和CloudFoundry是如何运行Web应用的?

原文链接:https://segmentfault.com/a/1190000015308530

Netweaver

在Jerry的微信公众号文章SAP Fiori应用的三种部署方式里提到SAP Fiori应用以BSP应用的方式部署在ABAP Front-End Server上。那么这些BSP应用在运行时为什么能够接受和发送HTTP请求呢?

主要是下图的Internet Communication Manager(ICM)在起作用。

SAP help:

The Internet Communication Manager ensures that communication between the SAP System (SAP NetWeaver Application Server) and the outside world via HTTP, HTTPS and SMTP protocols works properly.

The ICM is a component of the SAP NetWeaver Application Server. It is implemented as a separate process, which is started and monitored by the ABAP dispatcher.

即ICM作为沟通的桥梁,确保Netweaver应用服务器和外界能够通过HTTP,HTTPS等协议交互。ICM是Netweaver应用服务器的一个组件,作为一个单独的工作进程,由ABAP dispatcher启动并监控。

ICM的架构:

  1. ICM本身维护了一个工作线程池。有一个专属的控制线程,负责接收进来的TCP/IP请求,然后从线程池中唤醒一个工作线程来响应该请求。
  2. 每个工作线程包含一个I/O处理器,负责网络输入输出。工作线程通过各种各样的plugin处理HTTP,SMTP等协议。

CloudFoundry

假设我本地开发了一个Java Web应用,里面包含一个Servlet,部署到CloudFoundry后,该应用如何运行起来的?
细心观察cf push的日志,不难自己找出答案。
因为我的manifest.yml里定义的buildpack为java_buildpack:

这对应了cf push日志里高亮的这一行:

下载Open JDK JRE和Tomcat instance。

为什么会自动下载tomcat?
打开java_buildpac的github仓库:
https://github.com/cloudfound...
上面提到了原因:

The Tomcat Container allows servlet 2 and 3 web applications to be run. These applications are run as the root web application in a Tomcat container.

一旦buildpack检测到war包中存在WEB-INF,且不存在Java Main(实现了main方法的Java类),则决定使用Tomcat容器。

实际上从cf push的日志里也能观察到tomcat容器启动参数:

"JAVA_OPTS="-agentpath:$PWD/.java-buildpack/open_jdk_jre/bin/jvmkill-1.13.0_RELEASE=printHeapHistogram=1 -Djava.io.tmpdir=$TMPDIR -Djava.ext.dirs=$PWD/.java-buildpack/container_security_provider:$PWD/.java-buildpack/open_jdk_jre/lib/ext -Djava.security.properties=$PWD/.java-buildpack/java_security/java.security $JAVA_OPTS -Daccess.logging.enabled=false -Dhttp.port=$PORT\" && CALCULATED_MEMORY=$($PWD/.java-buildpack/open_jdk_jre/bin/java-buildpack-memory-calculator-3.13.0_RELEASE -totMemory=$MEMORY_LIMIT -loadedClasses=11021 -poolType=metaspace -stackThreads=250 -vmOptions="$JAVA_OPTS\") && echo JVM Memory Configuration: $CALCULATED_MEMORY && JAVA_OPTS="$JAVA_OPTS $CALCULATED_MEMORY" && MALLOC_ARENA_MAX=2 JAVA_OPTS=$JAVA_OPTS JAVA_HOME=$PWD/.java-buildpack/open_jdk_jre exec $PWD/.java-buildpack/tomcat/bin/catalina.sh run",

最后一行的$PWD/.java-buildpack/tomcat/bin/catalina.sh run是我们非常熟悉的tomcat启动脚本。

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

展开阅读全文

学习NetWeaver,如何开始

06-12

北京航空航天大学rnNetWeaver和HR方向SAP硕士介绍rnrn“如果停止使用SAP,德国经济宣告崩溃,美国硅谷将一片黑暗” rn——Gartner 全球最知名IT研究集团rnSAP硕士介绍rnSAP是全球最大的三家软件公司之一,最大的企业管理解决方案供应商,SAP顾问是全球薪水职位最高的岗位之一,他们为全球的各行业领袖企业搭建SAP企业信息化管理解决方案,他们不仅需要具备丰富的管理知识和行业经验,同时还需具备娴熟的SAP方案知识能力。rn由于门槛高,SAP硕士是进入SAP顾问的捷径,在SAP中国的支持下,北京航空航天大学携手博克教育开设的SAP硕士专业经过2年多的发展,现有SAP财务、物流两个培养方向。08年春季最新增加NetWeaver和HR两个市场紧缺的专业,现已开始招生。rn一、 北航SAP NetWeaver专业方向简介rn背景介绍rnSAP的新一代企业级服务架构(ESA)的技术引擎—NetWeaver 能使企业轻松适应变化,并保持低成本运营。 rnSAP Netweaver作为一个广泛和兼容的技术平台,可以与企业客户的IT架构共同运作。这种新的平台允许用户自由选择操作系统,无论是Unix、Linux还是微软的操作系统。事实上,SAP NetWeaver几乎涵盖了所有电子商务会用到的技术。而作为SAP的集成和应用平台, NetWeaver很自然的集吸引力,强制性和不可避免性于一身。正是由于SAP新一代技术平台 NetWeaver的强制性和不可避免性,使得SAP NetWeaver顾问大量紧缺。rnrn课程大纲:(每年略有调整)rnrn  序号 课程名称rn概览课程rn  1 SAP 产品模块概览rn 2 SAP Basisrn 3 SAP NetWeaverrn 4 Technology solutions powered by SAP NetWeaverrn   SAP J2SE Fundamentalsrn    rn专业方向课程 10 ABAP Wrokbench Foundationsrn 11 ABAP Reportingrn 12 Programming User Dialogsrn 13 ABAP Dictonaryrn 14 ABAP Web Dynprorn 15 Web Dynprorn 16 Advanced Jave Webdynprorn 17 SAP NW Development Infrastructurern注:此方向录取人数不足开班人数下限40人,则调整到财务、物流方向,或者等待下期一起开课。rn二、 北航HR人力资源管理方向简介rnrn背景介绍rnmy SAP HR是全球市场占用率最大的人力资源管理软件,迄今已有超过7,800家企业选用它来搭建HR管理平台,管理的企业员工数超过32,000,000人。作为mySAP.com电子商务平台套件中的一个重要组件,mySAP HR既可基于C/S和B/S 架构,也能根据C/S与B/S的混和架构进行配置,具有完整、成熟的人力资源管理功能。 rnrn课程大纲(每年略有调整)rnrn  序号 课程名称rn概览课程 1 SAP 产品模块概览rn 2 SAP Basisrn 3 SAP NetWeaverrn 4 SAP人力资源管理rn 5 SAP顾问指导rn 6 SAP 物料管理rn 7 SAP 销售与分销rn 8 SAP生产计划rn 9 SAP财务管理概论rn    rn专业方向课程 10 人力资源管理基础rn 11 薪资管理rn 12 主数据配置rn 13 招聘管理rn 14 利益管理rn 15 薪资管理配置rn 16 组织管理rn 17 人力资源报告rn注:此方向录取人数不足开班人数下限40人,则调整到财务、物流方向,或者等待下期一起开课。rn以上专业报考条件:rn1. 所有考生必须具有国民教育序列本科学历rn2. 应届毕业生专业不限(计算机,软件,信息工程,管理类优先)rn3. 企业内从事项目管理以及产品开发的人员、部门经理、项目经理和各种管理工作,如市场营销、生产计划、物流、财务、采购、人力资源和政府官员等在职人员rn4. 具备一定的英语听、说能力,良好的读、写能力,品德端正,身体健康rn考试时间:rn1.08年3月份(自主招生考试),08年5月入学rn2.08年6月份(自主招生考试),08年10月入学rn3.08年10月份全国GCT联考,09年5月入学rn4.08年12月份(自主招生考试),09年5月入学rn咨询热线rnrn北航咨询:010-82336009、82338520/21-8805 董老师rn博克咨询热线:010-82336003 方老师rn详情请登陆:http://soft.buaa.edu.cn/beihangsoft.cn/sap/index.asp http://www.erptraining.cn rn 论坛

没有更多推荐了,返回首页