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

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

【Linux】ltraceをstraceしたらptrace(2)を知った

ltraceをstraceしたらptrace(2)の存在を知りました。 surf.ml.seikei.ac.jp ptrace() システムコールは、親プロセスが、別のプロセスの実行の監視/制御を 行ったり、コアイメージ (core image) やレジスタの調査/変更を 行ったりする手段を提供する。 ptrace…

【MySQL】非同期IO関連のエラーが出たので見てみた

非同期I/Oのコンテキスト数は/proc/sys/fs/aio-nrで確認でき/proc/sys/fs/aio-max-nrに達すると、io_setup システムコールの戻り値に EAGAIN が返される。 $ cat /proc/sys/fs/aio-nr 0 $ cat /proc/sys/fs/aio-max-nr 65536 MySQLで遊んでいたら以下のよう…

ITエンジニアの転職活動でやってみて有益だったかなって思っていることを列挙してみる

ryuichi1208.hateblo.jp って記事をちょっと前に書いたがこのときにやってた転職活動でやってみて良かったと思ったことを列挙してみる記事。転職活動自体は2021/02 ~ 2021/05くらいまでやってて選考まで進んだのは4社で3社内定の1社不採用という感じだった。…

【MySQL】アクセス頻度の多いテーブルを調べる

dev.mysql.com table_io_waits_summary_by_table テーブルを見ればわかるらしいです。テーブル定義は以下でCOUNT_*をテーブルごとに表示して時間を置いて実行することで確認することができます。 mysql> desc performance_schema.table_io_waits_summary_by_…

【MySQL】コマンドチートシート

運用する上でとりあえず打っているコマンドをまとめていく。継ぎ足し継ぎ足しで充実させていきたい。 # テーブル情報の確認 SHOW TABLE STATUS FROM <DB名>; # テーブルの定義情報の確認 SHOW CREATE TABLE <テーブル名>; # InnoDBステータスの確認 SHOW ENGINE IN</db名>…

【Nginx】graceful shutdown

Gracefull shutdownってどういう実装なの? グレースフルシャットダウンの定義を以下とするなら 停止指示後に、新しい接続を受付しない 残った処理中の接続が完了するのを待ってから、プロセスを安全に停止する TCPレイヤでやることとしたらlisten socketをc…

cpuメモ書き

40並列でリクエストしているので、php-fpm側のアクティブなプロセス数も40です。 そこでCPUを休ませずプロセスを動かすと、ほとんど均等に40分割でプロセスを動かすことになるはずです。 ※CPUとプロセスの割り当てのロジックによる誤差はたぶんあるはず イメ…

yum providesでパッケージを確認する

よく使うコマンドでもどのパッケージをインストールすればよかったっけ?って何回もやってる気がするがprovidesを使えば解決することを思い出したのでメモ。providesを使うことすら忘れてコマンド名 yumとかでググってる。これを書くことで忘れなくなるとい…

【MySQL】innodb_log_buffer_sizeとinnodb_log_file_size

違いがわからなくなるのでメモ。 innodb_log_buffer_size InnoDBの更新ログを記録するメモリ上の領域。コミットされていないトランザクションのためのバッファのサイズ 大量・巨大な blob を書き込む必要がなければ、4MB-8MBで良い innodb_log_file_size Inn…

ngx_http_limit_req_moduleに今度こそ入門する

ngx_http_limit_req_moduleの説明 説明はほぼほぼ省きます。とりあえず公式を読むのが一番良さそうです。 mogile.web.fc2.com ngx_http_limit_req_moduleモジュール (0.7.21) は、定義されたキーごとのリクエストの処理レート、特に一つのIPアドレスから来る…

技術ブログと日常ブログを統合してみる

