スベリミナル効果

技術的なことを書こうと思ってたけど何でも書くことにします


通常用

ふざけ用
何でもコメントください。誤り指摘コメントなどには「コメン(ゴメン)」ト誤ります(1スベリ)
ダジャレ好きの方はこちらにどうぞ(更新してないけど)→スベリブログ2.0

今年もbuilderscon tokyo 2018 で「知らなかった」を聞いてきました!

builderscon.io

自分がbuilderなのかどうかはさておき、今年もbuildersconで知らなかったを聞いてきました。興味深く面白く、そしてタメになるお話が満載で大満足でした。ブログを書くまでがbuildersconということで、印象に残った話をサラリと書き残しておこうと思います。

IoTの闇

書いてはいけない内容ということで何も書けませんが、こういう、ここだけの話が聞けるのはすごくよいです。来年は闇のトークを増やしてもらいたい。こわいな~こわいな~。

人類バーチャル化のすすめ

受肉したアバターによる発表、新鮮でした。これはいつかマネしてみたい… twitter.com

VR面接の話はすごく興味深くて、まずは単純に受けてみたいと思いました(アバター無いけど)。ただ、アバターの認知話もあったなかで、実際にVR面接があちこちでできたとしたらアバター格差が生じて「同じアバターじゃないと不公平だ」的なクレームが発生しだすんだろうなあ…とか無駄にいろいろ考えてしまいました。3Dモデル制作業務の面接ならバッチリなんですけどね。広く普及してもらいたいけど、それはそれで色々起きそう、みたいな… どんな世界が来るのかなあ。

また、内容とは別ですが、会場の様子をWebカメラVR内に投影する(今回は失敗)とか、16:9のつもりで空間配置するとスライドに被ってしまうとか、VR登壇の工夫や注意点みたいなものも垣間みれて面白かった。こういう発表も含めて、今後のVRの広がりに期待して乗っかっていきたいと改めて思いました。

次世代通信プロトコルにおけるセキュリティ・プライバシー保護・パフォーマンス

TLS1.3、QUIC関連の詳しいお話でした(少し遅刻した…)。この手の専門的な話が聴けて本当にありがたやです。ここでは細かく書けませんが、今日聞いた話でも色々と自分に関係しそうな変更があったので、細かい部分をしっかりキャッチアップしなきゃと思います(この時点ですでに遅いんだけどね…

最後の質疑応答にて「トラッキングできる余地も必要なのでは」という意見に関するプロトコルコミュニティでの議論についての回答は貴重でした。「正解がないこと」と質問者の方も言っていましたが、喧嘩別れになるまで議論を繰り返しながら良い方に発展していると思うので、正直トラッキングしたい側の私ですが、プロトコルを尊重して一緒に進んでいきたいものです。

ajito.fm Live

いやー、昨年のランチセッションで知ってからちゃんと聴いています。全然Web系ではないのですが、和気あいあいとした技術トーク、すごく面白いです。

高集積コンテナホスティングにおけるボトルネックとその解法

ちょうどLinuxカーネルコード読む必要性がある調査をしてたのでわかりみが深かった。調査コマンドなどのノウハウは明日から役立つこと間違いなしで超感謝です。コンテナ数そっちのけで聞いてた笑

なぜエンジニアはパフォーマンス計測しないのか

直接的な出費が一番あったセッションです。様々な生活データを収集し因果関係を探っていく素晴らしい企画。単純にガジェット紹介として聞いてても面白かったです。

やった、やはり夜型でした。

Withings Aura Smart Sleep System [並行輸入品]

Withings Aura Smart Sleep System [並行輸入品]

これも悩みだしてます… 類似品もあるようなので少し調べてから決断します。中途覚醒のクセがすごいんですわ…これで治るわけではないけど、まずは可視化から…

腰痛対策でスタンディングデスクには既にしていましたが、ステッパーまでは考えてなかった。立っているとき意味なくステップを踏んだりはしている。ステッパーもありだなあ…

すぐ買いました、積読に埋もれる前に読まなきゃ。

とまあ、一番反応させて頂いたセッションでした。集中度を測るとかは今後流行るかもしれないですよね。JINS MEMEも元々興味あったので、ああいう使い方になるのかあなど参考になりました。まずは健康を維持できるようがんばります…

おわりに

他のセッションも全てに学びや刺激があり大満足でした。登壇者の皆様が本当に楽しそうなのがいいですよね。Tシャツからお弁当からコーヒーから天然のうまい棒まで配られ生活に困らないカンファレンスですw
ただ、部屋のキャパシティが明らかに不足してしまっているのは辛いですね。私個人は全ての希望セッション聞けましたが、聞きたいけど入れなかった…は辛いので、なにか策があればなあと思いました。満員御礼なのは素晴らしいことなんですけどね。部屋広くするのが難しければ、ライブビューイング部屋とか…スライド見るのがより難しくなってしまうかな…

(追記)忘れてましたが、セッション動画は上がるんでしたね。Q&Aも音が入るように、質問内容を登壇者が繰り返してるんでしたね。後から見ることは可能ということで、このあたりは非常に素晴らしいです。


ということで、素晴らしいカンファレンスを実現してくれたスタッフの皆様、知らなかったを教えてくれた登壇者の皆様、本当にお疲れ様でした、そしてありがとうございました。来年も是非参加したいです。LTくらいはやれるようになりたいけどなあ…(最後、登壇したこと無い勢として挙手しなかったな…)

Maker Faire Tokyo 2018にフラっと行ってみた

前々から行ってみたいと思っていたけど何だかんだ行けてなかったMaker Faireに遂に行ってきました(day1のみ)。「遂に」と言っても、普段から工作してるわけでもなく、目当てのものがあるわけでもなく、単純に面白そうだなあということでフラっと訪れました。

 

 

フラフラ~っと見させてもらった中で、気になったり面白かったものをメモ的に残しておこうかなあと。写真とか全然撮らず、ただ楽しんでしまったので…

 

・重心移動による質量感提示デバイス

スズキHD | Maker Faire Tokyo 2018 | Make: Japan

最近VRにハマっている自分としてはこれ凄く良いと思いました。

私が行ったときの展示はボタンを押すと、ビールジョッキの重さに変わる、というものでしたが、結構リアルだったと思います。HMDかぶって持ったらビールだと信じれるはず。仮想空間だとなんでもできるわけですが、体験をリアルなものにするにはこういう創意工夫が重要になると感じました。脳に電極刺して自由にコントロールできるようになれば不要ですけどな。

 

・イス型入力デバイス

いっちー | Maker Faire Tokyo 2018 | Make: Japan

調整中でした、体験したかった… これは近い将来にVRがそれなりに普及したら、家庭での一つの遊び方として出てきそう。ご家庭の椅子に取り付けて遊べます的な。工夫うやなあ。

 

・超小型ホバークラフト

超小型ホバークラフトについて - 超小型ホバークラフト研究室

普通に人乗せて結構動いてました。乗ってる子供は楽しそうでしたね。私が子供の頃、ホバークラフトのおもちゃのCMを見てワクワクしたものですが、今の子達はこれに乗ってワクワクしてるんやなあと時代の流れを感じてみたり。

 

・めくるめく人工知能の世界

センターステージ | Maker Faire Tokyo 2018 | Make: Japan

センターステージの発表講演の一つ。タイトルに惹かれて行ってみたら「タイトルをこれにしてたの昨日思い出してどうしたものかと」という始まりで(笑。食べ物画像を顔画像に変換するという謎のAI技術の紹介などから、AIが普及した後の真面目な熱い?お話でした。公に言ってはいけないのかもしれないけど、AIとは直感の獲得であるという表現をされていて、なるほどなあと。AIの素人が聞いても興味深い話でした。どんなかたなのかなあ、と調べてみたら天才プログラマーの人だったびつくり。

japanese.engadget.com

あんな気軽に聞いてて良かったのかと思いました。最後の方で、中学生にpythonを教えることの意義を話されていましたが以下に詳しく書かれていました。うーん、フラっと行ってありがたい話聞けた、恐るべしMaker Faire

夏休みだから、30人の中高生にPythonを教えてハッカソンをやってみた : 情熱のミーム 清水亮 - Engadget 日本版

 

・DISCO TECH

DISCO TECH | Maker Faire Tokyo 2018 | Make: Japan

Hololensをかけることにより、曲に合わせた空間演出を体験できるHololens meets LIVEの方に注目。残念ながらデモは動いておらず上記ページのデモ映像だけでしたが、これは需要あるだろうなあと。

(現在放牧中の)いきものがかりライブによく行っていた私ですが、感動した演出効果って当然ながら物理で頑張ってるんですよ。例えば以下とか(すぐ消されそう)。

いきものがかり「おやすみ」Ikimonogakari "Good night" - YouTube

Ikimonogakari kirari いきものがかり キラリ ライブ - 動画 Dailymotion

このライブの後、照明について調べたけどもう忘れてしまった… とにかく金かかってるよなあと。こういうのが、もっと自由に簡単にできるようになると体験の幅は格段に拡がるだろうなと感じた次第です。このライブは演出含め良かったなあ… 活動再開しないかなあ(趣旨ずれとる

ただ、輝夜月ライブみたいに完全バーチャルに行ってしまうと100%自由になってしまいますが^ ^;

 

・micRokuro

KATO YOSHIMASA | Maker Faire Tokyo 2018 | Make: Japan

ダークルームをスルーするとこだった危ない。これは不思議体験ですね。子供も大人も驚いてました。結構昔からあったみたいです。なにか応用方法がありそうな気もするが…

 

・3D影絵

ヒゲキタ | Maker Faire Tokyo 2018 | Make: Japan

ダンボールとセロファンでできた3Dメガネを渡されて、うわーこのご時世にこれはどうなんやろ… とか思ってスミマセンでした。いざ体験すると、想像以上に迫力があり、迫ってくる影に思わずのけぞってしまいました。今回は場所などの都合上ハーフドームということで、フルドームも見てみたくなりました。

 なるほど確かにという感じでした。影絵ももちろん、場馴れ感もすごいなと思いましたが、やはりこれも長くブラッシュアップされているものなんですね。いやー、世の中には凄いものがたくさんあるなあ。

higekita.wixsite.com

 

 

といったところで。もちろん他にもたくさん気になるものがあったのですが、すべて挙げてたらキリがないので… 最後に書いたとおり、世の中には知らない凄いものがたくさんあるし、日々こうやって創り出されているんだなあと実感できました。いつか参加側に回れるよう精進したいです、はい。

 

July Tech Festa 2018に今年もまた行ってきました

インフラエンジニアの夏の祭典、July Tech Festaに今年も行ってきました。かれこれ3回目なわけですが、昨年参加からもう約1年経ったのか…と月日の体感速度の早まりを感じております…昨年からまるで成長していない… まあ、そんな無力感を味わうのも技術系カンファレンスにいく醍醐味ですよね(お前だけや

 

さて、早速、公開されているスライドを探して…と思ったら資料リンク集を公開されてくれている方がいらっしゃったので即リンクを貼らせていただきます。超有用じゃないすか… 

 

Qiitaにもありました。

qiita.com

 

それでは、聴いた中からいくつかピックアップして感想など。「Qiita」「聴いた」を掛けたわけじゃないです。(うるせえよ1スベリ)

個人の見解ですので誤解釈があってもご容赦を… 

 

[B20] 副業で収益化を目指す!月数百円から始めるWebサービスの立ち上げから運営まで

"ほとんどの新規サービスは失敗する"
なぜなら、「一度もリリースしないから」

これな。

一人で作る、まずは趣味のスケールで小さく、大きな問題は下手に立ち向かうより回避する、など納得の金言が満載でした。毎日続けるってのがなかなかあれなんですが… ローカルリポジトリに糞みたいな残骸コードがぼちぼちある身として見習いたいと思いました。

ってかこのお話の実例である Lingomine もすごく良さそう… ぶっちゃけアカウント登録しなくてもスッと使えるので、登録者数以上に利用者がいそうな気がしました。なかなかこのクオリティまで到達できる自信ないなあ、すごいなあ…と弱気をコッソリ呟いていたら励まし(?)のお言葉をいただきました、ありがてぇ… 

 

私的には、トケイロボットがしれっとサイトマスコットになっているのを楽しみにしています。

 

[A30] 明日から実践できる!運用自動化に必要な「テスト」にまつわる技術

自動化=機械化=手順をプログラムに置き換えること、そのプログラムはテストを要するものである。運用を自動化する場合、当然、本番環境でどう振る舞うかを確認すべきだが、本番環境とテスト環境が違ったりすることあるよね、じゃあテスト環境も同じように作らなきゃね、ってお話(と理解しました)。わかりみしかない。テスト環境のIP古いとか、OSすら古いとか超ある。

私のとこでは、環境構築がほぼ自動化されていないのでこの発表の内容を参考に見習わなければいけないところです。一方、テストや開発のための環境構築などはそこそこ自動化しており、そこはガッツリbashでやってまして、Ansibleみたいな構成管理ツールは全然馴染みがありません。そういう意味で、bashstepsは興味深いツールでした。あとで触ってみたいと思います。

スライド公開されるかなあ…チラッ

 

[D40] ネットワーク自動テストの実適用 〜現地に人がいないからネットワークの通信確認は利用者側で…なんてぬるい運用はもうやめようと自動テストを入れてみた我々が見たものは…!

前回フェスタでもネットワーク自動テストのお話があったようで、その続きの展開ということでした。タイトル通り、自動テストの枠組みを確立して実地実験してみたけど、同時に行った設定の自動化(機械化)により、自動テストで発見するような設定ミスがなくなったと。ではコストをかけてまで自動テストを促進する必要性は果たしてあるのか…!?モヤモヤ…  というモヤモヤ感を共有する会でした。

私自身は、ネットワークの設置作業をする側でなく設置後のトラブルをリモートで調べる役割なので、自動テストは絶対やったほうがいいぜよ!そこで潰せるものは潰しておいてくれ!という立場なので、どうすればテスト残してもらえるやろか…とずっと考えてました。 

懇親会でお話させていただいた感じだと、上記のようなテスト内容は当然あるものの、リアルな導入環境は発表資料のケースが主で、過去の事例的な蓄積はない中で効果を見せられないと導入事例も増えない、というジレンマがあるようでした(誤解・記憶違いがなければ…)。

とはいえ、こういったテストケースが自動で行えるなら、多少コストがかかろうが導入する意味は大きく、可能であればそのまま監視運用としても使用し、障害の即時発見、さらに可能ならば即時切り替えによる暫定復旧まで考えていくと相当有用だろうなあとか、まあいろいろ考えさせられました。自分の中で勝手に盛り上がってしまいました笑

 

ネットワークの話は、個人的に同意できる点が多いため、「ねっ!」と沸ーく ことになりやすいですね。(無理矢理な2スベリ)

 

終わりに 

ここで挙げたトークは、仕事と特に関わっていたりしたものだけで、他のお話や、スカウティングセッションも非常に有意義でした。そういえば、TISさんに関心しただけのツイートの伸びがすごかった…組織票かな?(おい

トークは毎年どれを聞くか悩みまくりですからね… そして懇親会では面白い(面白がってはいけない)インフラ苦労話を聞けたり、昨年話した方と今年もまたお話できたりして楽しかったです。私はそんなに酒飲まないのでノンアルは歓迎ですw 

毎年、1000円で参加してしまって本当に良いのか、という軽い罪悪感を感じるほど素晴らしい祭典です。登壇者、スタッフの皆様、スポンサーの企業様、本当にありがとうございます。また来年あれば是非参加したいです!

 

しかし、"インプットだけで満足しちゃうおじさん"はそろそろいい加減にしないといけないなあ…と毎年思っている気がする…

急性腰痛にまたなったのでスタンディングデスク(昇降デスク)を買ってみた(効果確認中)

オッス、オラ、腰椎分離症!

ということで腰痛が元々出やすい私なのですが、3年前に急性腰痛で救急車騒ぎを起こしてからは、それなりに腰に気を遣っていたつもりでした。しかし、またもや再発してしまいました… そんな今回の経緯はAppendixに書いておきます。

腰に問題を抱えた身ですがPC作業時間は増える一方であり、これからも益々勤しんでいきたいと思っておるわけです。3年前は、当時の記事にあるように、横になりながらノートパソコンをいじれる簡易的な仕組み(?)を作りました。でも、腰は痛くなくても姿勢的に辛いし、横になってたら眠くなるし、何と言ってもせっかく増強したデスクトップPCが使えんのです(※リモートデスクトップする手もあるけど)(※本当に座れないレベルで痛いときは凄く役に立ちます…)。

そうだ!スタンディングデスクにしよう!

ということで、京都に行くかのごとく突然の意思決定をして調べてみたところ、2つの選択肢がありました。

  • 今の机をまるっとスタンディングデスクにする
  • 今の机に机上用のスタンディングデスクを置く

このあたりなど参考にさせていただきながら悩みまくりました…  www.yururimaaruku.com

私として満たしたかった要件は、

  • デュアルモニタを維持したい(ある程度の広さが机上に欲しい)
  • 立ったり座ったりしたい(一日の中で何度も高さを上下させたい)
  • 現実的な価格

という点です。結果的に、今の机を捨て、昇降タイプのスタンディングデスクを選択しました。これが意外と良かったので、久々にブログに書いてみようとあいなったわけです。

昇降デスク

で、買ったのはこれです。メーカー名とか無いし、他のショップにも同じものが並んでいてそっちは説明が少ないとか、ちょっと怪しげだったのですがトライしてみました。

片手で楽々ワンタッチ昇降!【送料無料】 スタンディングデスク 幅120 キャスター付き ガス圧式 昇降デスク PCデスク 高さ調節 伸縮 スタンディングテーブル 木製 キャスター パソコン デスク 上下昇降 キャスター パソコンデスク 昇降式デスク
価格:29800円(税込、送料無料) (2018/5/20時点)




結構しっかりしていて、座りも立ちもバッチリいけます。

f:id:hijili2:20180512004603j:plain f:id:hijili2:20180512004455j:plain

ただ、うーんと思ってしまう部分もあります。

注意点:上げ下げのスムーズさ



上げ下げは若干固いです(力がいります)。商品ページの動画のようにスムーズにはいきませんでした…

一回動かしたあとはこのようにスムーズになるんですが、

しばらく時間を置いてまた動かそうとすると、なかなか固いです… まだ腰が痛かったらこれでさらに痛めるんじゃないか心配になるくらい…

ガス圧式の仕組みがイマイチ理解できていませんが、操作している感じだと、コツとかでスムーズになることは無いんじゃないかなあと。まあ、軽々と上下されたらそれはそれで不安にもなるので、これくらいでも良いかなあという個人の感想です。

注意点:重い

届いた梱包としてはこんな感じでした。この写真と、天板の2個口でした。難しくはない組み立てですが、単純に重いのと場所を取ることにご注意ください。
[f:id:hijili2:20180504165342j:plain

注意点:立っても腰痛が治るわけではない

あたりまえ体操。"まだちょっと痛みあるけどまあ大丈夫かな" というタイミングで届いたため使ってみましたが、普通に歩くより同じ姿勢で立ち続ける方が辛く、少し痛みが出てしまいました。腰痛の種類にもよると思うので、スタンディングデスク化して本当に良い効果があるのかを医者に確認するとか、立ちPC作業を一定時間試してみるなどしてから購入した方が良いです(あたりまえ体操)。

立って仕事すると健康によい…に科学的根拠はなしか | ギズモード・ジャパン

この記事のように、立ち続ける方がよくないという説もあるので、お金を出してスタンディングにすべきか悩ましいところではあります。




注意点としてはそんな感じです。本格的にスタンディングし始めてまだ1週間程度ですが、座って作業するよりは腰が楽です。ただし、普通に疲れるので長時間は難しいという感じです。
といった感じで継続的に効果確認したいと思います。何かあったらこの記事をアップデートする…かもしれません。

机上用スタンディングデスク

参考までに、選ばなかった方についても書いておきます。 このブログ様が一番参考になりました。他にもググって検討した結果、机上用はやめました。

norikazu-miyao.com

場所を取る

上の記事を見ると、机をかなり占領してしまいます。また、記事の昇降デスクはモニタ1つが限界のサイズです。2つ置けるものも探せばありましたが、当然ながらサイズ・価格はさらに大きくなります。

机上用でも重い

私の要件(最低モニタ2つ置ける)を満たせるものだと、20kg以下のものは見つかりませんでした… 今の机の耐荷重値が見つからず、この20kg+モニタ2台+諸々を机の上に追加して大丈夫かという不安がありました。耐荷重チェックは忘れずに…

座り姿勢のときに、モニタが今より少し高くなる

これも地味に効きそうかなあと。上記記事にもあありましたが、一番低くしても10cmくらいは高くなってしまうようで、地味に見づらくなりそうかなと。こういうのをVR空間でシミュレーションできたら凄く良いなあと思いました。

値段も結構する

約30000円の昇降デスクが見つかったから比較できるわけですが、机上に置く昇降デスクもわりとそれに近い20000円前後するので、全取っ替えできるのならしちゃった方がよさそうだと判断しました。




今の机を変えたくない!という場合は机上スタンディングデスクは選択肢になると思いますが、全取っ替え可能ならば、やや微妙かなあという印象です。

ということで、スタンディングデスクを買ってみた、のお話でした。質問などありましたらコメントにどうぞ。

Appendix. 今回の急性腰痛のあらすじ

以下、腰痛事例の参考まで…

  • 1ヶ月間くらい、なんか腰痛いなあ程度の状態が続いていた
  • とある朝に腰に強い違和感が発生、横になって1時間くらい様子を見た後、立ち上がってみようとしたら急激な痛みで立てなくなる
  • 急過ぎて怖かったので救急車で搬送
  • CTまで調べても特に所見が無い、いわゆる「急性腰痛」


こうなると病院も冷たいもので、痛み止め(飲み薬+座薬)打って痛くないなら帰ってどうぞ、という感じでした。痛み止め打った後もメチャクチャ痛かったのでそのまま入院させてもらいましたが…

  • 救急扱いなので整形の診察してもらえず(最初にそういう誓約書書いたので文句は言えないけど)
  • 「痛い」と言うと「じゃあ無理しないで安静にしててください」しか言われない
  • 帰っても生活辛そうだし甘えが出る
  • 結局、4日間入院、ほぼ寝たきりで過ごす


正直、これが良くなったようです。どこの情報を見ても「急性腰痛後は動けるようなら体をすぐ動かさないと治りが遅くなる」とあります。多少無理してでも、もう少し動かしたりなんなりするべきだったなあと後悔しています… とは言え、今回はキッカケというキッカケがあまりなく、数値的に言うと30くらいの痛みが続き、あるとき一気に120になった感じだったので、大丈夫かどうかの自己判断ができなくなってた面はあります…
結果、一ヶ月経っても微妙な違和感や軽い痛みが残ってしまい、二ヶ月弱経過してやっと元に戻った、という感じです。腰痛の種類によっても色々あると思いますが、所見の無い腰痛の方は腰痛い(要注意)です!(申し訳程度の1スベリ)




正直、元々運動不足+腰椎分離症の中年オッサンがMHWをやりすぎたことが一番の原因であったように思います… 運動します…

『Linuxのしくみ』を読みました

OSCにて、著者様ご本人から直接売って頂いた『Linuxのしくみ』ですが、読むの遅くてモタモタしてましたが無事読み終わりましたので軽く感想など書かせていただければと思います。遅かったのは花粉症とMHWのせいだ。

[試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識

[試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識

読んだ人

  • Linux触り出してそろそろ10年目(マジかウソだろおい…)
  • だいぶ前に職場でカーネル2.6解読室とかの輪講とかはやってたけど「お、おう」くらいな理解度だった
  • Kernelのコードまで読んだ経験はあまり無い
  • 難易度の高くないLAMP周りをボチボチ(高負荷になることが無い簡素なUIとか)
  • iptablesとかnetfilter周りをボチボチ
  • OSSVPN繋ぐとかボチボチ

微妙なスペックという自負があります。そんな私にはすごくためになった。試すの大事。

全体的に

前提知識が僅かにあったことはあると思いますが、「分かりやすっ!」というのが全体的な印象でした。前書きにも書かれていたとおり、図表を用いて簡潔に説明してもらえるのが凄く良いです。それこそ昔読んだカーネル解読室とかは、図がソースコードの構造体ベースで書かれてたりしてなかなかピンと来なかった記憶があります(ゴメンナサイ、7年前当時ということもありますが…)。

知らないことを理解するには、まず全体像・概要を掴んでから詳細に進むのが近道だと思うので、そういう意味で「まずはこの本読んでおこうか」と勧められる本ではないでしょうか。と言っても、課題意識が無いと頭に入らないので、Linuxのトラブルに悩まされ始めたあたりでそっと横に置いておき、自発的に読んでもらえると「おお、なるほどおお」ってなるんじゃないかなあと。私もその頃に読みたかったこれ。

また、5章以降はLinuxを長く触っていても「へー」となる内容がサラッと沢山書いてあります(10年やってたら常識やろ、と怒られるかもしれませんが…)。読むだけなら時間はかからないので、サッと読んでみるだけでも損はしない内容です、たぶん。初学者はもちろん、タラタラやってきた中堅にもビシっと響くポイントがあると思います。

以下、ちょろちょろ試してて思った細かい点をいくつか。

4章 プロセススケジューラ

プロット

みんなこういうのどうやってプロットするのかしら。僕はgnuplotくらいしか知らんけど… plotの仕方は目的じゃないから簡単にプロットできる方法があるといいかなあと思いました。取り急ぎクソコード置いときます。

#!/bin/bash

plot1() {
        file=$1; [ ! -e "$file" ] && { echo "file doesn't exist!"; exit -1; }
        gnuplot -e "set ytic 1; plot \"$file\" u 2:1 w p pt 6; pause -1"
}

plot2() {
        file=$1; [ ! -e "$file" ] && { echo "file doesn't exist!"; exit -1; }
        gnuplot -e "plot \"< grep ^0 $file\" u 2:3 w p, \"< grep ^1 $file\" u 2:3 w p, \"< grep ^2 $file\" u 2:3 w p, \"< grep ^3 $file\" u 2:3 w p; pause -1"
}

case "$1" in
        p1|plot1) plot1 $2 ;;
        p2|plot2) plot2 $2 ;;
        *) echo "usage: $0 plot1|plot2 filename"; exit 1;;
esac
$ yum install gnuplot
$ ./myplot.sh p2 1core-2process.txt 

6章 記憶階層

結果が合わない!?

ここまでは概ね同じ結果を得られていましたが、 P.183「ファイル書き込みの実験」であれ?ってなりました。

$ dd if=/dev/zero of=testfile bs=1M count=1K oflag=direct
1024+0 レコード入力
1024+0 レコード出力
1073741824 バイト (1.1 GB) コピーされました、 2.21413 秒、 485 MB/秒
$ dd if=/dev/zero of=testfile bs=1M count=1K 
1024+0 レコード入力
1024+0 レコード出力
1073741824 バイト (1.1 GB) コピーされました、 1.20976 秒、 888 MB/秒

おや、directの有無で本に書かれているほどの差(8倍界王拳)が出ないなあと。sarを見てみると...

$ sar -B 1
   :
011539秒  pgpgin/s pgpgout/s   fault/s  majflt/s  pgfree/s pgscank/s pgscand/s pgsteal/s    %vmeff
011540秒      0.00      0.00     32.67      0.00   1225.74      0.00      0.00      0.00      0.00
011541秒      0.00      0.00     27.00      0.00   1243.00      0.00      0.00      0.00      0.00
011542秒      0.00      0.00     25.00      0.00  22725.00      0.00      0.00      0.00      0.00
★ oflag=directあり実行時 1GBがすぐにページアウト
011543秒      0.00  58373.00    540.00      0.00   2711.00      0.00      0.00      0.00      0.00
011544秒      0.00 323584.00     18.00      0.00   1349.00      0.00      0.00      0.00      0.00
011545秒      0.00 580608.00     28.00      0.00    936.00      0.00      0.00      0.00      0.00
011546秒      0.00  85164.36   1950.50      0.00   3528.71      0.00      0.00      0.00      0.00
011547秒      0.00      0.00     17.82      0.00   1337.62      0.00      0.00      0.00      0.00
011548秒      0.00      0.00     17.82      0.00    890.10      0.00      0.00      0.00      0.00
   :

011551秒      0.00      0.00     18.00      0.00    900.00      0.00      0.00      0.00      0.00
011552秒      0.00      0.00     16.82      0.00   1261.68      0.00      0.00      0.00      0.00
★ oflag=direct なし実行時 部分的にすぐページアウト、その後じわりとページアウト
011553秒      0.00 106512.00    541.00      0.00   2237.00      0.00      0.00      0.00      0.00
011554秒      0.00 256000.00     18.00      0.00   2021.00      0.00      0.00      0.00      0.00
011555秒      0.00 299168.63     27.45      0.00   1317.65      0.00      0.00      0.00      0.00
011556秒      0.00 131072.00   1998.00      0.00   3093.00      0.00      0.00      0.00      0.00
011557秒      0.00      0.00     18.00      0.00   2309.00      0.00      0.00      0.00      0.00
011558秒      0.00     73.53     17.65      0.00    882.35      0.00      0.00      0.00      0.00
011559秒      0.00      0.00     18.63      0.00   2331.37      0.00      0.00      0.00      0.00
011600秒      0.00      0.00     17.65      0.00   1540.20      0.00      0.00      0.00      0.00
011601秒      0.00  86016.00     26.00      0.00   2037.00      0.00      0.00      0.00      0.00
011602秒      0.00 163840.00     18.00      0.00   2402.00      0.00      0.00      0.00      0.00
011603秒      0.00      0.00     18.00      0.00   1569.00      0.00      0.00      0.00      0.00
011604秒      0.00      0.00     18.00      0.00   2075.00      0.00      0.00      0.00      0.00
011605秒      0.00      0.00     26.67      0.00   1099.05      0.00      0.00      0.00      0.00

ページキャッシュすぐ吐き出されてるなあ…なんでや… と、わりと悩んでしまいました… うん、メモリ4GBしか無かってん。非推奨と言われつつ仮想マシンの4GBメモリ割り当てLinuxでやってたので…

$ free -m
              total        used        free      shared  buff/cache   available
Mem:           3790         750        1392           1        1647        2763
Swap:          3275           0        3275

ちょっと追加で調べると、Linuxは空きメモリ全部をページキャッシュ候補とすると。その前提で、本に載ってるパラメータ vm.dirty_xxx を考えなきゃアカンと。 /proc/vmstat を見ると現状の具体的なしきい値が分かります。

$ sysctl -a |grep vm.dirty
 :
vm.dirty_background_bytes = 0
vm.dirty_background_ratio = 10
vm.dirty_bytes = 0
vm.dirty_expire_centisecs = 3000
vm.dirty_ratio = 30 ★私の環境では30でした
vm.dirty_writeback_centisecs = 500
$ cat /proc/vmstat  |grep nr_dirt
nr_dirty 3
nr_dirtied 266252
nr_dirty_threshold 210895 ★この値はページ数なので、この値×4KBを超えると吐き出すわけですね
nr_dirty_background_threshold 70298

要は、私の環境では、ページキャッシュが800MBを超えてくるとすぐにページアウトするため、そのIO時間がかかってしまうわけですね。じゃあratio上げて1GBが収まればいいわけだと。

$ sudo sysctl -w vm.dirty_ratio=90
vm.dirty_ratio = 90
$ dd if=/dev/zero of=testfile bs=1M count=1K 
1024+0 レコード入力
1024+0 レコード出力
1073741824 バイト (1.1 GB) コピーされました、 0.3842 秒、 2.8 GB/秒

まあまあ近くなりました。やっぱ人権のある環境は実験結果も違うんだなー・・・

cybozushiki.cybozu.co.jp



とまあ、それはただの妬みとして、こんな感じでちょっと違う結果が出て、なんでだろ~ってなることがやっぱ重要だなあと(往々にしてそのままになりがちだけど…)。こういう罠(今日日の4GBは罠じゃないだろ)的な演習がちょいちょい仕込まれてるのもいいかもしれないですね。輪講とかやるなら特に。

7章 ファイルシステム

ファイルシステムは自分が関わらない所で決まってたのであまり調べたことが無く、知らないことがたくさんあって勉強になりました。Brtfs推し感が強いです(笑

P.215 まずは適当なパーティションを用意しましょう

8章でも流れでしれっと出てきますが、mkfsできる適当なパーティションって皆さん常備されてるもの?MOCO`S キッチンでサラッと出てくる、聞いたこと無い野菜やオイルのような印象を受ける人もいるかもと感じましたが・・・私だけ・・・?素人すぎ?

そんなわけで、8章とかはとりあえずVMの仮想デバイスで軽く試してみました。概ね傾向は同じだったけど、たまに うちゅうの ほうそくが みだれる 感じになった。けど・・・深掘りしてません・・・

誤記的なこと

HDDセクタ4096KBは・・・すごく・・・大きいです・・・

  • P.235 4行目 「使ってください。。」

"。"が一個余分。こまけー。

他見つけたのは正誤表に載っていました。

linuxのしくみのご意見集 - Google スプレッドシート

終わりに

大抵積読になりがちな私ですが、なんだかんだ大体試してしまいました。意外と副次的に学びがあったのは sar の使い方とかだったりします。何だかんだあんまり使ってなかったり、決まったオプションしか覚えてないとかだったので…(アカン)

後輩から聞かれても「さあ…」って感じでしたし。(これが言いたかっただけ1スベリ)

これでいざ必要なときに sar が使えなくて顔がサーッと青くなることも無くなりますね!(笑いの統計情報が0に張り付く2スベリ)


ついダジャレ言うの忘れちゃうから最後に言っておいた。どうもスイマセンでした。

参考リンクなど

ページキャッシュ周りでお世話になりました

Linuxにおけるメモリ管理 - MogLog
Linuxページキャッシュの設定を変更してWrite I/Oをチューニングしたメモ - YOMON8.NET
いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方 - Qiita