タグ

ブックマーク / blog.shibayu36.org (9)

  • 「師弟登壇2015」ではてなの研修について発表しました - $shibayu36->blog;

    pepabo.connpass.com 「師弟登壇2015」ではてなの研修について発表してきました。 speakerdeck.com 今回の発表は 実践で手を動かすのが一番勉強になる 出来るだけ早く知識を身に付け、チーム配属できるように工夫している をテーマに話しました。久々に発表したら緊張して、最初の方全然調子出なかったので、定期的に前に出て発表しないとなあという気持ちになりました。 ちなみにこの発表の後に、@amagitakayosi くんが、新卒研修受けてないという発表をしてて面白いと思いました。まあなんにせよ実践でいろいろやってるのでよし!!!! speakerdeck.com ちなみに自分の時はどうだったかな―って思ったら、amagiくんに下のような指摘を昨日受けてウケてました。なんで新卒の時から研修について考えているのか!!!! こんなこと書いてるけど、最近はちゃんと研修やって

    「師弟登壇2015」ではてなの研修について発表しました - $shibayu36->blog;
  • 自分流Elasticsearch入門 - $shibayu36->blog;

    【2016/09/10追記】 勉強しなおして、Elasticsearchの知識についてさらにまとめた記事を書いたので、そちらを参照してもらうと良さそうです。 blog.shibayu36.org 最近Elasticsearchの勉強をした。ただ、入門のためどのような資料が適しているかを知るのが大変だった。そこでどのように勉強したかについてメモをしておく。少しまとめエントリー的なノリになりそう。 Elasticsearchの概念を知る 全文検索技術の基を知る Elasticsearchのドキュメントのたどり方を知る の順に学習を進めていった。 Elasticsearchの概念を知る Elasticsearchの学習を始めようとした時に、まずは基からということで以下のを読んでいた。 高速スケーラブル検索エンジン ElasticSearch Server (アスキー書籍) 作者:Rafal

    自分流Elasticsearch入門 - $shibayu36->blog;
  • Test::TCPを使ってテスト用にmemcached, app, nginxサーバを立てる - $shibayu36->blog;

    テストをするときに、テスト用のみのMySQLとかmemcachedとか、アプリケーションサーバとかを立てたい時がある。MySQLの場合はTest::mysqldを利用すればすぐできるが、それ以外の場合もdaemonの場合はTest::TCPを使ってすぐにテスト用のサーバを立てることができるので、そのメモ。 テスト用memcachedサーバを作る Test::TCPが渡してくれるportを使って起動 Test::TCPが返すオブジェクトがguardのようなオブジェクトになっていて、スコープが切れるとプロセスを勝手に落としてくれる my $memd = Test::TCP->new( code => sub { my $port = shift; exec "memcached -p $port"; }, ); my $client = Cache::Memcached::Fast->new(

    Test::TCPを使ってテスト用にmemcached, app, nginxサーバを立てる - $shibayu36->blog;
  • 社内用Docker Registryを立てる - $shibayu36->blog;

    Dockerにはimageを登録しておくためのregistryが用意されていて、https://index.docker.io/ にPublicなイメージを登録しておくことが出来ます。また、社内用など、Publicには出したくない時も自分でregistryを立てることが出来ます。そこで、今回は社内用Docker Registryの立て方について書こうと思います。 https://github.com/dotcloud/docker-registry を参考にします。 Docker Registryを立ち上げる 立てるのはすごく簡単で、docker runするだけでした。 $ docker run -p 5000:5000 -d stackbrew/registry これで実行したhostの5000番portにDocker Registryを立てることができます。 ここに対して、pushやp

    社内用Docker Registryを立てる - $shibayu36->blog;
  • DBIx::QueryLogを使ってちゃんとSQLが流れているかテストする - $shibayu36->blog;

    DBIのconnectのCallbacksなどでSQLを実行している時とかに、実際にSQLが流れているのかチェックしたい時がある。そういう時どうするのがベスト・プラクティスなのかわからないのだけど、DBIx::QueryLogを使ったら一応できたのでメモ。 テストしたい状況 package My::DBI; use strict; use warnings; use DBI; sub connect { my ($dsn, $username, $password) = @_; my $dbh = DBI->connect($dsn, $username, $password, { Callbacks => { connected => sub { my $dbh = shift; $dbh->do("SET NAMES utf8") or warn $dbh->errstr; retur

    DBIx::QueryLogを使ってちゃんとSQLが流れているかテストする - $shibayu36->blog;
  • Working with Unix ProcessesをPerlで - $shibayu36->blog;

    以前 Working with Unix Processesというを読んだのですが、このがUnixにおけるプロセスについて非常にわかりやすく解説されていました。それで自分で内容をメモしてみたり、さらにわからないところを調べたり、参考のプログラムをPerlで書いたり(このではRubyで書かれています)してみたのですが、ブログにまとめてなかったので、ちょっと書いてみます。 (注意)書いていたらすごく長くなりました。興味のある方は、適当に時間のあるときにでもどうぞ。 Chapter 2 : Introduction プロセスのことを知るとコードを読むだけでは分からないややこしい問題が分かるようになるよ Chapter 3 : Primer Unixはユーザ空間とカーネル空間がある kernelの機能はsystem call経由で利用する ユーザ空間ではプログラムが動く manual man

  • MySQLをさらに理解するために読んだ記事まとめ - $shibayu36->blog;

    最近MySQLの勉強をしていました。実践ハイパフォーマンスMySQLを読むべきという話を聞いていたのですが、かなり網羅的に書かれていて、今の知識ではどれが重要なのかわからない状態でした。そこで色々調べてみて、参考になる記事をいくつか見つけたので、少しまとめてみようと思います。 今回まとめた記事を読んで、大体以下のことが理解できました。 インデックスの使われ方とその構造(MyISAMとInnoDB) EXPLAINの詳しい使い方、見方 InnoDBの特性 ALTER TABLEの特性 レプリ遅延 まず最初に Webエンジニアのための データベース技術[実践]入門 (Software Design plus)posted with amazlet at 12.06.02松信 嘉範 技術評論社 売り上げランキング: 9767 Amazon.co.jp で詳細を見る 松信さんの書いた「Webエンジ

    MySQLをさらに理解するために読んだ記事まとめ - $shibayu36->blog;
  • Server::Starterから学ぶhot deployの仕組み - $shibayu36->blog;

    以前http://tech.naver.jp/blog/?p=1369の記事を読んだのだけれど、それまでにprocessの知識が無かったりして、まったく理解できませんでした。そこでWorking with UNIX ProcessesやServer::Starterの中身を呼んでようやくhot deployの仕組みを理解できた(気になっている)ので、Server::Starterの実装を追いながら、それをまとめてみます。 hot deployとは hot deployとは「再起動の時にリクエストの処理を続けながら、変更の内容を反映するための手段」です。 通常serverをrestartさせるときは、stop -> startの流れになると思いますが、この場合stopしてから、start出来るまでの期間にリクエストを処理できない期間が発生します。その期間なしにdeployする仕組みがhot

    Server::Starterから学ぶhot deployの仕組み - $shibayu36->blog;
  • Mojolicious + Xslate + SkinnyでMVC開発環境 - $shibayu36->blog;

    Perlには非常に多くのフレームワークがあります。非常に大きいものにはCatalystやJifty、小さいものにはMojolicious、CGI::Application、HTTP::Engine、Dancerなどがあります。今Perlではフルスタックのフレームワークを使うよりも、小さいものを組み合わせてWebアプリケーションをつくっていくほうが流行っていると思うので、「小さいものを組み合わせ」ながらMVCで開発できるような環境を考えてみました。 今回はWAFとしてMojoliciousを、テンプレートエンジンとしてText::Xslateを、O/RマッパーとしてDBIx::Skinnyを用いて、MVCでWebアプリケーションを作る方法について順を追って解説します。 それぞれの簡単な説明 Mojoliciousとは SimpleなMVCのWebフレームワーク。軽いプロジェクトならMojol

  • 1