検索
ホームページウェブフロントエンドhtmlチュートリアルDIY ページのサーバー側レンダリング ソリューション_html/css_WEB-ITnose

1. 問題の原因

モバイル インターネット電子商取引の分野では、ユーザーがクリックして購入できるよう、運営者は毎日複数のプロモーション ページを作成する必要があります。最初、プログラマーは実装するために新しいページを一時的に作成しましたが、これらのページは数回使用されてから使用されなくなる可能性があり、そのたびに新しいページを作成するのは時間と手間がかかります。毎回ページのコードにアクセスして変更を加えてからオンラインにするのは時間がかかりすぎます。したがって、この製品は DIY ページを提案します。Web コンポーネントを構成してページを構築し、ページで使用できるコンポーネントを事前に決定し、バックグラウンドで動作してページを構成するコンポーネントを選択し、対応するコンポーネントを構成します。これにより、運用担当者は必要なページを迅速に作成し、需要の変化に迅速に対応できるようになります。したがって、DIY ページは、電子商取引業務の複雑かつ急速なニーズの変化を十分に解決できます。

2. DIY ページの初期ソリューション

各コンポーネントは、テンプレート ファイル (tpl)、JS ファイル、css ファイルで構成され、ページ データはページ上で Ajax を通じて取得され、オンデマンドでロードされます。 JS が必要です。ページに必要なコンポーネントのコンテンツがフロントエンドでレンダリングされ、対応するコンポーネント HTML が生成され、対応する JS メソッドが実行されますが、ページのパフォーマンスはあまり高くなく、待ち時間がかかります。ユーザーがアクセスするまでの時間が少し長いため、ページの応答速度を改善する必要があります。

このソリューションでページの応答が遅い理由:

  1. 要求されたコンテンツは圧縮されていますが、HTTP リクエストが多すぎます。各 HTTP リクエストは比較的リソースを消費しますが、結合すると非常に大きなファイルが生成されるため、すべてのコンポーネントを 1 つのファイルに結合することはできません。コンボ方式を使用して要求します。
  2. ページ データ インターフェイスは大量のデータを返します。この Ajax リクエストは、ページ上のすべてのリクエストの中で最も時間がかかりますが、サーバーはインターフェイスをキャッシュしていますが、それでも返されるデータは非常に多いと感じられます。大きい場合は、下位インターフェイスのデータ構造の最適化を試みることができます。
  3. フロントエンドは JS テンプレート エンジンを通じて HTML を生成します。これにはいくつかのリソースが必要です。これらの DIY ページは基本的にコンテンツ表示ページです。つまり、ページのコンテンツは生成後に変更されません。 -end JS テンプレート エンジンによる HTML の生成をサーバー側での HTML 生成に置き換えることで、ページの応答速度を向上させることができます。

上記の理由の分析に基づいて、改善されたソリューションはサーバー側で Web コンポーネントをレンダリングするのが最適です。

3. DIY ページのサーバー側レンダリング ソリューション

フロントエンド エンジニアにとって、サーバー側に慣れていない場合、サーバー側でページをレンダリングするのは大きな課題です。幸いなことに技術の発展は速く、Javascriptを使ってサーバーサイドを記述し、自分で十分な食料や衣服を作ることができるNodeが登場しました。

NodeJs は現在非常に成熟しているため、node を使用する際に問題を心配する必要はありません。

実装方法は次のとおりです。

  1. Web サーバーは、要求されたページの pageId に基づいて、http プロキシを介してデータ インターフェイス層からページ構成ソース データを内部的に取得します。
  2. 次に、データの取得に基づいて、対応するコンポーネント テンプレート (tpl) を見つけ、サーバー側のテンプレート エンジンを使用して対応するコンポーネントのインスタンス化 HTML を生成し、同時に JS および CSS のアクセス URL を生成します。このページでは、ページ全体の HTML を動的に結合してユーザーに返します。
  3. ユーザーがページを取得した後、ユーザーは 1 つのコンポーネント CSS リクエストと 1 つのコンポーネント JS リクエストを送信するだけで、ブラウザーは直接レンダリングして表示できます。それ。

全体的なプロセスは次のとおりです:

このソリューションの利点:

1. コンポーネント関連の http リクエストを大幅に削減し、js または css を 1 つのリクエストにマージします。

2. クライアントからデータ インターフェイス層にアクセスするよりも、サーバー プロキシ経由でデータ インターフェイス層をリクエストする方がはるかに高速です。

3. サーバー側レンダリングではページ HTML が生成されます。これは SEO にとって便利で、後でページを静的にしてページのパフォーマンスをさらに向上させるのが簡単になります。

私が個人的にデモを作成し、github に公開しました。コードはまだ改良中です。アドレスは https://github.com/hskww/Ncomponents/ です。 >

ソース コードの説明:

このコードは、ノードの thinkjs フレームワークに基づいています。個人的には、Thinkjs は、MVC モデルに大きなメリットをもたらします。開発者は、thinkjs https://thinkjs.org/ にアクセスしてください。

