解決策ではありませんが、この問題に関するいくつかの経験の言葉...
Magento の API は遅くなる可能性があり、特にサーバーに負荷がかかっている場合、ユーザーはタスクが完了するまで永遠に待機します。Magento と POS 間のすべての更新/ダウンロードを処理するために Java を使用して構築した Magento の SOAP API を使用する別のアプリケーションを使用します。このようにして、ユーザーは遅い応答を待ったり、接続が失われて停止したりすることはありません。
キュー アプローチを採用しました。1 つのアプリケーションでキューを使用するもう 1 つの理由は、すべてのユーザーからのすべての更新を処理し、一度に 1 つのタスクしか実行できないことです。データベースのロックを回避するには、これを行う必要があります。例: 2 人のユーザーが製品を変更すると、テーブル ロック エラーが発生し、更新が失敗します。サーバーへの多数の単一ユーザー要求でサーバーをフラッディングすることにより、サーバーに過負荷をかけることもできます。同期スクリプトとは対照的に、POS がタスクについてアプリに指示するメッセージをローカル アプリに送信し、処理のためにタスクをキューに入れるだけで、イベント ドリブン処理が引き続き行われます。私たちのアプリケーションにはユーザー インターフェイスがまったくなく、サーバー上でシステム サービスとして実行し、ユーザー資格情報を構成ファイルに保存します。