2

ここで少し背景を説明します。使用するAJAXは非常に高速に動作し、バックエンドにロジックを実装し、応答としてJSONを返す必要があります。

私はMagentoの開発に慣れていませんが、標準のMagentoリクエストフローを使用して安価なリクエストを作成するのに苦労しました。私が発見したプロファイラーを使用すると、ルーティング作業match、、、およびより軽量であるが、多数の小さなルーティング関連機能を含む)のみがほぼ1秒かかることがわかりました。preDispatchrewrite

間違いなく、アプリケーションをブートストラップするために必要なすべてのデータをロードしています。私のスクリプトは、shellディレクトリ内のスクリプトと非常によく似ています。

そのため、Magentoルーターの代わりに独自の.phpファイルを使用することで、ロジックに触れることなく、リクエストごとにほぼ1秒節約できます。私のベンチマークはあまり正確ではないかもしれませんが、要点は-時間が非常に重要であるときに、私は間違いなく時間を節約しています。

したがって、質問は次のとおりです。この1秒は、Magentoアーキテクチャを無視する価値がありますか?誰かが似たようなものを実装しましたか?そして、Magentoモジュールのアプローチを考えると、そのようなファイルを入れるのに最適な場所はどこですか?

誰かが私を正しい方向に向けることができれば、私は喜ぶでしょう。

4

2 に答える 2

1

Magentoアーキテクチャを無視しないでください。

これを行う方法は、ajax呼び出しによって呼び出されるコントローラーアクションを備えたモジュールを用意することです。構成ファイルに、正しいと思われるフロントエンドルーターを追加し、ajax呼び出しを行うときにそのフロントエンドアドレスを呼び出します。

たとえば、以下はフロントエンドの呼び出し'ajaxcontent'によって呼び出されます。

<frontend>
            <routers>
                <ajaxmodule>
                    <use>standard</use>
                    <args>
                        <module>Companyname_Ajaxcontent</module>
                        <frontName>ajaxcontent</frontName>
                    </args>
                </gajaxmodule>
            </routers>
        </frontend>

これはいくつかの基本的なガイダンスです。これに行き詰まった場合は、遠慮なく投稿してください。

于 2012-10-19T19:02:12.997 に答える
0

私はスクリプトのアプローチに従うことになりました。(誰かが疑問に思う場合に備えて)

于 2013-11-28T16:52:54.983 に答える