タグ

ブックマーク / takatoshiono.hatenablog.com (6)

  • MySQL 5.6 のオンラインDDLについて調べた - takatoshiono's blog

    今更だけど MySQL 5.6 ではオンラインDDLの機能が追加されている。今日はこのオンラインDDLについて勉強したことを書いてみる。 MySQL のマニュアル MySQL :: MySQL 5.6 Reference Manual :: 14.11 InnoDB and Online DDL にいろいろ書いてある。いまから書くことはこのマニュアルから得た知識が元になっている。 DDL てなによ? データではなく、テーブル自身を操作するためのSQL文のこと。CREATE, ALTER, DROP, TRUNCATEなど。オンラインDDLではCREATE INDEX, DROP INDEX, ALTER TABLEに適用される。 http://dev.mysql.com/doc/refman/5.6/en/glossary.html#glos_ddl 5.1 までの ALTER TABLE

    MySQL 5.6 のオンラインDDLについて調べた - takatoshiono's blog
  • Go 言語で Apache Bench (ab) を実装してみた - takatoshiono's blog

    Go 言語で Apache Bench (ab) を実装してみた。 https://github.com/takatoshiono/go-ab なぜか 以前、wc コマンドを実装した。その時に ab も候補に入っていたけど、ab は http 通信をするプログラムなので、より単純な wc を選択したのだった。その次に何やるか、ということで http クライアントのコードを書く練習になりそうな ab を実装してみることにした。 期間は2016年10月から1ヶ月くらいやったあと、2ヶ月くらいブランクがあって、2017年1月に再開して一ヶ月くらいやっていた。コツコツとよく続いたと思う。 Apache Bench (ab) とは Apache Bench (ab) は HTTP サーバーの性能を測定するためのプログラムでシングルスレッドで動作する。Apache HTTP サーバーのソースコードに含

    Go 言語で Apache Bench (ab) を実装してみた - takatoshiono's blog
  • Go 言語で wc を実装してみた - takatoshiono's blog

    Go 言語で wc を実装してみた GitHub - takatoshiono/go-wc: Go implementation of wc command for practice なぜか A Tour of Go をやり終えた時「全然うまく書けない」というのが感想だった。もっと Go 言語のコードを読み書きする必要がある。 そして読むだけだとやる気が続かないから何か書きたい。何を作ろうか? Go 言語なのでスタンドアローンで起動するバイナリ実行形式のファイルがよさそう。仕様が簡単で手頃なやつがいいな...と考えて wc にしたのだった。他にも以下が候補にあった。 ab smtp server beer コマンド(なんかうまそうなビールを表示する) wc コマンド find コマンド (コマンド系で攻めるなら GNU coreutils, findutils などを見るとよさそうか...

    Go 言語で wc を実装してみた - takatoshiono's blog
  • Ruby のしくみ を読んだ - takatoshiono's blog

    なぜ読んだか メタプログラミング Ruby を読んだ ので、この勢いで Ruby のことをもっと深く知りたかった。 どうだったか エキサイティングな体験だった。 このには RubyRuby コードをどうやって実行しているのか、ということが書いてある。字句解析してトークン列に変換して、構文解析してAST(抽象構文木)ノードに変換して、コンパイルして YARV 命令列に変換して、それを YARV(仮想マシン) が実行する....どうやって?ということが書いてある。 登場する Ruby のコードは単純なものばかりだが、その背後にあるしくみ、C のコードは複雑だ。にもかかわらず、このを読んでいると自分がそれをいとも簡単に理解したかのような錯覚に陥るので爽快感がある。ワクワクする。それはきっとこのの著者の説明が驚異的に上手なのと、豊富な図のおかげだろうと思う。 著者の Pat Shaug

    Ruby のしくみ を読んだ - takatoshiono's blog
  • dotfiles をちゃんと管理する話 - takatoshiono's blog

    dotfiles って? dotfilesというのは先頭にドット(ピリオド、これ -> .)が付いたファイルのことで、LinuxMac などでエディタやシェルの設定ファイルがこの形式になっている。dotfilesには自分が快適に作業するための設定がいろいろ書いてあるので、無くしたくないし、PC を移行したときに簡単に復元したいから、Github などで管理している人が多いと思う。このエントリはその管理方法の話。 これまで とりあえず Github で管理していた 自分のdotfilesがごちゃごちゃしている印象があってもやもやしていた これまでどこかで見聞きした設定を「とりあえず入れてみる」というのを繰り返してきた その結果、自分が今どういう設定をしているのかよくわかっていなかった しかも、あるツールの導入や設定を、なぜ、どうやったのか思い出せない さらにその結果として、新しいツール

    dotfiles をちゃんと管理する話 - takatoshiono's blog
  • rbenv + ruby-build はどうやって動いているのか - takatoshiono's blog

    rbenv といえば 複数バージョンの Ruby を切り替えて使うための環境を提供してくれる便利なツールとして欠かすことのできないものですが、機会があってそれがどうやって動いているか調べたので、ここに書いておきます。また ruby-buildruby をインストールするためによく使われている(というか使ってない人いないのでは)rbenv のプラグインです。rbenv install というコマンドは ruby-build が提供しています。これについても一緒に書きます。 はじめに断っておきますが、間違ったことを書いているかもしれないのでその辺はご了承ください。また、将来 rbenv の変更によって変わってしまう部分もあるかもしれません。 また rbenv のドキュメントはとても充実しているので、それを読めばここに書いてあることはだいたいわかると思います。 もくじ rbenv のインス

    rbenv + ruby-build はどうやって動いているのか - takatoshiono's blog
  • 1