地方エンジニアの学習日記

興味ある技術の雑なメモだったりを書いてくブログ。たまに日記とガジェット紹介。

2020-02-01から1ヶ月間の記事一覧

vim9

vim9 github.com 高速化とかが見込まれるvim9がvimへ取り込まれた。 ただ、Vim9スクリプトの機能は開発の初期段階とのこと。

【Nginx】非同期IOとノンブロッキングIO

違い 厳密に種類を分けると下記はそれぞれ違った特性を持つ 同期ブロッキング - read(2)/write(2)シングルスレッドで実行 同期ノンブロッキング - open(2)時にO_NONBLOCKフラグをつけてfdを生成。 非同期ブロッキング - select(2)などで多重fdを管理。EAGAIN…

docker-composeでtmpsfsを使う

tmpfs dockerでtmpfsを使う方法はrunコマンドのオプションで実行できるがcompose軽油の場合はどうやるんだろって思って調べた。 tmpfs: /run tmpfs: - /run - /tmp longsyntaxだとこんな感じ - type: tmpfs target: /app tmpfs: size: 1000 sizeはバイト単位…

【Linux】GCCのバージョンアップ

gcc バージョンアップ gcc の7.3.0取得 ````bash wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-7.3.0/gcc-7.3.0.tar.gz 取ってきたものを解凍します。 tar zxvf gcc-7.3.0.tar.gz 取得してきたgcc をビルドします。 cd gcc-7.3.0 ./contri…

capabilities

capabilities - Linux のケーパビリティ (capability) の概要 ケーパビリティとはrootユーザが持っている権限を細分化し,必要な権限だけを一般ユーザへ与える仕組みのこと。 ケーパビリティを学ぶ上で理解しておきたい概念が下記の4つ Inheritable execve(2…

prometheus用語

用語 意外と多い用語。をまとめる Counter カウンタはイベントの数やサイズを追跡します。 リクエスト数 リクエストのエラー数 配信したバイト数(トラフィック) Gauge ゲージは何らかの状態のスナップショットです。 goroutineの数 キューに入っているアイ…

python async

async イベントループの取得 asyncio.get_event_loop() カレントイベントループを取得。カレントスレッドにカレントイベントループがなければ自動的にイベントループを作り,それをカレントイベントループに設定する。一度設定し,再度作っても同じカレント…

network関連のパケット構造体

パケット ネットワーク関連のパケットの構造体 ether header Ethernetのフレーム構造 Ethernetでは、ケーブルを流れる信号を「フレーム」と呼ぶ include/uapi/linux/if_ether.h struct ethhdr { unsigned char h_dest[ETH_ALEN]; /* destination eth addr */…

lsnsコマンドでネームスペースを簡単に取得

便利コマンド

RUN --mount=type=cache,target

パッケージマネージャのキャッシュを効かせる 例えばこんなDockerfileがあるとします FROM ubuntu RUN apt update && apt install -y gcc RUN echo "AAA" > /root/fileA これをbuildkitを有効にした状態でビルド すると手元の環境で約80秒程度でビルドが完了…

プログラムの領域

領域の話