问题标签 [ucp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
estimation - 基于用例点的工作量估计
截至目前,我已经根据经验和最近使用功能点进行了工作量估算。
我现在正在探索 UCP,请阅读这篇文章http://www.codeproject.com/KB/architecture/usecasep.aspx。然后,我检查了基于用例点 (UCP) 的其他各种文章。我无法弄清楚它是如何工作的以及它是否正确。
例如,我有一个登录功能,用户提供用户名和密码,然后我检查数据库中的表以允许或拒绝登录。我将用户参与者和登录定义为用例。
根据 UCP,我将登录用例分类为简单,将 GUI 界面分类为复杂。根据 UCP 系数表,我得到 5 和 3,因此总数为 15。在应用技术因素和环境因素调整后,它变为 7。如果我将生产力因素设为 20,那么我将获得 140 小时。但我知道它最多需要 30 小时以及文档和测试工作。
我在这里定义用例时做错了吗?UCP 说如果界面是 GUI,那么它就很复杂,但这里的 gui 很简单,所以我应该降级这个因素吗?简单的因素也是 5,我应该将另一个级别定义为非常简单吗?但是我不是在这里把事情复杂化了吗?
sql-server - 如何在 SQL Server“标准版(64 位)”中启用实用程序控制点?
我试图在新的实用程序控制点名称下注册一个 64 位机器,得到以下“SQL Server 版本必须支持 UCP 创建。验证失败。指定的 SQL Server 实例不能用作实用程序控制点,因为该功能是SQL Server“标准版(64 位)”中未启用。有关详细信息,请参阅此操作的帮助主题。
java - 如何在 Oracle UCP 中使用 TimeToLiveConnectionTimeoutCallback
如何在 Oracle UCP(通用连接池)中使用 TimeToLiveConnectionTimeoutCallback?
我希望 PoolDataSource 或 UniversalConnectionPoolManager 有一个接口来注册这样的回调。我希望这样的接口会通过接口传递相关的连接。两者都不是真的。
似乎我必须向每个 UniversalPooledConnection 注册一个单独的 TimeToLiveConnectionTimeoutCallback,这在我看来很棘手、丑陋(大量 UCP 导入/胶水代码)和困难(创建一个 DataSource 包装器)。
还是我做错了什么?不幸的是,文档保持沉默。
oracle - Oracle OCI 连接池与 Oracle UCP
当 OCI 驱动程序用于 JDBC 连接时,Oracle 提供了 4 种不同的 JDBC 连接池机制:
- 甲骨文数据源
- Oracle OCI 连接池
- Oracle UCP(通用连接池 - 推荐使用 OracleDataSource)
- Oracle 数据库常驻连接池
与 OCI 驱动程序提供的 Oracle OCI 连接池相比,使用 Oracle UCP(通用连接池)的优缺点是什么?
jmx - Oracle UCP 不正确的 JMX 支持
我尝试了对通用连接池的 jmx 支持,它似乎给出了不正确的值。到目前为止我遇到了几个问题
- UniversalConnectionPoolManagerMBean 的 getConnectionPoolNames() 方法(操作)返回 void 而不是返回 Collection。
- UniversalConnectionPoolMBean 的 getStatistics() 方法(操作)会引发 NotSerializableException。
尽管有上述问题的解决方法,例如调用其他方法而不是上述方法,但问题似乎非常基本。有没有人试用过通用连接池 (ucp) 提供的 JMX 支持?
ucp - UCP(EMI) 协议的示例代码和 API
我想使用 UCP(EMI) 协议,谁能帮我如何使用它。请为我提供 C/C++ 中的 UCP(EMI) 协议 APi。
此致。
oracle - 通用连接池内存管理
我一直在尝试将我的 ojdbc 代码从 ojdbc14-10.2.0.1.0 升级到 ojdbc6-11.1.0.7.0。我们一直在使用 OracleConnectionCacheImpl 进行数据源连接,然后使用 OracleDataSource 作为核心移动到通用连接池。这是我们目前在 Spring 中配置它的方式:
在没有关闭连接错误的情况下运行它需要一些时间,但现在我遇到了内存管理问题。我已经针对使用 ThreadPool 的应用程序运行 jconsole。此应用程序使用线程池并使用 ThreadPoolExecutors 根据从文件传递的数据创建费用请求。一个文件可以有数十万个费用请求。我的问题是堆中的长期内存正在填满并且没有释放对象。在我设置的性能测试中,垃圾收集中的长期内存在大约 20-25 分钟内被填满,并且永远不会释放。应用程序最终遇到 GC 限制超出异常并停止运行。
当我使用旧的 OracleConnectionCacheImpl 类运行相同的测试时,它运行起来没有问题。假设线程池和所有附带的代码都是使用旧版本的 Spring (1.2.6) 和旧的 ojdbc 驱动程序编写的,但是 OracleConnectionCacheImpl 的工作方式与通用连接池的工作方式真的有那么大的区别吗?如果我想适应 Oracle 的 JDBC 驱动程序代码的最新版本,我是否正在考虑重写我的域模型。我已经尝试过 OracleDataSource 连接,但在同时处理多个文件后,它因 NullPointerExceptions 而失败。然后我去了UCP(根据本论坛另一篇帖子的建议),它在除一个应用程序之外的所有应用程序中都可以正常工作。此时我' 我试图弄清楚我是否可以为我的数据源进一步优化 Spring 配置 bean,或者我是否需要开始考虑升级代码库。如前所述,这段代码在旧的 ojdbc 类上运行得非常好,但我在尝试实现 UCP 的每一步都遇到了问题。我开始怀疑它是否值得升级。
java - Oracle UCP - FCF 计划内中断支持
我正在测试来自 Oracle 通用连接池 (UCP) 版本 11.2.0.1.0 的快速连接故障转移 (FCF) 支持。正在尝试的场景是计划中的中断事件。Oracle Database 11g Release 11.2.0.2.0 标准版是正在使用的数据库版本。以下是我在测试中遵循的步骤
- 获取连接并打印它连接到的实例
- 在其中一个节点上执行“srvctl stop instance -d -n”
- 对第一步中检索到的连接执行查询。
第 3 步失败并出现错误(ORA-03113:通信通道上的文件结束),因为它是计划中的中断事件。分析 ucp 日志,我可以看到 FAN 事件由 jdbc 客户端接收并通过将连接状态标记为“STATUS_CLOSE_ON_RETURN”进行处理,但仍然使用借用的连接执行查询失败。
预期结果是对借用连接执行的任何查询都会成功,并且连接仍然有效,直到它返回到池中。之后它应该被游泳池关闭。在完成此操作之前,停止实例命令不应成功。
我在配置中缺少什么吗?上面的 srvctl 命令是否正确?
Oracle 池配置如下
oracle - Oracle UCP 驱动程序和 tomcat:线程无法停止
我们在 tomcat 6 中使用 Oracle UCP 驱动程序(Oracle 通用连接池)。它或多或少像 Oracles Howto中的配置。问题是驱动程序启动了很多线程(Thread-0 到 57,UCP-worker-thread-1 到 24),这些线程在服务器关闭时并未停止 - tomcat 会发出大量错误消息,如下所示:
Web 应用程序 [/xxx] 似乎已经启动了一个名为 [Timer-17] 的线程,但未能停止它。这很可能造成内存泄漏。
知道如何处理吗?
ucp - 使用 UCP 和 DataDirect 驱动程序连接到 Oracle
我正在尝试使用 UCP 和 Oracle 的 DataDirect JDBC 驱动程序连接到 Oracle 数据库。我需要使用的 URL 是什么。我目前正在使用以下内容。
我收到错误原因:java.sql.SQLException:[DataDirect][Oracle JDBC Driver]如果指定了端口号,则必须指定主机名。
为什么我会收到此错误?是否可以将 UCP 与 DataDirect JDBC 驱动程序一起使用?