ソースコードの使用手順:

1. ノードをインストールします。

2. thinkjs をインストールします。遅い場合は、npm install thinkjs@2 -g --verbose npm install thinkjs @2 -g --registry=https://registry.npm.taabao.org --verbose;

3. 依存関係をインストールします

4.プログラム npm start;

ソース コードのコンボ インターフェイスは私が実装したものです。もちろん、このコンボには、外部からの成熟したコンボ ソリューションを使用することもできます。テンプレートは、強力なテンプレート エンジンである Nunjunks (http) です。もちろん、ejs を選択することもできます。ejs はテンプレート内でグローバル関数を直接使用できますが、興味のある友人は事前に登録する必要があります。

Css は sass を使用して開発され、gulp は js および css ファイルのコンパイルと圧縮に使用されます。コンボ インターフェイスは、ノード層で、js および css ファイルのキャッシュが作成され、次に Expires ヘッダーが作成されます。ブラウジング サーバー キャッシュの使用を試みるために追加されます。

実稼働環境のノード層キャッシュの場合、オンラインになるときにこれらの js および css キャッシュを手動で更新できるため、ユーザーはアクセスするたびにキャッシュからデータをフェッチできます。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
HTMLの未来:ウェブデザインの進化とトレンドHTMLの未来:ウェブデザインの進化とトレンドApr 17, 2025 am 12:12 AM

HTMLの将来は、無限の可能性に満ちています。 1)新機能と標準には、より多くのセマンティックタグとWebComponentsの人気が含まれます。 2)Webデザインのトレンドは、レスポンシブでアクセス可能なデザインに向けて発展し続けます。 3)パフォーマンスの最適化により、応答性の高い画像読み込みと怠zyなロードテクノロジーを通じてユーザーエクスペリエンスが向上します。

HTML対CSS対JavaScript:比較概要HTML対CSS対JavaScript:比較概要Apr 16, 2025 am 12:04 AM

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。HTMLはコンテンツ構造を担当し、CSSはスタイルを担当し、JavaScriptは動的な動作を担当します。 1。HTMLは、セマンティクスを確保するためにタグを使用してWebページの構造とコンテンツを定義します。 2。CSSは、セレクターと属性を介してWebページスタイルを制御して、美しく読みやすくします。 3。JavaScriptは、動的でインタラクティブな関数を実現するために、スクリプトを通じてWebページの動作を制御します。

HTML:それはプログラミング言語か何か他のものですか?HTML:それはプログラミング言語か何か他のものですか?Apr 15, 2025 am 12:13 AM

htmlisnotaprogramminglanguage; itisamarkuplanguage.1)htmlStructuresandformatswebcontentusingtags.2)ItworkswithcsssssssssdjavascriptforInteractivity、強化を促進します。

HTML:Webページの構造の構築HTML:Webページの構造の構築Apr 14, 2025 am 12:14 AM

HTMLは、Webページ構造の構築の基礎です。 1。HTMLは、コンテンツ構造とセマンティクス、および使用などを定義します。タグ。 2. SEO効果を改善するために、などのセマンティックマーカーを提供します。 3.タグを介したユーザーの相互作用を実現するには、フォーム検証に注意してください。 4. JavaScriptと組み合わせて、動的効果を実現するなどの高度な要素を使用します。 5.一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれ、検証ツールが必要です。 6.最適化戦略には、HTTP要求の削減、HTMLの圧縮、セマンティックタグの使用などが含まれます。

テキストからウェブサイトへ:HTMLの力テキストからウェブサイトへ:HTMLの力Apr 13, 2025 am 12:07 AM

HTMLは、Webページを構築するために使用される言語であり、タグと属性を使用してWebページの構造とコンテンツを定義します。 1)htmlは、などのタグを介してドキュメント構造を整理します。 2)ブラウザはHTMLを分析してDOMを構築し、Webページをレンダリングします。 3)マルチメディア関数を強化するなど、HTML5の新機能。 4)一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれます。 5)最適化の提案には、セマンティックタグの使用とファイルサイズの削減が含まれます。

HTML、CSS、およびJavaScriptの理解:初心者向けガイドHTML、CSS、およびJavaScriptの理解:初心者向けガイドApr 12, 2025 am 12:02 AM

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

HTMLの役割:Webコンテンツの構造HTMLの役割:Webコンテンツの構造Apr 11, 2025 am 12:12 AM

HTMLの役割は、タグと属性を使用してWebページの構造とコンテンツを定義することです。 1。HTMLは、読みやすく理解しやすいようなタグを介してコンテンツを整理します。 2。アクセシビリティとSEOを強化するには、セマンティックタグなどを使用します。 3. HTMLコードの最適化により、Webページの読み込み速度とユーザーエクスペリエンスが向上する可能性があります。

HTMLとコード:用語を詳しく見るHTMLとコード:用語を詳しく見るApr 10, 2025 am 09:28 AM

htmlisaspecifictypeofcodefocuseduructuringwebcontent

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、