タグ

2009年4月24日のブックマーク (26件)

  • emit.jp - emit リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

  • Xenをインストールして検証環境を準備する - builder by ZDNet Japan

    AWSとAzureを更に使いこなそう イマドキのマルチクラウドセキュリティを MS担当者が徹底解説 コマース広告の大変動 プライバシー保護とパーソナライズの狭間で マーケティングの効果を最大化するためには クラウド導入が進まない当の課題 ITベンダーだからこそ知っている クラウドに二の足を踏む企業のボトルネック 仮想環境データ保護の新次元 高度化・複雑化するIT環境の課題への解決策 最新鋭データ保護・管理ソフトウェア基盤 サービスを止めない! サイバーエージェントに聞く高可用性の実現 そこにピュア・ストレージが選ばれた理由 MSセキュリティ担当者が紹介 マルチクラウド環境の保護を追求する Microsoft Defender for Cloud 現場主導のデジタル変革 ビジネス変革のための“ITの民主化” そして 変わるIT部門の役割 大事なのは”仕事の段取り” 幅広い業務を任されている

    Xenをインストールして検証環境を準備する - builder by ZDNet Japan
    kamipo
    kamipo 2009/04/24
  • AsyncIOについて(その2) - 最速配信研究会(@yamaz)

    AsyncIOについて(その1)の続き. NONBlockでIO処理をする方法としてselectとシグナルを使う方法があるというのが前回の話だったが, selectはselectよりkqueue,epollで述べたとおり, ビジーループがかかるためあまり効率はよくなく,シグナル方式は制約があるためあまり使い勝手がよくない. というわけで新しく出てきたのがPOSIX Asynchronous I/O(AIO)という機構だ. これはIOのwaitをイベントドリブン形式にしてビジーループをなくそうというものだ. プログラムの流れとしては下記のようになる. 1. 対象となるファイルディスクリプタにシグナルハンドラもしくはイベントハンドラを登録しておく 2. aio_read/aio_writeを呼び出すと制御はすぐにユーザに戻る. 3.対象のファイルディスクリプタの処理が終わると登録されていたハン

    AsyncIOについて(その2) - 最速配信研究会(@yamaz)
  • AsyncIOについて(その1) - 最速配信研究会(@yamaz)

    最近のOSにはAsyncIO(AIO)という新しいI/Oの仕組みが導入されているようだ.lighttpdの次期バージョンではAIOを導入することで8割もパフォーマンスが上がったようで非常に興味深い. またあちこちのBlogを見る限りNonBlockingI/OやNonBlockingI/O+シグナルとAIOが混同されている気がしたので,それら整理してみたい. はじめに I/O処理であるシステムコールのread/writeは対象がディスクだったり,ソケットだったりデバイスだったりするわけだが,通常これらのIO処理はCPU処理やメモリ処理に比べ非常に遅いことが知られている. 通常readが行われるとreadが終わるまで,永遠に処理は戻ってこず,プロセス的には待ち状態になってしまう.これは「Blocking」と呼ばれる. 遅いディスクやデータがいつ来るかわからないソケットなどに対するIO処理では

    AsyncIOについて(その1) - 最速配信研究会(@yamaz)
  • 「JavaScriptでconcatはもう使うべきではないのかも」なんてことはない - os0x.blog

    JavaScriptでconcatはもう使うべきではないのかもしれない (Kanasansoft Web Lab.)に早まるなとツッコミを入れる。 まず、当たり前ですがpushを使うべきところでconcatを使う理由はありません。配列に要素を追加したいならpushを使うのは当然ですね。 あえてconcatを使うのは配列を複製したい場合です。*1 で、複製する場合のベンチをとってみました。 http://ss-o.net/test/array_clone.html Firefoxは配列の長さが大きくなってくるとpushのほうが高速になる傾向が見られるものの、基的にconcatのほうが安定して高速です。なにより、配列を複製していることが明確なconcatを使わない理由はありません。 ちなみにIE8はconcatが最適化されているらしく、上記ベンチではっきりとした差が出ます。シンプルに書いてお

    「JavaScriptでconcatはもう使うべきではないのかも」なんてことはない - os0x.blog
  • 株式会社エス・スリー・フォー » STLport のハッシュ・コンテナ

    STLport のハッシュ・コンテナ 標準C++ライブラリが提供するコンテナは、vector, list, deque, set, multiset, map, multimap の7種です。 これらコンテナから特定の要素を検索するとき、その時間計算量は vector, list, deque では O(N), set, multiset, map, multimap では O(logN) となります。 これ以上に高速な検索が可能なコンテナとしてハッシュ表(hashtable)を利用すれば、適切なハッシュ関数を与えることによって検索に要する時間計算量をコンテナ内の要素数に関わらず O(1) に近づけることができますが、残念ながら標準C++ライブラリにはハッシュ表で実装されたコンテナ(ハッシュ・コンテナ)を提供していません。 SGI(Silicon Graphics社)のSTL実装をベースに

  • JavaScriptでconcatはもう使うべきではないのかもしれない (Kanasansoft Web Lab.)

    当エントリーは多くの誤りを含んでいます。参考にされる場合は最後の追記部分まで含めて読まれるようにお願いします。 それなりに慣れているはずのプロのプログラマでも、このような勘違いや大失態をすることがあるという教訓として残すために、エントリーの削除や修正はせずに追記のみに留めておきます。 JavaScriptで、配列に要素を追加するメソッドに、push、unshift、splice、concatがある。このうち、配列の後方に要素を追加するのは、(要素を好きな場所に追加可能なspliceを除くと)pushとconcatの二つである。この二つのメソッドは破壊的/非破壊的の違いがあれ、似たような挙動を示す。

  • SSD がコモディティになっても状況はかわらない - kazuhoのメモ置き場

    脊髄反射。 OracleMySQL など近年の RDBMS はインデックスのデータ構造にB木 (の変種) を採用していますが、その理由はここにあります。 SSD がコモディティになると状況は変わる (中略) 二次記憶上での検索用のインデックスにはこれまで B木のようなディスクに最適なデータ構造が必然的に選択されてきましたが、SSD に変わると、現実的に利用可能なデータ構造にも幅が出て、アプリケーションによっては劇的な改善が可能になるというわけです。 この先 SSD の普及によって、色々なソフトウェアで、驚くような改善が行われる機会を目にすることが多くなるのではないかと思います。その時、単に SSD に変わったから速くなったと捉えるのではなく、どのようなデータ構造が選択されて、そのデータ構造の特性が SSD とどのようにマッチしたのかという視点で見ていくことが大切ではないかと思います。

    SSD がコモディティになっても状況はかわらない - kazuhoのメモ置き場
    kamipo
    kamipo 2009/04/24
  • perlのsortって評価するたびにスコープ作ってんじゃないの? - Yappo::タワシ

    作ってないっぽい? 少なくともopcodeレベルでは作ってないが詳しくはpp_sort.cを見ろ。 use strict; use warnings; use blib; use Devel::RunOpsAnalyze; print Devel::RunOpsAnalyze::analyze { my @x = qw( 7 83 4 2 09 8 1 7 ); my @y = sort { $a <=> $b } @x; }->as_term; 実行結果 ./sort.pl 7: my @x = qw( 7 83 4 2 09 8 1 7 ); B::OP(10720), pushmark, pushmark 1 steps, 1 usec, (avrg: 1 usec) B::SVOP(10721), const, constant item [7] 1 steps, 1 usec,

  • Shibuya.pmでしゃべってきました - 最速転職研究会

    遅くなったけど資料、と、動画。最近のお仕事について話しました。 http://svn.coderepos.org/share/docs/mala/20081127-shibuyapm10-lt/index.html http://svn.coderepos.org/share/docs/mala/20081127-shibuyapm10-lt/main.txt 転職とか退職とか何のことだか良く分からない。

    Shibuya.pmでしゃべってきました - 最速転職研究会
  • Kazuho at Work: Q4M Presentation Slides at MySQL Conference

    Today at MySQL Conference & Expro 2009, I did a presentation introducing / explaining Q4M. Thank you to people who came to listen. The presentation slides I used can be found on slideshare (slideshare). Tomorrow (Apr 23) from 6:10pm, I will be doing another presentation at Percona Performance Conference, held at the same location, to describe the techniques (mainly MySQL UDFs) used to squeeze maxi

    kamipo
    kamipo 2009/04/24
  • groongaのインデックスを自動更新 - 2009-04-22 - ククログ

    Sennaの後継となる組み込み型全文検索エンジンgroongaでインデックスを自動更新する方法を見つけたので紹介します。 「見つけた」という風に書いているのは、「ドキュメントには書いていないけどソースを見たらやり方がわかった」からです。 groonga Sennaは転置インデックス関連の機能のみを提供していましたが、groonaでは転置インデックスだけではなく、データ管理の機能も提供しています。そのため、DBMSなど他のデータ管理機能を持つソフトウェアと組み合わせなくても、groongaだけでデータ管理と高速な全文検索機能を実現することができます。 groongaはGitHub上で開発されていて、groongaに関するドキュメントやgroongaのAPIのドキュメントもGitHub上にあります。 また、Sennaとgroongaの比較やgroongaデータベースAPIも読んでおくとよいと思

    groongaのインデックスを自動更新 - 2009-04-22 - ククログ
  • コマンド・プロンプトでファイル共有を管理する

    解説 ファイル共有を設定したり、その内容を確認するには、通常はエクスプローラや[コンピュータの管理]ツールを利用したりする。 だが、テスト用途などで簡単に設定したり、Telnetなどでリモートからメンテナンスする場合は、コマンド・プロンプト上で操作できると便利である。また現在の共有の設定状態をテキスト・ファイルに保存できれば、再設定するのも簡単になるし、コマンド列にしてバッチ・ファイルに書き込んでおくと、設定をすばやく再現できる。 TIPSでは、ファイルの共有設定やその使用(ドライブなどへのマップ)について、コマンド・プロンプト上で操作する方法についてまとめておく。 操作方法 ●公開のための設定(サーバ側) ファイル共有を利用するためには、まずサーバ側で公開の設定を行う。エクスプローラなら、公開したいフォルダを選んで右クリックし、ポップアップ・メニューから[共有とセキュリティ]を実行する

    コマンド・プロンプトでファイル共有を管理する
  • [Wakame]自動でサーバ数を増減させるクラウドコントローラ"Wakame"をリリースしました! : やむにやまれず

    2009年04月22日08:00 by 山崎泰宏 [Wakame]自動でサーバ数を増減させるクラウドコントローラ"Wakame"をリリースしました! カテゴリ開発スタイル事業内容に関するもの Tweet sparklegate Comment(0)Trackback(0) サイト http://wakame.axsh.jp/(日語) AMIで公開したのですぐ試せます 情報はまだ少ないのですが、Amazon EC2にアカウントを持っている方は、ぜひGetting Start(英語)あたりを読んで、いきなり試してみてください。 ディフォルトでは、Apacheのモジュールで構成されたロードバランサー、StaticコンテンツWebサーバ、DynamicコンテンツWebサーバ、DBとしてMySQLが起動します。 あとはコマンド一発でこのネットワーク構成が全て立ち上がり、個々のサーバ数を動的に増減さ

    [Wakame]自動でサーバ数を増減させるクラウドコントローラ"Wakame"をリリースしました! : やむにやまれず
  • Google製のGit用ソースコードレビューシステム·Gerrit MOONGIFT

    ソースコードのレビューはシステムの品質を高めるのに大切な作業だ。GoogleやVMWareでも使われており、ブラウザを使って差分を確認してコメントができるようになっている。社内向けには拙作のSubversionソースコードレビューシステムの宍道湖がある(Rails製)。 Git向けソースコードレビューシステム この手のツールはSubversion向けのものが多かったが、Gitでも使いたいならGerritに挑戦してみよう。 今回紹介するオープンソース・ソフトウェアはGerrit、Git向けソースコードレビューシステムだ。 GerritGoogleが大々的に発表している訳ではないが、Google社員が開発しておりAndroidのオープンソースプロジェクトにおけるソースコードレビューにも利用されている。他のシステム同様に差分を見て、そこにコメントすることが可能だ。 差分を見てコメントする 差分

    Google製のGit用ソースコードレビューシステム·Gerrit MOONGIFT
  • Sinatra

    Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort: require 'sinatra' get '/frank-says' do 'Put this in your pipe & smoke it!' end

  • もわの台所: I/O scheduler を知る

    Linux Kernel 2.6.18 において、 I/O schedulerが従来の Anticipatory I/O scheduler から CFQ I/O scheduler に変更された。 この変更により、block deviceへのI/Oの性能向上が期待される。 しかしそもそも、 Linux における I/O scheduler の役割は十分に理解されているとは言えず、 I/O scheduler を process scheduler と間違って関連付ける人が後を絶たない。 エントリでは I/O scheduler の来の役割、 Kernel にデフォルトで用意されている4種類の I/O scheduler、 I/O scheduler の変更方法について概説する。 ■ I/O scheduler とは何か ハードディスクをはじめとする block device に対して

  • Poundいじって遊んでみた - ywataseの日記

    PoundではRemoteAddressが使えないって騒いでいる人がいたのでつけてみた。 そんなことしたければapacheでやればいいじゃんって話だけど。 機能 コンフィグのService部分にRemoteAddress IPと書くとマッチしたIPしかServiceに振り分けられなくなる。 RemoteAddressはひとつのServiceに複数かけて、一応Regexが使える。 IPアドレスの癖にネットワークアドレスが書けないあたりが残念な感じ。 そのうちCのネットワーク周りの勉強も兼ねて書き換えたい。 PoundのConfigでRemoteAddressを使えるようにするパッチ $ diff -uar --exclude=config.log --exclude=config.status Pound-2.4.1 Pound-2.4.1.RemoteAddress/ diff -uar

    Poundいじって遊んでみた - ywataseの日記
    kamipo
    kamipo 2009/04/24
  • 汚いなさすがPerlきたない - firewood's diary

    Shibuya.pm #11「no Perl; use x86;」鑑賞してきた。 常々PerlはLLじゃないんじゃないかと思っていたのだが、LLの皮をかぶったアセンブラであることを再確認したのであった。 1. catcher in the int 80h; inside lleval FreeBSD::i386::Ptraceの実装について。 pt_to_sce()でsystemcallを実行直前にフックできる。スタックに積まれた引数を書き換えることができるので、実行したくないオペレーションであればSEGVで死ぬような引数に書き換えることでsandboxを実現。 forkは引数がないのだが、EIPを0に変更することはできるので、それで殺す。アドレス0にmmapされるとSEGVで死ななくなってしまうのでそれも抑止する。 2. Perl sandbox for Linux fork() sys

    汚いなさすがPerlきたない - firewood's diary
  • 株式会社アンタス - 次の時代のマーケティングテクノロジーを

    年末年始休業のお知らせ お客様各位 毎度格別のご愛顧をうけ賜りありがとうございます。 誠に勝手ながら下記日程で休業とさせていただ... NEWS アンタスのエンジニア 異業種からの転職4 エンジニア紹介 塾講師として理系の受験生のために尽力してきた鶴谷君。前職でWEBシステムに携わったことがき... BLOG

    株式会社アンタス - 次の時代のマーケティングテクノロジーを
  • azito.com

    This domain may be for sale!

  • DataMapperをいじってみる : As Sloth As Possible

    #1986@freenodeで、ActiveRecordをRailsの中でじゃなくて単体で使えるか、って聞かれたんだけど、まぁ確かに使えるけどついでにいろんな余計なものが付いてきて、Stringみたいなコアなクラス書き換えたりするから微妙なんだよなー、と思い出してDataMapperを勧めてみた。ARはとっつき易いしRailsで使う分にはいいんだけど、単体で使うには上記の理由もあってあんまり好きじゃない。 でも微妙に変わってんだよね DataMapperを単体で使う方法については過去の記事で書いたんだけど、半年以上たってるもんでその間にDataMapperも大分バージョンアップして。ということで、同じ挙動をするものを動くように書き直してみた。 require 'dm-core' DataMapper.setup(:default, { :adapter => 'sqlite3', :dat

    DataMapperをいじってみる : As Sloth As Possible
  • Merb+DataMapper : As Sloth As Possible

    昨夜詳解 Objective-C 2.0が届いてたので、週末はObjective-C漬けになろうと思ってたんだけど、何故かMerbを弄るのにはまってしまった。ということで遅蒔きながらMerb+DataMapperをいろいろ調べた。 ちょっと触ってみた感触としては、良いね。基Rails+ARで書くのとそんなに変わらない。良くわかんないけど勘で「Railsだったらこうだよな」で書いても大概のものは動いた。ふむ。あとはパフォーマンスがどうなるかだけど、こればっかりはまともなアプリ書いてみないとわかんないな。前に頼まれて作ったとあるイベントの管理システムを試しにMerb化してみるか。FastladderをMerbに移植してみるとか(ry。いいからバグ修正しろって怒られそうなのでやめとこう。ていうか忙しくて止まってたもろもろの修正はやくコミットしないと。 DataMapperは結構気にいった。モ

    Merb+DataMapper : As Sloth As Possible
  • X-Forwarded-Forを使って、バックエンドでアクセス制限 - bushimichiの日記

    バックエンドサーバーで、IPを使ったアクセス制限をすると クライアントがフロントエンドIPアドレスになってしまうため 意味が無い。そこで、X-Forwarded-Forを使って制限をする。 .htaccess SetEnvIf X-Forwarded-For "192\.168\.0\.[0-9]{1,3}" apal order deny,allow deny from all allow from env=apal すぐに書き方を忘れてしまうので、備忘録です。

    X-Forwarded-Forを使って、バックエンドでアクセス制限 - bushimichiの日記
  • mod_proxy mod_proxy_balancer と mod_dirを使う時の注意 - bushimichiの日記

    mod_proxy を使って、バックエンドサーバーにリクエストを振り分けていたときの話です。 ServerName www.example.com ProxyPass / balancer://cluster/ ProxyPassReverse / balancer://cluster/ <Proxy balancer://cluster/> Balancermember http://bk1.example.com loadfactor=50 Balancermember http://bk2.example.com loadfactor=50 </Proxy> 上記のように設定して、www.example.com → bk1.example.com と bk2.example.com にリクエストがそれぞれ渡されます。 ここで、bk1 や、bk2 側で、mod_dir を利用したリダイ

    mod_proxy mod_proxy_balancer と mod_dirを使う時の注意 - bushimichiの日記
  • Shibuya.pm #11:The Catcher in the INT 80h

    Directory Hierarchy % find . -xdev | sort ./0123456789abcdef ./0123456789abcdef/eval.pl ./bin ./dev ./etc ./etc/localtime ./etc/protocols ./etc/services ./lib ./libexec ./libexec/ld-elf.so.1 ./libexec/ld-elf.so.1.old ./tmp ./usr ./usr/bin ./usr/bin/bwbasic ... ./usr/bin/perl ... ./usr/bin/tclsh ./usr/lib ./usr/local ./usr/local/bin ./usr/local/lib ./usr/local/libexec ./usr/local/perl6 ./usr/local/