Node.js是否可以对JDBC进行异步调用

时间:2016-01-11 20:15:04

标签: node.js multithreading rdbms

我理解Node.js的强大之处在于它处理一个单线程上的所有用户请求,该线程处理请求的队列。这个想法没有这个线程的上下文切换,没有系统调用。
输入线程---> |请求队列| --->输出线程 - (如果不引起系统调用则处理任务,否则委托给线程池) 线程池将: -   - 执行涉及系统调用的任务(通常有点长时间运行)    一个...例如IO任务)   - 将结果作为另一个请求任务放入队列中..   - 将由处理队列的单线程处理 我的问题是,不可避免的是,Node.js代码需要将数据放入RDBMS或JMS系统中。这绝对是同步的(即使JMS是同步的,尽管生产者 - 消费者不同步)。因此,处理这些IO任务的线程池不仅会进行系统调用,还会在此期间被阻止。 JDBC在任何情况下都不支持同步调用(我想由于需要是事务性的,并且可能是安全问题,因为txn和安全上下文附加到线程)。
那么我们如何从Node.js服务器中有效地将数据放入RDBMS中呢?

0 个答案:

没有答案