【问题标题】:Request handling in node.js with IO from oracledb via knex.js使用来自 oracledb 通过 knex.js 的 IO 在 node.js 中处理请求
【发布时间】:2018-03-31 16:40:58
【问题描述】:

我想知道:Node 使用事件循环架构。我通过knex 连接到我的oracle RDBMS 并使用每个请求查询数据库。由于 oracle 没有响应式驱动程序,事件循环架构可以处理生产规模的请求吗?无论如何,无论是或否,它与mongo 提供的响应式驱动程序有何不同?

【问题讨论】:

  • 您能否指出您在 Mongo 中使用的“反应式驱动程序”?告诉我们更多关于您的用例 - 您如何使用响应式驱动程序? Oracle 数据库有一个称为高级队列的队列框架和对数据更改做出反应的方法,例如查询更改通知。虽然 Node.js 驱动程序还没有直接支持这些功能(计划是添加直接支持),但在 Node.js 中设置一个数据库可以调用的 Web 服务器很容易。我在这里谈论这个:youtube.com/watch?v=GPz3VY_0bXE
  • @DanMcGhan 抱歉,我的问题比较抽象,我对实现细节不感兴趣。我应该澄清一下reactive 我的意思是asyncnon-blocking。我来自java世界,似乎java在这两者之间有区别,而node没有这样的区别。我说的对吗?
  • 在 Node 中,几乎所有执行任何 IO (如网络)的库默认都是异步的。

标签: node.js oracle knex.js


【解决方案1】:

Oracle 数据库的 Node.js 驱动程序是完全异步/非阻塞的。它的所有异步操作都是使用 Node.js 的线程池完成的,以免阻塞主线程。你可能会发现我最近做的这个演讲很有趣(这是我最近尝试解释很多这些东西):Understanding Asynchronous Processing and Patterns in Node js

另外,我最近开始了一个关于在 Oracle 数据库上使用 Node.js 构建 REST API 的系列文章。 Database Basics 上的部分也涉及其中的一些内容。

【讨论】:

    猜你喜欢
    • 2021-10-26
    • 1970-01-01
    • 2021-07-31
    • 1970-01-01
    • 1970-01-01
    • 2020-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多