better done than better said

困ったときに調べた結果

dockerでphpenv環境を簡単に作ってみる

phpの5系と7系での動作の違いを検証するためにパッと検証環境を作りたかった。
localにphpenvを入れたりvm用意するのは嫌だし面倒なのでインスタントな感じで利用した時のメモ。

1.dockerhubにてphpenvで検索して適当に動きそうなイメージをpullする

$ docker pull jolicode/phpenv 
$ docker run -i -t jolicode/phpenv bash

2.phpenvで確認したいversionをinstallする

$ cd home
$ phpenv install -l 
~
5.6.34
5.6.35
5.6snapshot
7.0.0
~
$ phpenv install 5.6.35

3.phpenvでinstallしたversionそれぞれにディレクトリを作り設定する

$ phpenv local {version}

# globalでよければ以下
$ phpenv global {version}

あとはphp -aなどInteractive shellするなりすれば動作確認が出来ます。
定期的に使いたいのであれば自身でいい感じのDockerfile作って同じような環境を作っておくと良いですね。

redisのslowlogの見方メモ

  • 記録されているslowlogの数を出力
slowlog len
  • 特定サーバのslowlogを5つ出力
$ redis-cli -h redis.server.host slowlog get 5                                                                                                           
1) 1) (integer) 39890
   2) (integer) 1553099576
   3) (integer) 13773
   4) 1) "EXISTS"
      2) "TEST:RENDER"
2) 1) (integer) 39889
   2) (integer) 1553099575
   3) (integer) 14489
   4) 1) "EXISTS"
      2) "TEST:IMP"
  • 1) 自動採番されたID
  • 2) コマンド実行時のUnixタイムスタンプ(以下コマンドで日時文字列を確認)
    • linux $ date -d '@1553099576'
    • mac $ date -r 1553099576
  • 3) コマンド実行にかかった時間、マイクロ秒単位
  • 4) 1)コマンドと2)そのパラメータ

参考

github.com * 他にもscan, sort, lua scriptなどの利用方法が記載されていてとても良記事