タグ

devに関するyumatsumoのブックマーク (35)

  • squidの最大ファイルハンドル数 - 木っ端拾いの材木流し

    squidでクライアントの最大同時接続数を明確に指定するオプションはない。 準じるものとして、プロセスが扱う最大ファイルハンドル数を指定することが可能。 ◆max_filedescriptors ・2.6以前 ハードコードされていた。OSのulimitの値に従う。 (つまりsquid.confでは指定できない) ・2.7,3.1 実行時に(squid.confでと思われる)指定できるようになった。 ◆max_filedesc ビルド時に -DFD_CONFIG オプションを指定することで使用可能になる。 squid.confに指定しないときのデフォルト値は1024。 (この辺はディストリビューションによって違うかもしれない。--enable-max_filedesc でビルド時にデフォルト値を指定可能) 設定できる最大値はビルド時に --with-maxfd オプションを指定するとその値に

    squidの最大ファイルハンドル数 - 木っ端拾いの材木流し
  • firebird » VMのディスクIOチューニング

    VM個々では細かいディスクIOでも、台数が増えればホストマシンのディスクIOを圧迫することもあるわけで、、 というわけで、いろいろと対策を考えてみました。 1.Apacheのログ出力をBufferedLogs On で制御する ⇒効果:5、即効性:5、難易度:1 Apache2.2からhttpd.conf に一行追加するだけで有効になるログの出力バッファリングの設定。 特に常時同時アクセスが多いサーバーでは細かいログ出力が抑制されていい感じ。 2.syslogやmaillog、ApacheLog を /dev/shm/ 以下に出力する ⇒効果:5、即効性:4、難易度:4 物理メモリに余裕があるなら、メモリディスクに書き出すことで、ログ出力に伴う細かいディスクIOは0になるので効果てきめんです。 ただ、メモリ割り当てには限りがあるので、毎時間~毎日定期的にディスク上にログをローテーションさせ

  • Cassandraのクラスタ設定 - jitsu102's blog

    大規模な環境は準備できないので、2台でクラスタ設定を行いました。 (環境) node1(192.168.0.100) node2(192.168.0.101) (設定ファイル) ## # storage-conf.xml ## # Gossipプロトコルを使って、情報をやりとりするノード情報 <Seeds> <Seed>node1</Seed> <Seed>node2</Seed> </Seeds> # 他ノードとの通信ポート <ListenAddress>サーバのIPアドレス(192.168.0.100/101)</ListenAddress> <StoragePort>7000</StoragePort> # クライアントとの通信ポート <ThriftAddress>0.0.0.0</ThriftAddress> <ThriftPort>9160</ThriftPort> # データの

    Cassandraのクラスタ設定 - jitsu102's blog
  • kitabomb RedHat ES3 のP2V

    物理マシンで稼働中のRed Hat Enterprise Linux ES3をvCenter Converter Standalone (VMware-converter-4.0.1-161434) を利用してP2Vに成功しました。 ※VMwareではこのバージョンをサポートしているとはありますが、P2V後に起動するとOperating System not foundとなります。 以下技術情報として私が行った手順を紹介します。 (※環境により上手くいかない事も想定されますので、あくまで自己責任で参考にして下さい。) 【P2V手順】 ①まず上記紹介した「vCenter Converter Standalone」を起動してESXi4上のデータストアにP2V(ホットクローニング)を行います。 ※ただし、今回のP2Vでは以下のように97%でエラー終了しました。 上記ウインドウに「2009/11/

  • LinuxでPostgreSQLパフォーマンス向上

    たとえばDebian packageをそのままもってくるとi486用のコードで 実行されることになる。自分の使っているマシン上でコンパイルすると CPU別に最適化してくれるので、数%から10数%程度の高速化が期待 できる。 IDEのハードディスクを接続していてDMAが使えない状態だと極端に遅くなるの は当然である。が、しかし、たまに「LinuxのHDDアクセスは遅い」と騒いでい るのを見かけるので、一応、書いておく。 $ sudo hdparm -mcd /dev/hda /dev/hda: multcount = 16 (on) I/O support = 1 (32-bit) using_dma = 1 (on) using_dmaがonになっていれば良い。なっていなければ $ sudo hdparm -d 1 -c 1 -m 16 /dev/hda /dev/hda: settin

  • Fedora Core 3 が起動しない! GRUB が破損していたようです - IT革命~

    情報技術(アイティー)革命ではなくイット革命!IT化推進に役立つソフトウェアやWeb制作に関するネタを扱います。 yum update したらカーネルが更新されていたので、 何の気なしに再起動したのが運の付きでした。 起動中のコンソール画面に、 「GRUB」 と表示され、そこで止まってしまう罠にはまりました。 カーネルが新しくなったからと、まずはじめに疑ったのがカーネルでした。 インストールDVDから起動し、Bootプロンプトで、 linux rescue と入力します。 次に表示されるメッセージに従って、 chroot /mnt/sysimage これで /mnt/sysimage が / になります。 そして、/etc/grub.conf を編集し、default=0 を 1 に変更しました。 2番目のtitleに書かれているカーネルが使用されるようにします。 ところが「GRUB」で止

  • Kazuho@Cybozu Labs: PostgreSQL のボトルネックを統計的に監視・解析する方法

    先日書いた「MySQL のボトルネックを統計的に監視・解析する方法」について、PostgreSQL でも pg_stat_activity テーブルを使って実行中のクエリ一覧を取得できると higepon さんに教えてもらったので、やってみました。 % ppdump > ppdump.txt のようにクエリをサンプリング (デフォルトで100秒間程度) して、 % ppfilter < ppdump.txt | ppreport のようにすると、平均負荷の高いクエリから順にソートされて表示されます。詳しい使い方や考え方については、mprofile のエントリをご参照ください。 pprofile のソースコードは、/platform/postgresql/pprofile – CodeRepos::Share – Tracに置いてあります。負荷が高い PostgreSQL 環境が手元にないの

  • 生 DBI ユーザーのための DBI Cookbook (1) - Yet Another Hackadelic

    ちょっと前まで DBI で非同期アクセスなエントリが各所で上がっていましたが皆さん如何お過ごしでしょうか? さてと、、、歴史的な経緯とか歴史的な経緯とかで生 DBI 相当を使ってる方もそれなりにいるでしょう。奥さん、大事な事なんで二度言いましたよ! DBI のインターフェースってまぁそんな使いやすい物じゃないんですが、工夫次第で出来る事もあります。 ちなみにサンプルデータベースとして、MySQL Documentation - Example Databases の world データベースを使っています。 fetchall_arrayref でデータ整形 まず以下のように使ってみます。 #!/usr/bin/perl use strict; use warnings; use Data::Dump qw(dump); use DBI; use Perl6::Say; my $dbh =

    生 DBI ユーザーのための DBI Cookbook (1) - Yet Another Hackadelic
  • Windows上で動くUbuntu·Portable Ubuntu for Windows MOONGIFT

    Windowsを開発に利用されている方で、VMWareなどを使ってLinux環境を構築し、そこでスクリプトのテストを行っている方は多い。VMWare Playerは優秀な仮想実行環境だが、都度立ち上げるのがちょっと面倒に感じている人も多いのではないだろうか。 Linux向けの各種アプリケーションがWindows上で使える もう少し手軽に使えるLinux環境としてcoLinuxがある。そしてPortable Ubuntu for Windowsを使えばもっと便利になる。 今回紹介するオープンソース・ソフトウェアはPortable Ubuntu for Windows、解凍するだけで使えるUbuntuだ。 Portable Ubuntu for Windowsはその名の通り、Windows上で動作する。coLinuxを基盤にしてUbuntuがインストールされている。そのためX環境も予め入ってお

    Windows上で動くUbuntu·Portable Ubuntu for Windows MOONGIFT
  • 八割の動詞 - Backnumbers: Steps to Phantasien

    PC は忙しい時ほど壊れる. 先週は職場の PC にこの経験則が降りかかった. 頻繁にフリーズしはじめる VisualStudio 2008. VS 単体での修復では問題が直らず困り果て, 結局 OS から入れ直す羽目に. まあディスクが故障しなかっただけ幸いだと思おう... OS の入れ直しは生活習慣を見直し悪習を捨てる機会でもある. 私の Windows 生活で最大の悪習は cygwin だ. ホスト OS への敬意を欠く cygwin には以前から後ろめたさを感じていたが, 惰性でずるずると使い続けていた. 今回のトラブルは良き市民たれという神(シアトル在住)の思し召しかもしれない. 啓示に耳を傾け, しばらく cygwin なしでがんばってみたい. PowerShell cygwin を捨てるということはシェルを乗り換えるということだ. いま Windows 民の間でホットなシェル

  • 圧縮だけじゃない。CSSを解析した上で圧縮する·CSS Compressor MOONGIFT

    CSSは最近のWebシステムでは当たり前のように使われている。そして肥大化したCSSはネットワークの帯域を余計にっているようなものだ。それを解決する手段として、CSSの余計な空白や改行を消して圧縮する技術がある。 こんなにちっちゃくなっちゃった! だがCSS Compressorはもう一歩先の技術を使って、さらに圧縮を実現してくれる。これはなかなか興味深い。 今回紹介するオープンソース・ソフトウェアはCSS Compressor、CSSを解析した上で圧縮してくれるソフトウェアだ。 CSS CompressorはJava製のソフトウェアで、コマンドラインで実行する。CSSファイルを引数として指定すると、標準出力に圧縮した内容を返してくれる。余計な空白や改行の削除はもちろんとして、幾つか面白い機能がある。 ヘルプ 同じ設定を行っているクラスがあれば、それを一つにまとめてくれたり、4辺に同じ設

    圧縮だけじゃない。CSSを解析した上で圧縮する·CSS Compressor MOONGIFT
  • CPANモジュールをスクリプト一発で依存解決しつつrpm化する - とあるはてな社員の日記

    少し前にmizzyさんに そういえば、まっさらなサーバを30分で番投入できるようにする で stanaka さんが「CPANの依存関係を解析してrpm化する手製スクリプトで、CPANモジュールのrpm化が、ほぼ自動化されています」と書いてるんだけど、これって公開してくれないのかなー。 HowToRpmizeCpanModules - mizzy.org - Trac と突かれたので、githubで公開してみます。 http://github.com/stanaka/cpan-dependency/tree/master 突かれたついでにmizzyさんに軽く動作確認してもらったところ、それなりに動いているようです。また、はてなでは、このスクリプトを利用して、日々それなりの数のCPANモジュールのrpm化を行っていますので、だいたいうまく動くのではないかと思います。 CentOSやFedor

    CPANモジュールをスクリプト一発で依存解決しつつrpm化する - とあるはてな社員の日記
  • バイナリファイルを解析する

    Perlといえばテキスト処理や正規表現が得意で、バイナリを扱うような話についてはあまり聞かない印象があります。Perlが持つ関数pack/unpack等でもバイナリ処理は可能ですが、今回はData::ParseBinaryを使ってバイナリファイルを気軽に解析してみましょう。 基 ファイルからストリームを作る 解析したいファイルをData::ParseBinaryで扱えるストリームに変換します。 use Data::ParseBinary; my $stream = CreateStreamReader(File => $file_handle); 解析したい構造を定義する Struct関数で解析したい構造を定義します。Struct以下には基データ型やコンテナ型、ビット/バイトパディング型、制御構文型等を使用できます。各型に指定したラベルが解析結果として得られるハッシュのキーとなります。

  • git型の共同作業とSVN(CVS)型の共同作業の違い - Pixel Pedals of Tomakomai

    ずっと gitとsvkの違いってなんなのよ? と思ってたんですが、この図とか説明読んでようやくわかりました。 Gitでは旧来のCVS型とGit型の二つの共同作業のモデルが使えます。これが混乱の元でした。 Gitのすごさを当に体感するなら、gitを使うだけでは不十分でGit型のモデルにそって開発することが必須です。 CVS型 従来のSVN(CVS)のモデルです。pullをしてきて、pushで更新を戻します。 1つの公開リポジトリに対し、複数人がpushを行う pushにより他の人と競合するかも メインのリポジトリにpushすることを目指す 能動的 → 悪意のあるpushも可能 → "コミッター"を絞る必要あり Gitgithubっぽいモデルです。pullをしてきて、pullで更新を持って行ってもらいます。 全体がpullでまわるため、pushがプライベートな操作として隠蔽されてるのがポ

    git型の共同作業とSVN(CVS)型の共同作業の違い - Pixel Pedals of Tomakomai
  • 開発者と近づくWebデザイナー

    iKnow!ってなに? 連載では、成長を続けているソーシャルWebサイトのデザイナーやデベロッパーがどのように開発に取り組んでいるのか、そのノウハウについて紹介します。 それでは、Webアプリケーションを作るためのいくつかのテクノロジーやプロセス、さらに、開発者とデザイナーの仕事、いわばユーザーが使う部分とシステムで動かす部分がクロスオーバーする部分、つまりプレゼンテーション層について考えていきましょう。 突然ですが、読者の皆さんはiKnow!をご存じでしょうか。2007年10月に開設され、現在では22万人以上のユーザーが登録をしている、語学学習に特化した無料で使えるソーシャル・ラーニング・Webサイトです。 iKnow!のコアにあるのは、Webアプリケーションとリッチでインタラクティブな学習アプリケーションです。ユーザーが学習を通じて、ソーシャルアクティビティを行うことで、今まで1人で

  • 【MySQLウォッチ】第8回 MySQLチューニングのテクニック:ITpro

    SlowLogの設定 環境設定ファイル(Windowsではmy.ini,Linuxではmy.cnf)に次のような設定を加えるとSlowLogが有効になる。 log-slow-queries SlowLogの有効化(ログファイル名を指定可能) long-query-time=2 SlowLogに記録する処理時間の上限 log-long-format インデックスを使用しないSQL文の記録 long-query-timeパラメータは,SlowLogに記録するしきい値を秒単位で設定する。この場合には,2秒超える処理時間を費やしたSQL文を記録する。また,log-long-formatを指定すると,インデックスを使用しないSQL文もSlowLogに記録する。 SlowLogの確認 SlowLogが動作しているかどうかは,次のコマンドで確認できる。log_slow_queriesがONであれば有効と

    【MySQLウォッチ】第8回 MySQLチューニングのテクニック:ITpro
  • ちょっとしたコードの共有に便利そうな『TextSnip』 | 100SHIKI.COM

    エンジニアだったら「このコードを見て欲しいのだけど・・・」というシーンはよくある。そういうときはメールやIMを使うときが多いが、それだとインデントが崩れてどうにも見づらい。 そこで使えそうなのがTextSnipだ。このサイトで他の人に見せたいコードを貼り付けると表示用のURLを生成してくれる。 このURLを開けばきちんとフォーマットされたコードを見る事ができ、なおかつきちんと関数名などが色分けされた状態になっている。 行番号もついてくるので、そのページを見ながら「12行目のコードだけどさ・・・」といった議論もできて便利そうだ。 エンジニア仕事をする人なら知っておいても悪くないですね。あ、ただ日語は文字化けするので注意が必要ではある。

    ちょっとしたコードの共有に便利そうな『TextSnip』 | 100SHIKI.COM
  • codepad

    codepad is an online compiler/interpreter, and a simple collaboration tool. Paste your code below, and codepad will run it and give you a short URL you can use to share it in chat or email. Language: C C++ D Haskell Lua OCaml PHP Perl Plain Text Python Ruby Scheme Tcl

    yumatsumo
    yumatsumo 2008/04/28
    [][][python][online][development][tools][programming][cgi][cool][web]
  • ドコモ、ログインの手間をはぶくユーザー識別機能「iモードID」

    NTTドコモは、iモードサイトやiチャネルにおいて、コンテンツ提供者がユーザー識別に利用できる「iモードID」を3月31日より提供する。同社では、カタログや請求書同梱のリーフレットで案内を開始している。 「iモードID」は、iモード上でユーザーを識別できるようにするためのもの。コンテンツ提供者に通知することで、Webサイトアクセス時のログイン作業が必要なくなったりするなど、サイト側に登録されている会員情報などとユーザー自身を紐付ける。iモードIDそのものは、ランダムな英数字で、メールアドレスや氏名など個人情報は含まず、仮に漏洩したとしてもクレジットカード番号のように直接的な悪用はできない。携帯電話番号に紐付いて発行され、番号変更などがなければ、1ユーザーに対して1つのiモードIDという形になる。 3月31日以降、iメニューの「料金&お申込・設定」内の「オプション設定」からコンテンツ提供者に

  • プログラマが仕様を決めればいい - GoTheDistance

    最近よく思います。 システム開発の上流工程においてはコードは出てこない。言葉や図解で埋めつくされて、最終的には日語でしかない。設計書とか仕様書とか。で、この大抵上流工程ではこれらのドキュメントに対するレビューなるものがあるのですが、これが実に無益なものだと感じることが多い。こんな所でPDCAまわして何が面白いんだろうとよく思う。 ここでチェックする多くのことは、言葉の解釈に関することがほとんどです。 この言葉はプロジェクトで使われていない 書き方が統一されていない 誤字脱字が多いので直せ。 この文章ではこのように解釈される恐れがある ここではこのような話になっていたがどうなのか こんなんばっか。どこもそうだと思う。解釈の違いは、要件の違い。なんちゃって。 で、結局こういうことを繰り返していくうちに段々とドキュメントがグダグダになっていく。そして繰り返していっても前提が変わってしまえば全部

    プログラマが仕様を決めればいい - GoTheDistance