AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 630330
Accepted
fgysin
fgysin
Asked: 2014-09-23 06:52:05 +0800 CST2014-09-23 06:52:05 +0800 CST 2014-09-23 06:52:05 +0800 CST

WLS:识别数据库会话源自的托管服务器

  • 772

我们正在使用 WLS 服务器,我们在其上配置数据源 (DS) 和托管服务器。

出于故障转移的原因,我们的主应用程序被部署在两个独立的托管服务器上(我们称它们为app_1和app_2)——但是这两个服务器都使用相同的数据源。

数据源是 Oracle DB 的 JDBC 数据源。

+-----------------------------+
| WLS Domain                  |
|-----------------------------|
|+------------+ +------------+|
||            | |            ||
||   app_1    | |   app_2    ||
||            | |            ||
|+-----|------+ +-----|------+|
|+-----v--------------v------+|
||        Data Source        ||
|+-------------|-------------+|
+--------------|--------------+
               |
         +-----V-----+
         |           |  session1, session2, session3, ...
         | ORACLE DB |  
         |           |                  ~is session1 from app_1 or app_2?
         +-----------+

现在我们的问题:

  • 我们希望能够在数据库端识别某个数据库会话源自哪个托管服务器(即app_1或app_2)。

问题是:
由于两个托管服务器都访问相同的数据源,因此在数据库上打开的数据库会话(到目前为止)无法区分。这是一个可以解决的问题吗?还是 WLS 托管服务器使用域配置数据源的方式只是设置为使托管服务器对数据库后端完全不可见?

我们已经尝试使用“init SQL”机制将会话元信息添加到 Oracle DB 会话。但是由于数据源是以与服务器无关的方式设置的,因此 init SQL 不能包含有关最终将使用它的托管服务器的任何信息。

database
  • 1 1 个回答
  • 152 Views

1 个回答

  • Voted
  1. Best Answer
    Gustavo Maia
    2015-02-14T06:57:08+08:002015-02-14T06:57:08+08:00

    如果您的托管服务器位于同一台主机上,我相信没有本地方法可以找到它。如果它们在不同的主机上,您可以使用 Oracle 端 v$session 上的 machine 列来识别它的来源。

    另一种选择是使用一些监控/分析工具。我不确定哪些会告诉你数据库上的会话 id,但他们肯定可以告诉你在数据库上做了什么。我使用的可以执行此操作的工具有: - 安装了 JVM 诊断的 Oracle 企业管理器;- CA IntroScope(我相信现在称为 CA APM);- Compuware 动态跟踪;- 应用动力学。

    我敢肯定还有很多。

    • 0

相关问题

  • 为海量数据库和许多表优化 PHPMyAdmin 配置

  • 什么是多级数据库?

  • 用于 UNIX 域套接字的 mysqldump

  • 好的数据库初学者书籍?[关闭]

  • 将大型数据集快速批量导入 MySQL

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve