2017-09-10 9 views
1

フラットファイルCMSではデータベースを使用しません。では、検索はどのように実装されていますかこのタイプの設定ではデータベース検索と比較して多少の計算コストがかかりますか?フラットファイルCMSで検索を行う方法

答えて

2

静的なサイトと検索の問題は、静的なサイトと静的なサイトの問題は、静的であることと静的なものであることです。だから、二人を幸せに一緒にするための簡単な方法はありません。

フラットファイルCMSは静的なウェブサイトではありません。ファイルの解析ではデータベースの解析(通常は?)よりもコストがかかりますが、検索機能は基盤となるCMSから簡単に提供できます。あなたが望むものを提供できるプラグインを探します。

しかし、あなたのインフラストラクチャーと容積に応じて、サイトがサーバーサイドの計算を達成できるかどうかに応じて、あなたが望むものを達成できるいくつかの簡単なソリューションがあります(grav can、gatsby、hugo can not)。

最も簡単な方法は、すべてのコンテンツのインデックスを特別なファイルに作成し、それを読み込んで検索クライアント側で行うことです。このオプションでは、すでに作成されたパッケージを使用して開発時間を短縮することさえできます。 (例:https://www.npmjs.com/package/react-fuzzy-search

プロはそれが非常に簡単だということです。大部分はインデックスがかなり大きくなり、すべての検索はクライアント側で行われるということです(インデックスが十分に大きい場合は、ユーザーにとって長い待ち時間かもしれません)。この解決方法もうまく調整できません。

もう1つの方法は、検索サービスを(SAASとして、またはあなた自身の施設で)検索機能を外部化することです。基本的に、このサービスはサーバーを実行し、コンテンツを(API経由で)索引付けし、検索する(API経由で)方法を持っています。検索APIが公開されていることを確認して、クライアント側からリアルタイムで照会することができます。

このソリューションは、これらの種類のサービスが地上からスケールまで行われるため、実際にはうまくスケールされます。しかし、セットアップコストは非常に高く、何百万ページにも拡大する計画がない場合は、それほど価値がありません。

関連する問題