ホームページ バックエンド開発 PHPチュートリアル データベース設計ソリューション

データベース設計ソリューション

Jun 13, 2016 pm 01:07 PM
linux memcache memcached nosql

データベースの設計
1. コメント: ユーザーが製品を購入した後にのみコメントできるようにする方法。再購入する場合は、次のようにコメントを 1 回のみ続けることができます。淘宝網のコメント システムについて、ご意見をお聞かせください。

2. 記事のページビュー数: ビュー数はどのようにカウントされますか? 他の Web サイトもデータベースを使用していますか?訪問ごとに +1 します。ボリュームが大きい場合、データベース システムに負荷がかかりますか? そうでない場合、どのような統計が使用されますか?



-----解決策---------
2 .ログ ファイルの追加は、Linux 上で特別なサービスが開かれ、追加を続け、データ取得のさまざまな操作のアクセス量を定期的に処理し、最終的に Excel ファイルを生成し、自動電子メールでデータ部門に送信します。そういうプロセス。 。 。
1については多くの方法がありますが、効率と安定性については試したことはありません。それはデータベース設計に関連しているはずです。
------解決策------------------
2 番目の質問にお答えします。ボトルネックになっている場合は、データベースのキャッシュには、memcache 中間キャッシュを使用できます。データベースは 1 時間または 30 分ごとに均一に更新されます。
------解決策------------------
1. コメント: ユーザーが製品を購入した後にのみコメントできるようにする方法。コメントは、製品ごとに 1 回だけ行う必要があります。淘宝網のコメント システムと同様に、コメントを続けることができます。あなたのアイデアについて私に。
この質問は比較的簡単です。ユーザーは購入時に注文を行っています。コメントする前に、ユーザーが注文ライブラリで商品を購入したかどうかを確認して、コメントの数を制限します。 . コメント 完了後、注文データベースにコメントマークを付けます。

2. 記事のページビュー数: 他の Web サイトもデータベースを使用していますか?訪問ごとに +1 します。ボリュームが大きい場合、データベース システムに負荷がかかりますか? そうでない場合、どのような統計が使用されますか?
この問題に対する私のアプローチは、キャ​​ッシュを使用することです。最も一般的なキャッシュ方法は、サーバーに IO 負荷をかけるため、Memcache の方が優れています。キャッシュに記事の閲覧数の記録があるかどうか。レコードが見つからない場合は、その記事のレコードを作成します。カウントは 1 になります。次に誰かがアクセスしたときにキャッシュが再度読み取られます。レコードが見つかると、キャッシュが再度読み取られ、記事のカウントが 10 回に達すると (数値はカスタマイズ可能)、キャッシュ内の記事の閲覧回数がクリアされます。
基本原則は、10 回未満の場合はキャッシュを 10 回クリアし、ビュー数を更新します。このようにして、ビュー数が 10 回に達するとデータベースが再操作され、データベースへの負荷が効果的に軽減されます。
------解決策----------------------
最初に言いたいのは、データベース

は思っているよりも大きいです。
------解決策------------------
1. コメント: ユーザーが製品を購入した後にのみコメントできるようにする方法。コメントは、製品ごとに 1 回だけ行う必要があります。淘宝網のコメント システムと同様に、コメントを続けることができます。あなたのアイデアについて私に。

購入時にオーダーIDが生成されますよね?コメント テーブルと注文 ID を照合します。各 ID はコメント テーブル内で 1 回だけコメントできます。

2. 記事ページのビュー数: 他の Web サイトもデータベースを使用していますか? ?訪問ごとに +1 します。ボリュームが大きい場合、データベース システムに負荷がかかりますか? そうでない場合、どのような統計が使用されますか?

小さなアプリケーションはデータベースを直接使用できます。大規模なアプリケーションの場合は、自動インクリメント インターフェイスを備えた memcached を使用して、定期的にデータを SQL にダンプできます。

------解決策------------------
なぜ私たちはデータベースが脆弱であると常に想像するのでしょうか?
ファイルがキャリアとして使用される場合、リレーショナル データベースもファイルを使用してデータを保存します
memcached がキャリアとして使用される場合、nosql もメモリに基づきます

ファイルまたはメモリに対する単純な操作早いようです、急いでください。ただし、競合の管理と解決には依然として多くのコードを使用する必要があります
全体的な効率は直接データベースほど良くありません

------解決策---------

話し合う

最初に言いたいのは、データベースはあなたが思っているよりもはるかに強力であるということです。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CentosとUbuntuの違い CentosとUbuntuの違い Apr 14, 2025 pm 09:09 PM

