CICS8-CTG9-MQ7-WAS8-DB2.97-ORACLE11G-MySQL5.5-POSTGRESQL9.4 虚拟机环境文件下载

博主搭建好的cics8,ctg9,mq7,was8,db2.97.oracle11g,mysql5.5,postgresql9.4 虚拟机环境下载, 链接:https://pan.baidu.com/s/1BnIBsyFS7SG1UCtBpGpY9g
提取码:fumz  下载后用vmware  workstation 打开 即可以使用。

IBM TXSeries是集成了业界最强大交易中间件的完整分布交易管理系统。这种组合为您提供了一组功能,帮助您增强电子商务,开发应用最新技术,并充分利用现有的业务系统。 

TXSeries提供了包含下列部件的开发平台:

交易处理

·分布式CICS

·Encina

对象支持

·CICS Foundation Classes

·CORBA Object Transaction Service(OTS)

·Encina++

集成和应用程序开发

·CICS系统间通讯

·MQSeries消息处理

·X/Open 的XA、TX、TxRPC和CPI-C

·Encina远程过程调用(RPC)

·Encina++远程方法调用

e-business

·Domino Go Webserver

·Java Clients 和Java Beans

·3270-HTML网关

CICS系统是IBM大型机上的重要的交易处理系统,并且由于大型机的特殊性,导致CICS的已有应用程序对分布式平台开放不够,难以重用以往的应用程序。因此,CICS与分布式系统的交互,即外界如何访问CICS传统应用,成为一个重要的课题。
而CTG(CICS Transaction gateway,以下简称为CTG),CICS交易网关,是分布式平台连接到CICS的首选工具,它具有高性能,高安全性,高可扩展性等特性。
CTG与CICS的连接属于直接相连的方式,几乎不用修改CICS的已有应用,即可被外界访问。Web Services 同样可以实现与CICS的连接,但是相比于Web Services,CTG有以下优势:
(1)没有复杂的标准,技术相对成熟。
(2)利用已有的应用程序接口,很少需要对CICS程序进行修改。
1.1.2 CTG结构图

博主搭建好的cics8,ctg9,mq7,was8,db2.97.oracle11g,mysql5.5,postgresql9.4 虚拟机环境下载, 链接:https://pan.baidu.com/s/1BnIBsyFS7SG1UCtBpGpY9g
提取码:fumz  下载后用vmware  workstation 打开 即可以使用。

 相关概念介绍:
1. Gateway Daemon (网关守护程序):网关守护程序用于监听远端客户程序的请求,并且可以管理线程和网络连接,以达到优化的目的。网关守护程序中的一个重要组件是协议处理器(Protocol Handler),用于处理远端应用程序的请求,可以支持TCP/IP和SSL协议。
2. Client Daemon (客户机守护程序):客户机守护程序是开放平台CTG的重要组成部分,它提供一个本地接口,客户应用程序就通过这个接口连接到CICS,支持C,C++,.Net,COBOL等多种语言的应用程序。
3. IPIC driver (IPIC 驱动器):IPIC驱动器是CTG中的一个独立组件,作用类似于客户机守护程序,专用于IPIC方式连接到CICS。CICS在3.2版本中引入了IPIC(IP Intercommunication)的概念,用于CICS region之间的互连,这种连接是基于TCP/IP协议的,具体的IPIC概念请参考其他相关章节。从CTG V7.1版本以后,加入了对IPIC的支持。
4. CTGCFG tool(CTG configuration tool,CTG配置工具):CTG产品自带的图形化配置工具,用于设置ctg.ini配置文件中的属性,包括网关守护程序和客户机守护程序等的相关参数。
IBM WebSphere MQ为SOA提供可靠的消息传递。它为经过验证的消息传递主干, 全方位、 多用途的数据传输, 并帮助您搭建企业服务总线的传输基础设施。
消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。
IBM WebSphere MQ 支持两种不同的应用程序编程接口:Java 消息服务(JMS)和消息队列接口(MQI)。在 IBM WebSphere MQ 服务器上,JMS 绑定方式被映射到 MQI。应用程序直接与其本地队列管理器通过使用 MQI 进行对话,MQI 是一组要求队列管理器提供服务的调用。MQI 的引人之处是它只提供 13 次调用。这意味着对于应用程序编程员它是一种非常易于使用的接口,因为大部分艰苦工作都将透明完成的。
IBM WebSphere MQ 产品支持应用程序通过不同组件如处理器、子系统、操作系统以及通信协议的网络彼此进行通信。
WebSphere 是 IBM 的软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的软件。
WebSphere Application Server 是该设施的基础,其他所有产品都在它之上运行。WebSphere Process Server 基于 WebSphere Application Server 和 WebSphere Enterprise Service Bus,它为面向服务的体系结构 (SOA) 的模块化应用程序提供了基础,并支持应用业务规则,以驱动支持业务流程的应用程序。高性能环境还使用 WebSphere Extended Deployment 作为其基础设施的一部分。其他 WebSphere 产品提供了广泛的其他服务。
WebSphere 是一个模块化的平台,基于业界支持的开放标准。可以通过受信任和持久的接口,将现有资产插入 WebSphere,可以继续扩展环境。WebSphere 可以在许多平台上运行,包括 Intel、Linux 和 z/OS。
WebSphere 是随需应变的电子商务时代的最主要的软件平台,可用于企业开发、部署和整合新一代的电子商务应用,如B2B,并支持从简单的网页内容发布到企业级事务处理的商业应用。WebSphere 可以创建电子商务站点, 把应用扩展到联合的移动设备, 整合已有的应用并提供自动业务流程。
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本。
DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于所有常见的服务器操作系统平台下。 DB2提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和SQL命令。DB2采用了数据分级技术,能够使大型机数据很方便地下载到LAN数据库服务器,使得客户机/服务器用户和基于LAN的应用程序可以访问大型机数据,并使数据库本地化及远程连接透明化。 DB2以拥有一个非常完备的查询优化器而著称,其外部连接改善了查询性能,并支持多任务并行查询。 DB2具有很好的网络支持能力,每个子系统可以连接十几万个分布式用户,可同时激活上千个活动线程,对大型分布式应用系统尤为适用。
DB2除了可以提供主流的OS/390和VM操作系统,以及中等规模的AS/400系统之外,IBM还提供了跨平台(包括基于UNIX的LINUX,HP-UX,SunSolaris,以及SCOUnixWare;还有用于个人电脑的OS/2操作系统,以及微软的Windows 2000和其早期的系统)的DB2产品。DB2数据库可以通过使用微软的开放数据库连接(ODBC)接口,Java数据库连接(JDBC)接口,或者CORBA接口代理被任何的应用程序访问。
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。比如SilverStream就是基于数据库的一种中间件。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
Oracle数据库最新版本为Oracle Database 12c。Oracle数据库12c 引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。此外,一些创新特性可最大限度地提高资源使用率和灵活性,如Oracle Multitenant可快速整合多个数据库,而Automatic Data Optimization和Heat Map能以更高的密度压缩数据和对数据分层。这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c 成为私有云和公有云部署的理想平台。
博主搭建好的cics8,ctg9,mq7,was8,db2.97.oracle11g,mysql5.5,postgresql9.4 虚拟机环境下载, 链接:https://pan.baidu.com/s/1BnIBsyFS7SG1UCtBpGpY9g
提取码:fumz  下载后用vmware  workstation 打开 即可以使用。

阅读更多

WAS 6与Websphere MQ6的整合

WAS 6与Websphere MQ6的整合

整合 的目的是让MQ作为websphere application server的JMS provider,所有的JMS消息会被was转发到MQ队列 中,由于MQ提供了多种平台的API,因此消息的传递可以不再通过转发的方式。任何平台都可以直接连接到MQ获取/发送消息,减少了跨平台消息传递中的不 确定因素。

