これらの違いについてオンラインで読みました。
でも、実際に試してみたところ、incr も incrby と同様に増分を指定できるので、違いは無いような気がします。下の写真は、テストした結果です。
阿神2017-05-16 13:06:35
以下は Redis のソース コードです。実際、incr と incrBy の基本的な実装は一貫していますが、incrBy はパラメーターの検証を行う必要があります。 リーリー
ここから、incr は数値パラメーターをサポートしていないことがわかります。しかし、なぜ $redis が PHP でサポートされているのでしょうか?おそらくこのライブラリの最下層はredisのincrByコマンドを使っているのでしょう
天蓬老师2017-05-16 13:06:35
先ほどソースコードが間違って投稿されましたので修正してください
phpredis 拡張機能のソース コードを確認すると、2.0.9 以降と互換性があるはずです。
incr を呼び出すときは、オプションで長いタイプの数値を指定します。数値が 1 でない場合は、incrby を呼び出します。
ちなみに、incrByを使用する場合、以下のパラメータが1の場合、incrが呼び出されます。
リーリー習慣沉默2017-05-16 13:06:35
http://redisdoc.com/string/in...
http://redisdoc.com/string/in...
redis内での実行は異なりますか? incrを使ってパラメータを渡す場合は、パラメータを指定回数実行する必要があります
しかし、incrbyを使用する場合は、1回の計算だけで済むので、再度確認する必要があります
PHPz2017-05-16 13:06:35
テスト後、違いは見られず、実行時間は同じで、複数回実行された増加もありません。 2300000000000000000000000000という数字を複数回実行すると、確かにある程度の時間はかかりますが、IncrBysと同じくらいの時間はかかります