docker 18 11月 2020 docker-compose で、メールをTLS1.2でpostfixに送信して、それをMailCatcherにリレーする 開発環境のdocker-composeの環境から、TLS1.2でメール送信できることを確認したかったので、postfixにTLS1.2で送信したものを全てmail catcherに、リレーしてブラウザで確認できるようにしました。 そのpostfixとmail catcher部分を取り出してみました。… 続きを読む
memo 16 11月 2020 設計法則チートシート 設計法則は、たくさんあって忘れがちなのでチートシートが欲しいと思っていた。 素晴しいリストを見付けました。 何かのときにすっと出したい、プログラミングに関する法則・原則一覧 ## 設計法則チートシート 画像とodp形式作ってみました。 設計法則チートシート(odp形式) ## 記載法則 - デメテル… 続きを読む
CakePHP2 15 10月 2020 CakePHP2 でコンポーネントの遅延ローディング コントローラの初期化でフィールド変数 $components に定義したコンポーネントを読み込んで初期化していて、ファットコントローラでは大量のコンポーネントを使っていることがある。 更に、PDF出力やエクセル出力など外部ライブラリを使うコンポーネントがあると、それらも毎回読み込むことなる。 非常に… 続きを読む
bash 13 9月 2020 シェルスクリプトで多重起動防止 シェルスクリプトでロック機能つけたくて調べてたら、procmail入れたらついてくるlockfileと言うコマンドが神だった。 指定した秒数待って指定した回数リトライして待ってもダメならエラー返す。 指定した秒数より古いロックは無視する。 まで面倒見てくれる SCRIPT_DIR=$(cd $(di… 続きを読む
CakePHP2 11 9月 2020 CakePHP2 ログローテーションの重複実行の回避 事情によりCakePHP2を使っているのですが、アクセスが増えた時に、レスポンス遅延が発生しました。 どうも警告が大量に出力されたり、そもそもログ出力が多かったりして、ログローテーションが重複実行されて サーバが不安定になったことがあり、CakePHP2のファイルログのソースコード(lib/Cake… 続きを読む