All Posts

Translating 'Appendix: Redis expires' in Japanese

The behaviour of key expiration in Redis Redisのkeyのexpirationを理解する為に、以下のページの「Appendix: Redis expires」を和訳してみました

Print JIT-compiled code

How do you check performance optimized code? 前回、インライン化を確認する為に最初に調べたことは、インライン化されたコードの確認方法でした。調べた範囲ではアセンブリコードで

Inlining By JIT Compiler

Inlining or not? 前回のエントリで、インライン化についてちょっと触れました。 ちなみにCharacter#charCountは補助文字の場合に2が、それ以

UTF-8 Encoding Performance in Java Part 2

NIO ByteBuffer 前回の続き。結局、BSONEncoder#_putのUTF-8変換のコードが遅い理由が分からなかったので、UTF-8のバイト配列を生成す

UTF-8 Encoding Performance in Java

Which is faster? 前回のプロファイリングにて、文字列をUTF-8に変換する処理に速度差がありそうだという結果になった為、String#getBytes(

FileStoredMap writing part 1

Reading and Writing of FileStoredMap 以前、拙作のFileStoredMap(以下、FSM)がBerkeleyDB(以下、BDB)とどのくらい速度差があるか確認しました

Java NIO2 Asynchronous

Asynchronous 前回ノンブロッキングI/Oを使ってみましたが、今回はNIO2の非同期I/Oを試してみます。 NIO2の非同期I/Oは、大きく2つの方法が提供

Java NIO Non-Blocking I/O

configureBlocking(false) 前回のコードで、acceptした後にOP_READでselectorにregisterする直前に、以下のような記述がありました。 SocketChannel channel = serverChannel.accept(); channel.configureBlocking(false);

Java NIO I/O Multiplexing2(solved)

Stack Overflow 前回のnioのsocket readがbusy loopになってしまう問題について、Stack Overflowでも同じような事象が出ていまし

Java NIO I/O Multiplexing

Introduction たまたま仕事でnioを使っているコードを読む機会があり、それをキッカケにnioのI/O多重化を試してみました。 Single Process, Single Thread, I/O Multiplexing 「シングルプロセ