IT関連の話題をしゃべる自分とリアルでの自分を紐づけたくなくて日常系のブログと技術ブログを分けていたが日常ブログをえいやで閉鎖したのでこっちを技術ブログと日常ブログにしてみる。FC2とかアメーバとか紆余曲折してついにはてブに統合する。(小学生の…

「自分の中で大切に思ってる専門書」ってなんだろうって思ったので自分も書いてみた

hiboma.hatenadiary.jp を読んでいて「自分の中で大切に思ってる専門書」ってなんだろうって思ったので自分も書いてみた。とりあえず5冊を選んでみた。 初めてのPerl 作者Larry WallによるPerlの考え方、哲学にとても惹かれたのがこの本でした。Perlを始める…

ファイル名についてる日付ごとにファイル数を出すワンライナー

root@52b8c9922ca0:/o# ls -1 2021-10-11-aaa 2021-10-11-bbb 2021-10-11-ccc 2021-10-11-ddd 2021-10-12-aaa 2021-10-13-aaa 2021-10-14-aaa 2021-10-15-aaa 2021-10-16-aaa 2021-10-17-aaa 2021-10-18-aaa 2021-10-18-bbb 2021-10-18-ccc 2021-10-19-aaa 2…

よく使うcurlコマンドのオプション

背景 curlコマンドを使う際に毎回調べて実行しているのですがさすがに面倒なのでまとめてみました。 自分のevernoteからの転載なので誤記などあったら教えてください。 curl(カール)コマンドとは サーバから、もしくはサーバへデータ転送を行うコマンド。 FT…

bashで忘れがちな機能とかいろいろの備忘録

背景 シェルスクリプトを書くことが結構あるのでその備忘録代わりに記事を書いてみました。 特殊変数とは 特殊変数とは シェルによって自動的に値が設定される特殊な変数がいくつかあり、それら特殊な変数を参照することにより、様々な情報を取得することが…

MySQL5.7 の mysql_secure_installation

セットアップ時の初期パスワードがわからなくてどうするのってなったのでメモ。ドキュメント読めよって話でした。 weblabo.oscasierra.net

【Perl】アラームでタイムアウト

イディオム的に書いておく。 #!/usr/bin/perl use strict; use warnings; local $@; eval { local $SIG{ALRM} = sub { die "timeout!!\n"; }; alarm 2; sleep 3; # 時間のかかる処理 alarm 0; }; if ( $@ ) { print "exception: $@"; } alarm ${数字}を実行…

GMOペパボ株式会社へ入社しました。

あなたは誰 ペパボを知ったきっかけとか 入った経緯とか 宣伝: 転職に使った媒体 ここが辛いよ! 入ってよかった ほか pepabo.com GMOペパボ株式会社へ2021/07/01に入社しました。丁度3ヶ月経って多分試用期間も終わったはず(?)なので入社エントリを書いて…

【ProxySQL】mysql-shun_on_failuresの罠

「mysql-shun_on_failuresの罠」ってタイトルですが罠でも何でもない話です。 preforkなwebアプリケーション -> ProxySQL -> MySQL みたいな構成のシステムがあってProxySQL <-> MySQLでネットワーク不調かなんかでconnectionが一時的に貼れなくなった時にmy…

【MySQL】SHOW ENGINE INNODB STATUSの見方を学ぶ

SHOW ENGINE INNODB STATUSの見方が全然わからなかったので読み方を調べていく mysql> SHOW ENGINE INNODB STATUS\G; BACKGROUND THREAD ----------------- BACKGROUND THREAD ----------------- srv_master_thread loops: 0 srv_active, 0 srv_shutdown, 49…

【Perl】複数行の置換

echo "tea\nconst" tea const こんな出力からtestという文字を作りたいみたいなケースでperlのワンライナーでやろうとすると何も考えないと¥nで改行されてうまくいかないです。 echo "tea\nconst" | perl -pe 's/a\ncon//m' tea const これを防ぐためにはrec…

【ProxySQL】入門する

概要 ProxySQLを触る機会があったので入門してみた記事。2.1が最新見たいだが仕事で使うのが1.4なのでなるべくそのバージョンに合わせた内容で調べていく。(最新だとこうだね〜みたいなのは書いておくつもり) proxysql.com 目次 概要 目次 ProxySQLとは 主な…

【Linux】JVM系言語以外でも暖気運転は効果があるのかの考察(修正版的な感じ)

記事概要 今見ると色々違う気がしたので前書いたやつの修正版として上げてみた。後半は手をつけれなかった。。 JVM言語で話題の暖気運転についてJVM系言語(JIT)以外でも暖気運転は効果があるのかを考察した記事です。何かしらのベンチマークを取ったとかでは…

【k8s】ArgoRolloutsでカナリアリリースを試す

k8s

概要 github.com ArgoRolloutsを使ってさくっとカナリアリリースを試す記事です ArgoRolloutsとは KubernetesのCRDで標準ではできないブルーグリーンデプロイやカナリアリリースなどの高度なデプロイ機能を提供するOSSです。ArgoCDと組み合わせることでGitOp…

サービスディスカバリに関するメモ書き的なもの

Qiitaより転載 概要 サービスディスカバリを初めてみたのでそのメモ サービスディスカバリとは サービスディスカバリ(Service Discovery、サービス検出[1])はサービスのインスタンスがもつネットワーク上の位置を決定することである[2]。 引用元: サービス…

【Python】サブネット形式で値を渡すと国を判別するツールを書いた

github.com サブネット形式で値を渡すと国を判別するツールを書いてみました。ちなみにGeoLite2をローカルに置いてそこを参照するので外部サイトへの確認なんかを行わない作りになっています。(問い合わせし放題) 使い方はこんな感じ。slackとかから呼べると…

【Ruby】ワンライナーで便利そうなものを書いていく

背景 Ruby入門中だしでせっかくなのでRubyで便利だなぁと思ったワンライナーのTOP5を書いてみます。オプションとかは以下の記事がとてもわかりやすかったです。 maeharin.hatenablog.com 5位 webサーバ 定番のやつですね。nginxの検証とかするときにproxy先…

【Linux】fincoreコマンドを使ってファイルがページキャッシュに乗っているかを見るって記事を書こうとしたら自分で既に書いていた

「fincoreコマンドを使ってファイルがページキャッシュに乗っているかを見る」ってタイトルの記事を書いて色々ググっていたら自分で昔書いていた記事がヒットした。3年前くらいか。 qiita.com mincore(2)に見覚えがあったがなるほどとなった。。アウトプット…

【Linux】tcpdumpを使って通信しているパケットのtlsバージョンを調べるメモ

背景 提供しているサービスに対してクライアントがどのTLSバージョンで来ているのかを調べるみたいな場合にサーバのログで出せれば一番手っ取り早いですが「そんな機能ないよ!」みたいな場合も往々にしてあると思い、「その場合はどうするのが良いんだろう…

【vim】vimiumを触ってみる

Chromeの操作をvimっぽくするための拡張プラグインです。結構vimってます。 インストール方法 https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb 上記サイトへアクセスしインストールするのみ 使い方 Command Description…