2014/05/29


どうしても高速なWeb サーバが書きたくなったので joyent の libuvhttp-parser (nodejs が内部で使っているライブラリ)を使ってWeb サーバを書いてみた。
mattn/http-server - GitHub
https://github.com/mattn/http-server
I/O は全て非同期で行いブロッキングしない作りとしました。これで絶対速くなるとは言わないけど、少なくともスケールはするんじゃないかと思います。
Date ヘッダとか、65536 バイト以上の POST ペイロードとか色々省いてるのでツッコミビリディ高いですが、ひとまず GET でファイルのサーブが出来る状態にはしたのでベンチマークを取ってみました。

# nginx
$ ab -k -c 10 -n 10000 http://127.0.0.1/

# http-server
$ ab -k -c 10 -n 10000 http://127.0.0.1:7000/
Core i5/3GHz Ubuntu 14.04

5回程計測した平均で nginx が 25000req/sec、http-server が 24500req/sec でした。ほぼ互角までは来たのかなーと思います。
現状キャッシュなんかは考えてないので、純粋に非同期に拘っただけのコードになっています。

ちなみに mruby-uvmruby-http で書いたWebサーバはLinux で 9000req/sec、Windows(Core i5/3GHz)で 5000req/sec くらいしか出ませんでしたが、全てC言語で書いたこのサーバだと Linux 24500req/sec、Windows でも 15000req/sec は出ます。

研究材料として使って行こうと思います。
Posted at by



2014/05/27


お前は何を言っているんだ
いつでもどこでも Emacsから :help する - Life is very short

[vim][emacs] いつでもどこでも Emacsから :help する [coffee-mode][emacs] coffee-mode 0.5.2 released [WIP][emacs][...

http://d.hatena.ne.jp/syohex/20140527/1401188929
いつでもどこでも :help する - Vim :help

...

http://vim-help-jp.herokuapp.com/
Emacs から Vim Help を :help で検索できるのに、Vim から出来ないなんて!出来るべきだろ!

リポジトリ
mattn/ctrlp-vimhelpjp - GitHub
https://github.com/mattn/ctrlp-vimhelpjp
CtrlP で検索出来ます。コマンド名は「:VimHelpJp」です。引数で直接ヘルプを参照出来ますし、コマンドライン補完出来ます。
vimhelpjp1
Vim Help Jp のヘルプが見れます。
vimhelpjp2
Posted at by



2014/05/23


vim に同梱されている markdown シンタックスは syn include に対応しているので指定で色が付けられる。
github 等では README.md やコメント欄に ```javascript
function hasegawa_san_hidoi() {
  alert('ひどい');
}
```
この様な記述をする事で javascript の色付けが適用されますが、vim でも可能です。
ただしデフォルトでは無効にされているので以下の様に設定を行います。
let g:markdown_fenced_languages = [
\  'coffee',
\  'css',
\  'erb=eruby',
\  'javascript',
\  'js=javascript',
\  'json=javascript',
\  'ruby',
\  'sass',
\  'xml',
\]
お好みの言語を追加して下さい。こうすると上記のテキストが以下の様にハイライトされます。
```javascript
function hasegawa_san_hidoi() {
  alert('ひどい');
}
```
Web制作者のためのSublime Textの教科書 今すぐ最高のエディタを使いこなすプロのノウハウ Web制作者のためのSublime Textの教科書 今すぐ最高のエディタを使いこなすプロのノウハウ
上野正大, 杉本 淳, 前川昌幸, 森田 壮, こもりまさあき
インプレス 単行本(ソフトカバー) / ¥3,740 (2014年03月20日)
 
発送可能時間:

はじめてのMarkdown: 軽量マークアップ言語の記法と使い方 (I/O BOOKS) はじめてのMarkdown: 軽量マークアップ言語の記法と使い方 (I/O BOOKS)
清水 美樹
工学社 単行本 / ¥4,480 (2014年05月01日)
 
発送可能時間:

Posted at by