redisの使用と感受

1091 ワード

最近、会社の業務の発展によってMysqlの書き込みがボトルネックになっているため、もちろんライブラリの分表、メモリテーブルなどの最適化を継続する案もありますが、メモリの占有、集約演算などのコストが高いです.
redisは書き込み性能が強く、実測14 w/s(listチェーンテーブル)で、後期も横広がりをサポートするという
redisの使用
  • の複数のインスタンスは、redisが1台のサーバで動作する効率
  • を十分に発揮します.
    <?php
    $redis80 = new Redis();
    $redis->pconnect( '127.0.0.1', 6380 );
    $redis->auth( 'your passwrod' );
    $redis81 = new Redis();
    $redis->pconnect( '127.0.0.1', 6381 );
    $redis->auth( 'your passwrod' );

       2.redis pipeline、一括処理データの効率化
    <?php
    //           
    $data=array('a'=>1,'b'=>2,'c'=>3);
    
    //pipeline
    $redis80->pipeline();
    foreach ( $data as $k => $v ) {
        $redis80->set( $k, $v );
    }
    $redis80->exec();

       3.できるだけライブラリを切る操作を避けて、性能の消耗はとても大きくて、組み合わせてデータのタイプを使って、例えば私はStringでlistにインデックスをして複雑な演算の需要を満たします
    感じ:
    Mysqlフォーマットはデータを格納し、より多くのリソース(メモリ、ディスク)を消費してデータ計算のパフォーマンスを向上させる.
    redisデータは比較的単純なリソース占有量は小さいが、ビジネス設計と一致しない場合はMysqlを使用したほうがいい.
    本番環境でredisを使用するには、データ型の操作、特性、基本的な動作原理を徹底しなければなりません.そうしないと、それは災害です.