首先在MQ中建立队列管理器、消息队列、服务器连接通道(SYSTEM.DEF.SVRCONN类型的通道)。由于 was将通过CLIENT模式与MQ通信,所以有身份认证的问题,需要在信道上配置MAC用户标识,它的值应该是运行MQ的操作系统的一个用户名称,该用 户应该具有管理员权限,推荐使用启动MQ的用户名称。如果不配置该MAC用户标识,那么运行was的机器必须建立一个与运行MQ完全相同的用户/密码来启 动was,才能提供正确的身份信息。如果采用BINDINF的传输模式,就不需要任何的认证信息,但是该模式只能适用于was和MQ在同一台机器上的情 况。而且一个was环境中,只能允许一个连接工厂使用BINDING模式连接,所以不推荐该模式。
假设建立起来的队列管理器为 sobeymam,ccsid为1208(Unicode)或者1381(GB2312),通信端口为1414;建立的消息队列为test,ccsid为 1208(Unicode);服务器连接信道为s1,MAC用户标识为bromon。

下一步是在WAS中建立队列连接工厂,“资源”—-“JMS提供者”—-“Websphere MQ”—-“Websphere MQ队列连接工厂”—-“新建”。填写以下内容:

名称:                        cf
JNDI名称:                    jms/cf
队列管理器:                mam
主机:                        运行MQ的机器名或IP
端口:                        1414(与队列管理器的侦听端口对应)
通道:                        s1(与队列管理器的服务器连接通道对应)
传输类型:                    CLIENT
取消“已起用XA”选项

连接工厂的配置完成。

下一步是建立队列目标。“资源”—-“JMS提供者”—-“Websphere MQ”—-“Websphere MQ队列目标”—-“新建”。填写以下内容:

名称:                        test
JNDI名称:                    jms/test
基本队列名:                test(对应MQ中的本地队列)
CCSID:                        1208
目标客户机:                MQ

队列目标的配置完成。需要说明的是,目标客户机的值决定了JMS的消息将以什么格式存放在MQ中。如果是”MQ”,那么消息将直接使用MQSTR格式,纯 文本的存放,任何平台都能够获取消息直接显示。如果是”JMS”,那么消息将使用MSHRF2格式存放,java平台能够不加处理的正常识别,其他平台必 须要做转换才能正确获得消息文本。推荐使用”MQ”。

如果需要部署消息BEAN获取MQ中的消息,那么还需要配置侦听器端口,“服务器”—-“应用服务器”—-“server1”—-“通信”—-“消息传递”—-“消息侦听器服务”—-“侦听器端口”—-“新建”。填写一下内容:

名称:                            test
连接工厂JNDI名:                jms/cf(对应websphere队列连接工厂的JNDI)
目标JNDI名:                    jms/test(对应websphere队列目标的JNDI)

侦听器端口配置完成,部署消息bean时需提供该侦听器名称。

重启websphere使配置生效。

编写一个jsp尝试发送消息:

  1. <%@ page contentType=”text/html; charset=GBK”%>
  2. <%@ page import=”java.util.*”%>
  3. <%@ page import=”javax.jms.*”%>
  4. <%@ page import=”javax.naming.*”%>
  5. <%
  6. try
  7. {
  8. Properties p = new Properties();
  9. put(Context.INITIAL_CONTEXT_FACTORY,”com.ibm.websphere.naming.WsnInitialContextFactory”);
  10. put(Context.URL_PKG_PREFIXES, “com.ibm.ws.naming”);
  11. put(Context.PROVIDER_URL, “iiop://localhost:2809/”);
  12. InitialContext ctx = new InitialContext(p);
  13. QueueConnectionFactory qcf = (QueueConnectionFactory) ctx.lookup(“jms/cf”);//连接工厂
  14. QueueConnection conn = qcf.createQueueConnection();
  15. Queue q = (Queue) ctx.lookup(“jms/test”);//队列
  16. QueueSession s = conn.createQueueSession(false,QueueSession.AUTO_ACKNOWLEDGE);
  17. start();
  18. QueueSender sender = s.createSender(q);
  19. TextMessage tm=s.createTextMessage(“测试websphere mq有中文字符”);//创建文本消息
  20. send(tm, DeliveryMode.PERSISTENT, 4, 0);
  21. close();
  22. }catch(Exceptione)
  23. {
  24. println(e);
  25. }
  26. %>