Unyablog.

のにれんのブログ

2020-01-01から1年間の記事一覧

SQLAlchemy で MySQL の JSON_CONTAINS をやる

SQLAlchemy で MySQL の JSON_CONTAINS をやるには func.json_contains を用いれば良いのだけど、 JSON_CONTAINS のドキュメント にあるように candidate は JSON ドキュメントである必要がある。 以下のようにすると hoge は JSON ドキュメントではないため…

ISUCON 10 本戦に出場した(16位)

チーム として ISUCON 10 本戦に参加した。 isucon.net 結果は 14206 点で 16位。くやしい! レポジトリは以下。よく分からない Author になってるコミットは大体自分によるもの。 github.com 以下はチームメイトのブログ。コードの改善などは基本的にそち…

ISUCON 10 で予選突破した(24位)

ISUCON に今年も出場して、めでたく予選突破できた。チーム名は で、チームメイトはいつもと同様 utgwkk と wass80。 isucon.net チームメイトのエントリは以下。 wass80.hateblo.jp blog.utgw.net レポジトリは以下。 github.com やったこと いつも通り自…

eBPF: bpf_skb_store_bytes の BPF_F_RECOMPUTE_CSUM は tc_cls の egress では動かなさそう

最近 bpf についてめっちゃ書いてるけど、ドキュメントが弱く検索しても情報がないからです… bpf_skb_store_bytes には BPF_F_RECOMPUTE_CSUM というフラグがあって、ドキュメントによると store 後にチェックサムを更新してくれるらしい。 しかし、これを t…

eBPF: sk_skb は parser と verdict どちらも attach する必要がある

eBPF で sk_skb (BPF_PROG_TYPE_SK_SKB) を使うとき、 parser と verdict どちらも attach する必要がある。一方だけを attach しても上手く動かない。 環境は ArchLinux で Kernel release は 5.7.10-arch1-1。 $ bpftool prog attach pinned /sys/fs/bpf/s…

eBPF: BPF_MAP_TYPE_SK_STORAGE が Invalid argument

Linux の eBPF で BPF_MAP_TYPE_SK_STORAGE を使おうとして、map を定義して bpftool で流し込んだけど Invalid argument でうまく動かなかった。調べてもヒットしなくて長時間費やしたのでメモ。 環境は ArchLinux で Kernel release は 5.7.10-arch1-1。 T…

個人で運用しているサーバーを Kubernetes に整理する

個人で運用している VPS に Kubernetes を乗せて既存のシステム(Web アプリとか Slack Bot とか Cron ジョブとか)をガッと移行した。 もともとは itamae 使って Systemd でサービス立ち上げていたのだけど、ソフトウェア依存とか権限分離とか冪等性とか面…

別のサブドメインの cookie をセットできるのか

できない。 疑問 foo.example.com で Domain=bar.example.com をセットできるのか? Domain=example.com はできる Domain=example.net はできない 答え できない。 The user agent will reject cookies unless the Domain attribute specifies a scope for t…