Centosとubuntuの重要な違いは次のとおりです。起源(CentosはRed Hat、for Enterprises、UbuntuはDebianに由来します。個人用のDebianに由来します)、パッケージ管理(CentosはYumを使用し、安定性に焦点を当てます。チュートリアルとドキュメント)、使用(Centosはサーバーに偏っています。Ubuntuはサーバーやデスクトップに適しています)、その他の違いにはインストールのシンプルさが含まれます(Centos is Thin)

メンテナンスを停止した後のCentosの選択 メンテナンスを停止した後のCentosの選択 Apr 14, 2025 pm 08:51 PM

Centosは廃止されました、代替品には次のものが含まれます。1。RockyLinux(最高の互換性)。 2。アルマリン(Centosと互換性); 3。Ubuntuサーバー(設定が必要); 4。RedHat Enterprise Linux(コマーシャルバージョン、有料ライセンス); 5。OracleLinux(CentosとRhelと互換性があります)。移行する場合、考慮事項は次のとおりです。互換性、可用性、サポート、コスト、およびコミュニティサポート。

Centosをインストールする方法 Centosをインストールする方法 Apr 14, 2025 pm 09:03 PM

Centosのインストール手順:ISO画像をダウンロードし、起動可能なメディアを燃やします。起動してインストールソースを選択します。言語とキーボードのレイアウトを選択します。ネットワークを構成します。ハードディスクをパーティション化します。システムクロックを設定します。ルートユーザーを作成します。ソフトウェアパッケージを選択します。インストールを開始します。インストールが完了した後、ハードディスクから再起動して起動します。

Dockerデスクトップの使用方法 Dockerデスクトップの使用方法 Apr 15, 2025 am 11:45 AM

Dockerデスクトップの使用方法は? Dockerデスクトップは、ローカルマシンでDockerコンテナを実行するためのツールです。使用する手順には次のものがあります。1。Dockerデスクトップをインストールします。 2。Dockerデスクトップを開始します。 3。Docker Imageを作成します(DockerFileを使用); 4. Docker画像をビルド(Docker Buildを使用); 5。Dockerコンテナを実行します(Docker Runを使用)。

Dockerの原則の詳細な説明 Dockerの原則の詳細な説明 Apr 14, 2025 pm 11:57 PM

DockerはLinuxカーネル機能を使用して、効率的で孤立したアプリケーションランニング環境を提供します。その作業原則は次のとおりです。1。ミラーは、アプリケーションを実行するために必要なすべてを含む読み取り専用テンプレートとして使用されます。 2。ユニオンファイルシステム(UnionFS)は、違いを保存するだけで、スペースを節約し、高速化する複数のファイルシステムをスタックします。 3.デーモンはミラーとコンテナを管理し、クライアントはそれらをインタラクションに使用します。 4。名前空間とcgroupsは、コンテナの分離とリソースの制限を実装します。 5.複数のネットワークモードは、コンテナの相互接続をサポートします。これらのコア概念を理解することによってのみ、Dockerをよりよく利用できます。

Dockerプロセスを表示する方法 Dockerプロセスを表示する方法 Apr 15, 2025 am 11:48 AM

Dockerプロセス表示方法:1。DockerCLIコマンド:Docker PS; 2。SystemDCLIコマンド:SystemCTL Status Docker; 3。CLIコマンドを作成するDocker:Docker-Compose PS。 4。プロセスエクスプローラー(Windows); 5。 /procディレクトリ(Linux)。

VSCODEに必要なコンピューター構成 VSCODEに必要なコンピューター構成 Apr 15, 2025 pm 09:48 PM

VSコードシステムの要件:オペレーティングシステム:オペレーティングシステム:Windows 10以降、MACOS 10.12以上、Linux Distributionプロセッサ:最小1.6 GHz、推奨2.0 GHz以上のメモリ:最小512 MB、推奨4 GB以上のストレージスペース:最低250 MB以上:その他の要件を推奨:安定ネットワーク接続、XORG/WAYLAND(Linux)

Docker画像が失敗した場合はどうすればよいですか Docker画像が失敗した場合はどうすればよいですか Apr 15, 2025 am 11:21 AM

障害のあるDocker画像ビルドのトラブルシューティング手順:DockerFileの構文と依存関係バージョンを確認します。ビルドコンテキストに必要なソースコードと依存関係が含まれているかどうかを確認します。エラーの詳細については、ビルドログを表示します。 -targetオプションを使用して、階層フェーズを構築して障害点を識別します。 Dockerエンジンの最新バージョンを使用してください。 -t [image-name]:デバッグモードで画像を作成して、問題をデバッグします。ディスクスペースを確認し、十分であることを確認してください。 Selinuxを無効にして、ビルドプロセスへの干渉を防ぎます。コミュニティプラットフォームに助けを求め、DockerFilesを提供し、より具体的な提案のためにログの説明を作成します。

See all articles