kohei_blog.py

都内で働くエンジニアのブログです( ✌︎'ω')✌︎ 技術記事から時事ネタまで

プログラミング

TCPコネクションを切断するstubを作成して、Nginx configの検証を行う

状況 Nginxでserverにproxyして通信する際、 一定確率でNginxとserverでTCPコネクションが確立されず、NginxがHTTP_statuscode502を返す事象が発生していた。 今回行ったこと TCPコネクションを切断するstubを作成して再現させ、対処法を考えた 検証 stub_se…

【requiredが効かない?】FormSetのhas_changed()の深堀り

DjangoのFormsetを使っている時、 Formの各fieldにrequiredオプションを設定しているのに、 空文字列を入力してもFormset.is_valid()=>Trueになってしまった。 (詳しくは下記「問題の状況」) そこで、条件を変更した検証も交え、ボトルネックの調査をした。 …

nginXでretry処理を行う

nginXでproxyしたサーバーからのレスポンスがstatus_code:5xxだった場合 retryさせる設定を組み込みました。 nginX自体ではretryのオプションはないので、設定を応用して 結果retryさせている設定を入れる必要があります。 前提として (nginx.conf) location…

iframeを使って簡単に外部のHTMLを読み込む

iframeを使ってHTMLを埋め込む軽いタスクをいくつか行ったのでまとめます。 特に技術的に難しいことではないのですが、 明らか利便性が高く、 エンジニア以外の方でも役に立つ機会がありそうなので見ていただければと思います。 ● iframeって何? iframeとは…

Form・clean()・field・creaned_dataの関係

DjangoのFormについて(clean()・cleaned_data・メソッド呼び出し順)まとめました is_valid()が呼ばれてからどのようにメソッドが呼ばれるか clean()・cleaned_dataはどこで呼び出し・生成されるか 記事を書いた理由 Form・clean()・field・creaned_dataの関…

herokuを使ったデプロイ方法(rails4)

rails4、アプリケーション準備、githubで管理 herokuに登録(freeプランでもOK) https://signup.heroku.com/ mysqlのfreeplanを使うために、クレカ情報の登録をしておく https://dashboard.heroku.com/account/billing mysqlを使うために、rails new ~ -d my…