我在我的网络应用程序中使用了以下技术堆栈
Apache
+--Drupal Web site
+-------Node.js web client
+------------RESTful APIs to business process (using spring)
+-----------------MySQL via ORM (like hibernate)
但是我不确定是否由于这个或其他一些原因,客户端请求似乎没有被异步处理或者在没有node.js的情况下更早地处理(是的,我在我的API和drupal页面之间引入了node.js)最近改善表现)
drupal是罪魁祸首并取消了Node.js的异步功能,因为用户会话现在由drupal管理,所有交互都是通过Apache然后是Drupal然后是Node.js
我在这里错过了什么?
答案 0 :(得分:0)
Drupal,或Apache,不是罪魁祸首。你的架构是。您的用户向Apache发出HTTP请求,Apache运行PHP向Node.js发出HTTP请求。因此,只有在处理对Apache的HTTP请求时才会发生从PHP代码到Node.js的HTTP请求。你放弃了Node.js的伟大。
有关集成node.js和Drupal的更好架构,请参阅Node.js integration模块。