我需要有关extjs的消息传递和排队中间件系统的帮助

我开发了一个由软件和硬件交互组成的系统。 基本上它是一个交易系统,其中交易细节在PCI设备上加密,然后返回到我的基于网络的系统,在那里它存储在数据库中,然后在浏览器中使用javascript / extjs显示。 我现在如何执行以下操作:</ p>

事务编码过程</ strong> </ p>

1.用户从中选择一个事务 网格并按下“编码”按钮,然后extjs / js将字符串发送到PHP,然后将其格式化并插入到requests [incoming_request]中。 在这个阶段,我启动一个extjs任务管理器对结果的请求[响应]列进行间隔检查,并显示“请稍候......”消息。</ p>

2.I 创建了一个python守护程序服务,监视请求表中任何要编码的事务。然后python守护程序接收任何请求[incoming_request]然后对请求进行编码并将结果存储在requests [response]表中。</ p>
\ n

3.然后,extjs任务管理器获取事务的请求[响应]并将其显示给用户,然后删除“请稍候...”消息并终止任务管理器。</ p>
\ n

现在我的问题是:使用第三方消息传递和队列中间件系统是否有更好的方法来执行此加密过程? 如果是这样,请帮忙。</ p>

谢谢!</ p>
</ div>

展开原文

原文

I developed a system that consists of software and hardware interaction. Basically its a transaction system where the transaction details are encrypted on a PCI device then returned back to my web based system where it is stored in a DB then displayed using javascript/extjs in the browser. How I do this now is the following:

Transaction encoding process

1.The user selects a transaction from a grid and presses "encode" button,extjs/js then sends the string to PHP where it is formatted and inserted into requests[incoming_request]. At this stage I start a extjs taskmanager to do interval checks on the requests[response] column for a result, and I display a "please wait..." message.

2.I have created a python daemon service that monitors the requests table for any transactions to encode.The python daemon then picks up any requests[incoming_request] then encodes the request and stores the result in requests[response] table.

3.The extjs taskmanager then picks up the requests[response] for the transaction and displays it to the user and then removes the "please wait..." message and terminates the taskmanager.

Now my question is: Is there a better way of doing this encryption process by using 3rd party Messaging and Queuing middleware systems? If so please help.

Thank You!

1个回答



我会这样改变:</ p>


  • make PHP block and wait 直到Python守护程序完成处理事务</ li>
  • 增加Ext.data.Connection()中的超时,以便它等到PHP响应</ li>
  • 删除Ext.MessageBox和 处理Ext.data.Connection()中回调处理程序中的可能错误</ li>
    </ ul>

    即 而不是等待事务在JavaScript中完成(这需要多次调用Web服务器),您现在正在等待PHP。</ p>

    这假设您正在使用Ext.data.Connection() 调用PHP处理程序 - 如果使用任何其他Ext对象,原则是相同的,但超时设置/完成处理会有所不同。</ p>
    </ div>

展开原文

原文

I would change it this way:

  • make PHP block and wait until Python daemon finishes processing the transaction
  • increase the timeout in the Ext.data.Connection() so it would wait until PHP responds
  • remove the Ext.MessageBox and handle possible errors in the callback handler in Ext.data.Connection()

I.e. instead of waiting for the transaction to complete in JavaScript (which requires several calls to the webserver) you are now waiting in PHP.

This is assuming you are using Ext.data.Connection() to call the PHP handler - if any other Ext object is used the principle is the same but the timeout setting / completion handling would differ.

doulan9419
doulan9419 在插入请求的同一PHP处理程序中,在插入请求后,您需要等待响应可用(或达到超时)。 你基本上只是无休止地循环(在循环中使用类似sleep(1)的东西)并检查响应是否可用。 这基本上“阻止”您的PHP请求,直到响应可用。 根据应用程序的规模,您可能需要配置Web服务器以支持比当前更多的并发会话。 我们现在正在谈论100个用户,而不是10-20个用户。
10 年多之前 回复
dongyi2083
dongyi2083 感谢您的回复我将对我的代码进行更改以确定它是否能正常工作。 虽然你能为我提供一个如何做到这一点的例子:1。使用PHP块并等到Python守护进程完成处理事务>>>守护进程基本上更新了我的请求表和结果
10 年多之前 回复
立即提问
相关内容推荐