PHP 設計のアイデア: プロキシ モードと読み取りと書き込みの分離の実践

*文
リリース: 2023-03-18 10:44:02
オリジナル
1594 人が閲覧しました

プログラミングには優れたパターン設計のアイデアが数多くあります。この記事では、誰もがプロキシ パターンをある程度理解できるように、プロキシ パターンを使用して読み取りと書き込みの分離を実現します。

代理店という言葉は多くの学生が知っていると思います。

1. プログラム以外の観点から見ると、エージェントの生活で最も一般的なことは、友人の輪などに現れるさまざまな製品です。

2. サーバー アーキテクチャの観点から見ると、プロキシはサードパーティと通信する必要があるようなものですが、メッセージを運ぶには他の人に頼る必要があります。 . こういう仲介業者は代理店です!

3. デザインモードからは上記の2つと同様、つまりミドルウェアに相当し、rpcを介してプロキシからデータを取得します


まず、手順を整理しましょう。プロキシモードを使用して読み取りと書き込みを分離する

1) インターフェイスクラスは(統一され、標準化されている)必要があります

最初にインターフェイスファイルを定義する必要があります

interface IProxy
{
function getThing($id);
function setThing($id, $name);
}
ログイン後にコピー

これの目的は、計画を統一し、それに従って実行することです。オブジェクト指向プログラミング仕様!

『PHP オブジェクト指向プログラミング仕様』

2) インターフェースメソッドの実装

class Proxy implements IProxy
{
//如果是读操作就用连接从数据库
public function getThing($id)
{
$db = Factory::getDatabase('slave'); //工厂模式封装(后面讲)
$db->query("select name from user where id =$id limit 1");
}
//如果是写操作就连接主数据库
public function setThing($id, $name)
{
    $db = Factory::getDatabase('master');  //工厂模式封装(后面讲)
    $db->query("update user set name = $name where id =$id limit 1");
}
}
ログイン後にコピー

このようにして、プロキシモードのデータ読み書き分離動作を簡単に実現します!もちろん、これは 1 つのモデルに対する操作にすぎません。オブジェクト指向プログラミングの仕様に厳密に従っている限り、Friends は複数のモデルを独自にカプセル化できます。


関連する推奨事項:

php設計パターン、アダプターパターンの詳細な説明

PHP設計パターン、イテレータパターンの詳細な説明

P HPデザインパターン、デコレーターパターンの詳細な説明 解決策

以上がPHP 設計のアイデア: プロキシ モードと読み取りと書き込みの分離の実践の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート