サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
災害への備え
blog.hanhans.net
2021年になって、本の読み方、特にWebアプリケーションエンジニアが読むような技術本について、以前よりも適切な読み方を見つけられたと感じたのでまとめました。 一言でまとめると、ちゃんと読まないという読み方になります。 TL;DRまず、短気な人のために、具体的な読み方。 用意するものは以下の道具。 A4サイズ以上のノート(B5は小さい) 万年筆(赤と黒) キッチンタイマー 耳栓 最初の読書を必ず1時間以内にザッとメモをとりつつ終わらせます。1時間はキッチンタイマーで測ります。耳栓もして、スマホはどこかに遠ざけます。 メモは、本を読み始める前に「章・パート」単位でコマ割りしてしまいます。後で書く場所が足りなくなったら、修正テープで直したり、レポート用紙とか使って補えば良いので、気にせずにコマ割りします。 このあとは、気になる単語や内容・キーワードが見つけたら、ノートに書き込みます。メモは無理
前回、Docker for Macが遅いと思ったのは3年以上前の話で、その後はcachedでお茶を濁しつつUbuntu Desktopを常用するようになったことで、私の中で問題は解決していたが、久しぶりに仕事でMacを使うことになり、この問題に再会した。 https://blog.hanhans.net/2017/05/23/docker-for-mac-slow/ っていうか、3年間経っても改善してないのねというのが正直なところだが… おさらいをしておくと、Docker for Macが遅い問題は macOSはLinuxじゃない。 Linuxじゃないから、xhyveで立ち上げたLinux kitでDockerを動かしている。 開発でvolumeマウントをすると、DockerとホストOS間でファイルをやり取りするが、それが遅い このとき、Dockerが利用するファイルシステムがosxfsと
環境OS : Ubuntu 18.04 LTS ひとまず、何も考えずにBluetoothペアリングさせるとSynaptic Touchpadとは認識されない。Synaptic Touchpadというのは、二本指スクロールとか、タップクリックとかのいわゆるスマートなTouchpad。 カーソルは動かせるしクリックは出来るけど、その他は何も出来ない使えないTouchpadになってしまいます。 Magic Trackpad 2を取り巻く現状現状を正しく認識することがとても大事なので、調べた内容を一つずつ書きます。このコンテキストを知識として持った上で環境を整えれば、今後の変化にもついていけるはず。 1. ドライバーについてLinux用のMagic Trackpad 2ドライバーは有志の方が作ってくれています。 https://github.com/robotrovsky/Linux-Magic-
Dockerにcomposerをインストールする方法です。いっつも面倒くさいなと思ってたんですが、正解がありました。 下記のIssueコメントより。 https://github.com/docker-library/php/issues/344#issuecomment-364843883
家でも会社でもHHKBを使っているのですが、キーボードに高さがあるため長時間使っていると手が疲れてしまいます。そこでパームレストが必要になるのですが、なかなか良い商品が無いのです。市販品だとFilcoのウッドパームレストが見た目は良いのですが、ちょっと自分には高さがありすぎるのです。 FILCO ウッドパームレスト - Amazon.co.jp というわけで、3年ほど前から木製パームレストを自作して使っています。今回、同僚から作成依頼が入ったのでついでにブログに作成方法をまとめておきます。他にもやっている人がいたら是非情報を共有したい次第です。 材料1x4サイズのSPF材をホームセンターで買ってきます。値段は200円くらいです。ノコギリを持ってない場合は、予めキーボードと同じ幅にカットしてもらうと良いです。柔らかい木材なので糸鋸でも簡単に切れます。 側面から見ると、こんな感じです。厚みは1
これはPHPアドベントカレンダー2017 10日目の記事です。 あまりの寒さに、毎日背中にホッカイロを貼り付けてます。hanhan1978です。 コンテナでの開発を続けていると、最初は開発出来たこと自体が嬉しくて、次はDockerfileの中身を最適化してビルド順を最適化してなるべくビルド時間が短くなるように工夫していきます。 ただ、工夫はDockerイメージのレイヤを複雑に重ねてしまうので、コンテナイメージ自体は大きくなってしまいます。今回はPHPのフレームワークであるLaravelのアプリケーションを例にとって、メンテナンス可能でかつ、コンテナイメージを小さくする方法について紹介します。 結果から気の早い人のために、まず結果をのせておきます。 概要 イメージサイズ Dockerfile
docker for macでのmountディレクトリ遅い問題を解消するためのcached設定についての記事が出てた。実際にLaravelの開発でも、mountディレクトリでホスト側のファイルを読み込ませるとページ表示がもっさりするので、待望の設定です。 User-guided caching in Docker for Mac - Docker Blog 上記の記事通りにパフォーマンスが改善されるのか、stableバージョンとedgeバージョンの両方でLaravelのwelcomeページ表示をターゲットにして計測してみた。 現状のstableバージョンで確認docker for macのバージョン。2017/05/10現在 $ docker version Client: Version: 17.03.1-ce API version: 1.27 Go version: go1.7.5
docker for macを使っているユーザが抱えている大問題。それが shared directory 遅い問題。このエントリでは、何故遅いのか、どうしたら良いのかをまとめた。 フォーラムの元ネタFile access in mounted volumes extremely slow, CPU bound - Docker for Mac - Docker Forums GithubのissueFile access in mounted volumes extremely slow · Issue #77 · docker/for-mac · GitHub ※注 超長い どんな問題が起きているのか? Symfonyプロジェクトでブラウザ経由で開発環境にアクセスするとページ表示に30秒かかる コンテナ内で npm install すると10分以上経っても終わらない コンテナ内で gu
Linuxサーバがいつ再起動されたかを調べるふと、今ログインしてるLinuxサーバいつ頃再起動したんだろ? と知りたくなった時があり、どうすれば分かるのか調べてみた。 1. /var/log/messagesをgrep
方法としてはシンプルで、まずアプリケーションとは別にcomposer.json, composer.lockを適当なディレクトリにコピーする。次にcomposer installを実行して必要なライブラリ群のダウンロードを完了しておく。 COPY laravel/composer.json /tmp/composer.json COPY laravel/composer.lock /tmp/composer.lock ENV COMPOSER_ALLOW_SUPERUSER 1 RUN composer install --no-scripts --no-autoloader -d /tmp アプリケーションをコンテナにコピーした後に、先程ダウンロードしておいたvendorディレクトリをアプリ直下に移動する。最後にdump-autoloadコマンドでautoload.phpを生成すればOK
Laravel Duskの実行をコンテナ内のみで完結させたかったので試してみた。 dockerさえ動けばDuskの実行が可能になるので、環境構築が楽だしCIさせやすい。 サンプルコードは下記リポジトリを参照 https://github.com/hanhan1978/docker-laravel54-skelton 構成図 NginxからPHP-FPMへリバースプロキシするシンプルな構成 PHP-FPMのコンテナからLaravel Duskを実行すると、Seleniumのコンテナへテストのリクエストを送信 Seleniumのサーバはテスト対象のWebアプリを参照するためにNginxのコンテナへリクエストを送信 公式イメージのstandalone selenium webdriverを利用 docker-composeの設定はv2以上 docker-compose.ymlの中身version
dockerの自分ノウハウが少し溜まってきたのでメモ。 Dockerfileからプライベートリポジトリをpullする。Clone private git repo with dockerfile - stackoverflow Web上でも色々と話されているけど、コレっていう解決策はまだ見てない。 以下の2つが現状でのやり方候補。 BuildするサーバのユーザがcloneしてADD docker buildを実行するユーザの公開鍵をdeploy keyとして登録する方法。 buildを実行するユーザがリポジトリをcloneして、コンテナにADDする。 公開鍵と秘密鍵のセットを、Dockerfileと共に使うパターン 事前にdeploy keyとして登録しておいたパス無しの鍵セットを、コンテナに追加するパターン 上記のstackoverflowでもその方法が書いてある。 今のところ、後者の方
再度の考察Apache+mod_phpは、単純にリクエスト数が多くなった時の性能劣化が一番早かったです。 前回の考察でも述べた通りで、Apacheの各リクエストがmod_phpを読み込んで動いているため、単純にリソースの消費が激しいです。 実際のVM内ではApacheが落ちてしまっていました。 それ以外の構成は、だいたい同じオーダーの性能でしたがNginxに静的ファイルを処理させる構成はやはり良いですね。 Availabiltyが100%なのは、Apache(mpm_event)だけですが、これは処理性能がNginxに比べて少し遅かったためファイルディスクリプタがギリギリ枯渇しなかったためです。 逆にいうと、Nginxは数を大量にさばけるので、きちんとOS側の設定もしないと勿体無いですね。
15分で完成します。出来るんです!むしろお釣りが来ます! 準備 PHP(5.3.1以降) よく訓練されたペチパーであれば5.6を使っているはずなので、問題ない。 composer よく訓練されたペチry) テスト対象のWebアプリ 既存Webアプリでテストが無いやつをご用意下さい。いっぱいあるでしry) オーバービューE2Eテストを別プロジェクトとして、作成する想定。 練習なので、まずはbehatが利用する最低限のファイル群について、知ってほしい。 Behatは3系を使います。 ファイル構成. ├── behat.yml ├── bin │ └── behat -> ../vendor/behat/behat/bin/behat ├── composer.json ├── composer.lock └── features ├── bootstrap │ └── FeatureC
このページを最初にブックマークしてみませんか?
『hanhan's blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く