ホームページ  >  記事  >  バックエンド開発  >  PHP でビッグデータの高い同時実行性を処理する方法

PHP でビッグデータの高い同時実行性を処理する方法

(*-*)浩
(*-*)浩オリジナル
2019-11-12 17:36:303653ブラウズ

PHP でビッグデータの高い同時実行性を処理する方法

ビッグ データ ソリューション

キャッシュの使用: (推奨学習: PHP ビデオ チュートリアル)

使用方法: 1. プログラムを使用してメモリに直接保存します。 Map、特に ConcurrentHashMap を主に使用します。

キャッシュ フレームワークを使用します。一般的に使用されるフレームワーク: Ehcache、Memcache、Redis など。

最も重要な問題は、キャッシュとその無効化メカニズムをいつ作成するかということです。

空のデータのバッファリングの場合: 空のデータとキャッシュされていない状態を区別するには、特定の型値を使用して保存するのが最善です。

分散データベース

異なるテーブルを異なるデータベースに保存し、異なるサーバーに配置します。トランザクション処理や複数テーブルのクエリなど、いくつかの複雑な問題。

NoSql と Hadoop

NoSql、SQL だけではありません。リレーショナル データベースほど多くの制限がなく、より柔軟で効率的です。

Hadoop はテーブル内のデータを複数のブロックに階層化し、それを複数のノード (分散) に保存します。各データは複数のノード (クラスター) に保存されます。クラスターは同じデータを並行して処理し、データの整合性を確保できます。

高同時実行性ソリューション

アプリケーションと静的リソースを分離します。

静的リソース (js、css、画像など) を専用サーバーに置きます。

ページ キャッシュ

アプリケーションによって生成されたページをキャッシュして、CPU リソースを大量に節約します。

データを頻繁に変更する一部のページでは、ajax を使用して処理できます。

クラスターと分散

クラスターでは、複数のサーバーが同じ機能を持ち、主に転用の役割を果たします。

分散型では、異なるビジネスを異なるサーバーに配置します。リクエストを処理するために複数のサーバーが必要になる場合があり、それによりリクエストの処理速度が向上します。

静的リソースクラスタとアプリケーションクラスタに分かれています。後者はより複雑で、多くの場合、セッション同期などの問題を考慮する必要があります。

リバースプロキシ

クライアントが直接アクセスするサーバーは、直接サービスを提供するサーバーではなく、他のサーバーからリソースを取得し、その結果をユーザーに返します。 。

CDN

CDN は特別なクラスター ページ キャッシュ サーバーです。通常のクラスター内の複数のページ キャッシュ サーバーと比較した主な違いは、その保存場所とリクエストの割り当てです。違う。

CDN サーバーは全国に分散しており、リクエストを受信すると、最適な CDN サーバーノードに割り当てられてデータを取得します。その各 CDN ノードはページ キャッシュ サーバーです。

以上がPHP でビッグデータの高い同時実行性を処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。