タグ

2015年11月3日のブックマーク (5件)

  • Java の AST を解析できる javaparser がアツい!!! - tokuhirom's blog

    https://github.com/javaparser/javaparser javaparser は Java をパースして AST にしてくれるライブラリである。 この手のライブラリは数多あるのだが、ほとんどのものが Java 1.5 ぐらいでメンテナンスが止まっている。 実際このライブラリもメンテナンスが止まっていたのだが、Java 1.8 対応版とし開発が再開されたものだ。 このライブラリはパーサーライブラリであるから、文字列をパースして AST を構築してくれるというものになっている。 実際どのような AST が構築されるのかが気になるところなので、構築された AST をダンプできるツールを groovy で書いた。 #!/usr/bin/env groovy @Grab('com.github.javaparser:javaparser-core:2.1.0') impor

    toenobu
    toenobu 2015/11/03
  • Redis の冗長化を考える (keepalived, HAProxy, Redis Sentinel)

    Redis を冗長化したいなって思って探していたらこんなのを見つけたので試してみます。 「Highly Available Redis Cluster | Simplicity is the keynote of all true elegance」 最初は Pacemaker で構築しようと考えていましたが Redis の作者様が Sentinel をおすすめしていたのでこの構成を試してみます。 それぞれのバージョンは OS: CentOS 6.6Redis: 2.8.19HAProxy: 1.5.11Keepalived: 1.2.13図にするとこんな感じ Redis の Master / Slave は Sentinel でコントロールします。 Sentinel については「Redis Sentinelで自動フェイルオーバー」が詳しいです(ちょっと古いかもしれないけど)。 Redis

    Redis の冗長化を考える (keepalived, HAProxy, Redis Sentinel)
    toenobu
    toenobu 2015/11/03
  • アリスとボブはパスワードつきzipをメールに添付したりしない - 暗号技術入門を読んだ - - だいくしー(@daiksy)のはてなブログ

    パスワードつきzipの添付メールと鍵配送問題 ボブのもとに届けられたアリスからのメール。このメールにはzipファイルが添付されていて解凍にパスワードが必要だ。このパスワードは、添付ファイルの後、アリスから別のメールに記載されて送られてくる。この手順により、最初のメールをイブが盗聴したとしても、イブはパスワードを知らないので添付ファイルを解凍することはできない。 一見すると安全に情報をやりとりしているようにみえるこの形式は、実はまったく安全ではない。ファイルが添付されている最初のメールが盗聴できるのであれば、当然イブは次に送られるパスワードが記載されたメールも盗聴できるからだ。 zipに施されるパスワードの強度はとりあえず気にしないこととして、この情報のやりとりは暗号におけるとても重要な問題をないがしろにしている。それは鍵配送問題と呼ばれる。 暗号の中には、かなり早い段階で「絶対に解読不可能

    アリスとボブはパスワードつきzipをメールに添付したりしない - 暗号技術入門を読んだ - - だいくしー(@daiksy)のはてなブログ
    toenobu
    toenobu 2015/11/03
  • linuxにおけるメモリと関連コマンド(free, vmstat, top, sar) - 銀色うつ時間

    linuxにおけるメモリの扱いを中心として、関連する統計情報の閲覧、監視ツールの見方についてまとめる。下に挙げた技評の2冊および学びの多かった記事を基にしています。 ページキャッシュ freeとかtopとかの説明に入る前に、まず、OSのキャッシュの話から始める。大規模なデータを扱う際、Linuxはキャッシュの仕組みによって効率的にメモリ管理を行うことで、ディスクへのアクセスを減らし、データアクセスを高速化している。これは「ページキャッシュ」と呼ばれる仕組みで実現している。 Linuxには仮想アドレスと呼ばれる機能を提供している。論理的なアドレス(リニアアドレス)をOSが提供することによって、各プロセスはメモリ(あるいはスワップ)の物理的なアドレスを気にすることなく扱うことができるようになる。この際、Linuxはメモリ領域をアドレス単位ではなく1つのまとまったブロックとして提供しており、その

    linuxにおけるメモリと関連コマンド(free, vmstat, top, sar) - 銀色うつ時間
    toenobu
    toenobu 2015/11/03
  • 知って得するInnoDBセカンダリインデックス活用術!

    InnoDBはクラスタインデックスという構造になっている。今日はクラスタインデックスがどういうことかということを、皆さんに理解して頂きたい。もっとも理解して頂きたいポイントは「セカンダリインデックスのリーフノードには主キーの値が含まれている」ということだ。 主キーの構造InnoDBの主キーは次の図のように「データが主キーのリーフノードに含まれる」という構造になっている。このような構造をクラスタインデックスという。 このような構造になっていることには利点と欠点があるが、大きな利点は主キーの値で検索をすると非常に高速だということだ。主キーのリーフノードにたどり着いたときには、既にデータのフェッチも完了している。データとインデックスが別々に格納されているタイプのストレージエンジンでは、インデックスからデータの位置を読み取って、その後データファイルからデータをフェッチする。このように二段階の操作が

    知って得するInnoDBセカンダリインデックス活用術!
    toenobu
    toenobu 2015/11/03