`
michales003
  • 浏览: 397106 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

GridLink

 
阅读更多

博客转自:http://space.itpub.net/707491/viewspace-714052

 


 

一.概述

GridLink是WebLogic 10.3.4版本推出的新特性,引入Jdbc 11g version驱动,全面支持Oracle 11G RAC AWM的特性,包括我之前写的SCAN新特性。
WebLogic被Oracle公司收购后,先是版本跟随数据库版本走,例如10.3.0命名为10g R2,10.3.1命名为11g R1,WebLogic越来越跟数据库亲密,我想是一家的东西要高度粘合,便是走上为企业应用提供成套的解决方案。WebLogic是J2EE企业级应用服务器,是J2EE应用跟DB之间的纽带,进而为两者提供高可用性的纽带环境。
 

二.Link意在何处?
 
题目中的Link意为WebLogic连接DB的方式,这里的连接自然是JDBC Thin方式连接的,WebLogic是J2EE的容器,自身也是由Java语言编写。
 
至今WebLogic提供了五种配置对于Jdbc Thin方式连接Oracle RAC,如下:
1.GridLink Data Sources
2.Configuring Connections to Services on Oracle RAC Nodes(XA)
3.Configuring Connections to Services on Oracle RAC Nodes(No-XA)
4.Multi Data Sources with Global Transactions
5.Multi Data Sources without Global Transactions
 
其中GridLink Data Sources方式支持使用services,实现Load Balancing(负载均衡)和Failover(故障转移)。在Oracle Database 10g引入Automatic Workload Management,即数据库服务,区别与传统的数据库服务。
 
三.GridLink的真面目
 
WLS GridLink是WLS10.3.4新推出的Data Source类型,提供了针对Oracle RAC数据库与WLS之间的连接功能。GridLink通过Oracle通知服务(ONS)来获取Oracle RAC实例的状态变化。WLS可以通过Oracle RAC灵活的数据库服务设计来满足其需求,也可以由数据库服务的增加而扩展而不需要关注RAC 集群中的物理结构变化。
连接示意图如下:
GridLink提供了以下功能:
1.简化和统一了对RAC连接配置的模块。
2.支持Fast Connection Filover(FCF)。
3.支持Runtime Connection Load Balancing(RCLB)。
4.支持Single  Client Access Name(SCAN)。
5.Oracle RAC停机的正常处理。
本篇文章为概述,此系列文章将对上面特性做一 一分析和配置向导。
 
四.Oracle ONS(Oracle NOtification Service)和FAN(Fast Application Notification)
 
Oracle RAC通知服务(ONS)是由集群维护的,为nodeapps组。如:
查看ons服务状态
$crsctl status resource ora.ons
AME=ora.ons
TYPE=ora.ons.type
TARGET=ONLINE    , ONLINE
STATE=ONLINE on rac1, ONLINE on rac2
$srvctl status nodeapps
ONS daemon is running on node: gwrac1
ONS daemon is running on node: gwrac2
ONS服务,由srvctl工具来维护,另外onsctl工具也可以维护,还可以跟踪ons的信息。下面是查看ons配置信息:
$srvctl config nodeapps -s
ONS daemon exists. Local port 6100, remote port 6200
 
Oracle RAC FAN为RAC applications和client提供集群状态和节点负载的情况,通过ONS将这些事件发布给Java client和Oracle的客户端,让它们得知当前RAC的情况,做出相应的处理,例如:客户端请求的分布。
 
基于以上的特性,Oracle称其为高可用性、高可靠性、高可扩展性的,这个形容太响了。附上Oracle为此做的一张PPT。

 

 

 

###############################################################

篇幅2:

 

参考文档: http://blog.iaskengineer.com/andrew/entry/weblogic_10_3_4%E6%96%B0%E5%8A%9F%E8%83%BD_gridlink

 

Bea被Oracle收购以后,我们可以看到WebLogic和Oracle数据库之间的更紧密结合。

刚刚合并以后推出的10gR3(10.3.0)版本中,原来Bea使用的Data Direct Driver被放弃,官方推荐使用Oracle的thin driver:

Note:    The WebLogic Type 4 JDBC Oracle driver described in this document has been deprecated as of release 10.3 of WebLogic Server. It will be removed in the next release of WebLogic Server. Instead of this deprecated driver, use the Oracle Thin Driver that is also provided with WebLogic Server.

现在在WebLogic 10.3.4中,为了增强对RAC的支持,Oracle推出了Gridlink Data Source,取代原先的Multi Data Source:

http://download.oracle.com/docs/cd/E17904_01/web.1111/e13737/jdbc_intro.htm#BHCBACAG

Enhanced Oracle RAC Support

This release provides a new data source type, a GridLink Data Source, to provide enhanced support for Oracle RAC.
Multi Data Source

原来的Multi Data Source的工作原理是为每台RAC的结点配置一个Datasource,然后把所有的这些Datasource聚合起来配置一个Multi Data Source。虽然Multi Data Source也提供Failover(容错)和Load Balancing(负载均衡),但是功能相对有限。

1) 配置比较复杂

需要为每一个RAC 结点手动配置一个Data Source,添加和删除节点都需要WebLogic管理员手动操作。

2) Failover是data source级别的,不是connection 级别的

Multi Data Source需要开启Test Reserved Connections (TestConnectionsOnReserve)功能。这个功能开启以后,当应用向一个Data Source申请一个Connection的时候,WebLogic server需要先测试这个Connection再返回。如果这个测试失败,WebLogic会重建一个连接。如果重建再失败,Data Source就会被标识成dead,然后WebLogic自动Failover到下一个Multi Data Source里面的Data Source。

当一个Data Source被标识成dead以后,WebLogic会主动的每隔一段时间(缺省120秒)查询数据库结点。如果测试成功,这个Data Source会被重新启用。

对一个已经获得并在使用的connection,WebLogic无法实现Failover。

3)Load Balancing仅仅是简单的round robin

如果一个应用开启了多个Connection,那么根据round robin的原则,这多个Connection可能会来自多个不同的数据库结点。这个实际上有性能上的影响。

Gridlink Data Source

新推出的Gridlink Data Source相对来说更有效率,因为它很大程度上借助了数据库的功能。它使用了Oracle的ONS(Oracle Notification Service)的特征。看下图:

 


数据库RAC端的ONS服务采集RAC结点的运行数据。这些数据传给Gridlink Data Source的ONS监听客户端。UCP-RAC模块分析这些数据并给出建议,Gridlink Data Source通过这些数据/建议来实现连接池的Failover,Load Balancing和其他的一些特性。

我们来看看Gridlink Data Source的一些改进功能:

1)首先,配置变得简单了

你只需要配置一个Gridlink Data Source,它就会处理与后台的RAC数据库的通讯。相对Multi Data Source,WebLogic管理员的工作量减少很多。

如果你配置了Oracle的SCAN服务就更简单了,RAC结点的添加删除都是自动完成,因为对Gridlink Data Source来说,它只知道一个SCAN地址就好了。就好象一个域名一样,你不需要知道后面用了多少IP来实现。

2)更快速有效的Failover

使用ONS,Gridlink Data Source可以实时的捕捉到RAC端的信息。如果有结点出错,Gridlink Data Source很快将与其对应的Connection标识为不可用。这样就避免了Multi Data Source中需要不断主动测试Connection所带来的overhead。

3)实时的Load Balancing

同样因为ONS的数据,Gridlink Data Source可以知道哪些RAC结点很忙,哪些很闲,于是它可以有效的将哪些来自空闲RAC的Connection分配给应用请求,实现实时的Load Balancing。

4)沉稳应对RAC结点的关闭

如果是有计划的关闭,Gridlink Data Source会等当前Active的事务结束再关闭Connection。新的Connection请求将被发送到其他的RAC结点。

如果是突发的RAC结点关闭,Gridlink Data Source也会沉着的将当前的事务rollback,然后将新的Connection请求发送到其他的RAC结点。

5)全局事务的Connectoin会尽量在一台RAC结点上

前面讲过Multi Data Source的Round Robin策略会造成同一个事务的多个Connection被发送到不同的RAC结点上。

Gridlink Data Source在一个事务的第一个Connection创建后会将该事务的所以后续Connection请求发送到同一个RAC结点上。这样可以减少后台同步处理,提高全局事务的运行效率。

创建Gridlink Data Source

创建的过程不复杂,和一个普通的Data Source差不多,都从这里开始:


名字之类的配置,注意数据库类型就是Oracle,呵呵,当然了,RAC就是Oracle的:


XA的配置页面掠过,到了输入RAC地址的页面:


其实两个选择都一样,一个是一个一个的添加server,然后由WebLogic生成JDBC URL:


一个是自己输入JDBC URL:


没有区别,怕写错就让WebLogic生成,掠过测试页面,下一步就是关键的ONS客户端配置:


如果您使用SCAN的话,这里可以就输入SCAN的地址。

Wallet可以用来加密ONS的通讯,这里不表。

掠过测试页面,只要target一下就好了

 

 

  • 大小: 64.9 KB
  • 大小: 30.3 KB
分享到:
评论

相关推荐

    weblogic11g安装配置

    weblogic11g 安装配置,5、1 创建...5、5 创建gridlink(jdbc连接池) 23 5、6 部署应用程序 26 5、7 程序部署成功验证 27 5、8 F5 测试集群的高可用性和故障转移 28 6、修改weblogic核心参数 30 6、1 JDBC参数修改 30

    Weblogic手册.rar

    1.3、Gridlink 数据源的配置 31 2、Web应用部署 36 四、Weblogic 12c日志 39 1、日志文件概要 39 2、设置日志文件 40 2.1、服务器日志文件 40 2.1、DOMAIN日志文件 40 3、日志默认规则 41 3.1、服务器日志 41 ...

    基于matlab实现的空间调制通信过程,包含信号调制、天线选择等发送过程,以及采用最大似然估计的检测过程 .rar

    基于matlab实现的空间调制通信过程,包含信号调制、天线选择等发送过程,以及采用最大似然估计的检测过程。.rar

    基于matlab的关于生猪养殖场经营管理的研究.docx

    本文档是课题研究的研究报告内含调研以及源码设计以及结果分析

    网络作为特征提取器-python源码.zip

    网络作为特征提取器-python源码.zip

    JavaScript-javaweb项目

    JavaScript-javaweb项目

    node-v12.11.0-linux-arm64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    仿Slideby触屏版html5响应式手机wap网站模板下载.zip

    触屏版自适应手机wap软件网站模板 触屏版自适应手机wap软件网站模板

    node-v10.18.1-linux-arm64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    IEC 60695-11-3:2012.pdf

    IEC 60695-11-3:2012.pdf

    2021-2010上市公司和讯网社会责任评级CSR-股东员工客户消费者环境社会责任分项评级

    上市公司和讯网社会责任评级CSR-股东责任员工责任客户消费者环境社会责任分项评级 得分(2010-2021年) "中国上市公司-和讯网社会责任数据"是 一份来自和讯网的数据集,它同步并收集了中国上市公司关于社会责任的相关信息。包括了 公司在股东责任、员工责任、供应商客户消费者权益责任、环境责任、社会责任中的表现和 成绩,以反映公司承担社会责任的程度。可以帮助大家了解公司在承担社会责任方面的具体 表现。这对于研究公司社会责任与公司业绩、公司声誉、公司风险等方面的关系具有参考意 义。 一、数据介绍 数据名称:上市公司和讯网社会责任评级CSR-股东责任员工责任 客户消费者环境社会责任分项评级得分 数据年份:2010-2021年 样本数量:每 年含2300-4600左右上市公司数据,总数据量40058条(注:因披露口径原因 ,2021年仅有430+上市公司数据) 数据格式:Excel面板数据 二、指标说 明 共计11个指标:股票名称、股票代码、年份、总得分、等级、股东责任、员工责任、 供应商客户和消费者权益责任、环境责任、社会责任、统计日期 三、部分excel数据 展示

    使用opencv进行人脸识别和对比-python源码.zip

    使用opencv进行人脸识别和对比-python源码.zip

    EmotionVGGnet情绪识别-python源码.zip

    EmotionVGGnet情绪识别-python源码.zip

    node-v12.1.0-linux-arm64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    MediaPipe人体姿势估计-python源码.zip

    MediaPipe人体姿势估计-python源码.zip

    构造并使用决策树进行分类-python源码.zip

    构造并使用决策树进行分类-python源码.zip

    <2024年5月软考高项极限冲刺>《1 考试简介》

    <2024年5月软考高项极限冲刺>《1 考试简介》

    【特效超多】仿德国开元旅游触屏版html5手机wap旅游网站模板下载.zip

    【特效超多】仿德国开元旅游触屏版html5手机wap旅游网站模板下载.zip

    JSP基于WEB网上论坛设计与实现(源代码+论文+开题报告+答辩PPT+外文翻译).zip

    JSP基于WEB网上论坛设计与实现(源代码+论文+开题报告+答辩PPT+外文翻译)

    仿YOKA服饰美容3G手机wap女性网站模板.zip

    触屏版自适应手机wap软件网站模板 触屏版自适应手机wap软件网站模板

Global site tag (gtag.js) - Google Analytics