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

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

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

tcpサーバでのLinux カーネルチューニング

メモ # NIC に対する受信パケットの最大キューイング数 net.core.netdev_max_backlog = 16000 # TCPとUDPの受信バッファのデフォルトサイズと最大サイズ net.core.rmem_max = 4194304 # TCPとUDPの送信バッファのデフォルトサイズと最大サイズ net.core.wmem…

diffをいい感じにシンタックスハイライトする delta

github.com gitおよびdiff出力用のビューア。diffにいい感じに色をつけてくれる便利ツールです。 インストール macなら以下でインストール可能。他OSも丁寧にREADMEに書かれている brew install git-delta README.md before git diffのみ実行 after git diff…

【Linux】プロセス番号の最大値 Linux カーネルパラメータ

システムプログラミングのテスト時に覚えた知識。 linuxはプロセスを一意にするためにpidという値を使用している。この値はデフォルトで32768となっているが軽量プロセスを大量生成したりプロセス数が最大値じにforkした後の動作を確認するときに使えるカー…

いい感じのvimが入ったdocker image

いい感じ = 私が使いやすいって意味でのDocker image # syntax=docker/dockerfile:experimental ARG ALPINE_OS_VERSION="3.8" #### Builder #### FROM alpine:${ALPINE_OS_VERSION} AS builder LABEL maintainer="ryucrosskey@gmail.com" WORKDIR /home/vim …

gcc mainの前に関数を呼ぶ

gccの拡張を使った小ネタ。ユースケースはあんまり分からないがcソースでmain関数の前に処理を行いたいケースで以下のgccの拡張を使うとできるよって話。 具体的なサンプルは以下 環境 [root@localhost ~]# gcc --version gcc (GCC) 4.8.5 20150623 (Red Hat…

共有メモリの生成

共有メモリとはプロセス間通信の中でも割と簡単に行える方法の一つ。SHARED MEMORY wikipediaより 複数のプログラム間の通信手段として使う場合と、単に複製を用意する冗長さを防ぐ目的の場合などがある。共有メモリはプログラム間でデータをやりとりする効…

goのlspをvim-lspにお引っ越し

vim-lspを使ってgoを便利に使っていく設定方法 vimrc call plug#begin('~/.vim/plugged') Plug 'prabirshrestha/async.vim' Plug 'prabirshrestha/asyncomplete.vim' Plug 'prabirshrestha/asyncomplete-lsp.vim' Plug 'prabirshrestha/vim-lsp' Plug 'mattn…

GitHubActionsで手動実行機能が実装された workflow_dispatch

ついに待望のGitHubActionsにジョブの手動実行が追加されました。 github.blog ざっくり使い方。 とても簡単でした。 onコンテキストにworkflow_dispatchを追加するだけで手動実行が可能になります。 homecmd/docs.yml at master · ryuichi1208/homecmd · Gi…

Python Queueの話

pythonにはデフォルトでキューを実装するのに便利な機能が実装されている。競プロなんかでも結構頻出で、自前で実装するよりも全然早いのでよく使ってる。 簡単に使い方のメモ的に書いていく。FIFO、LIFO、プライオリティキューなんかは特に頻出。 似たよう…

perl ワンライナナー TIPS

ライブラリのインストール先のパス一覧 perl -e 'foreach $path (@INC) { print "$path\n"; }' | xargs -L 1 ls -ld インストール済みのperlモジュール一覧 find `perl -e 'print "@INC"'` -name '*.pm' -print コメント行を削除する perl -ne 'print if !/^…

CNCFでよく聞くソリューションたち

オーケストレーション Kubernetes (go) github.com コンテナランタイム contaierd (go) github.com サービスメッシュ istio (go) github.com パッケージマネージャー github.com DNS CoreDNS (go) github.com Monitoring ストレージ rook (go) github.com RP…

競プロ + Python

自分用簡易ライブラリ