タグ

ブックマーク / labs.unoh.net (18)

  • ウノウラボ Unoh Labs: サーバのネットワーク速度の調査/測定方法

    こんにちは。kyagi です。先日データセンタ内のサーバ群のうち、なぜか特定の1台だけネットワークの速度が極端に遅いという問題がありました。今回はサーバマシンのネットワーク速度の測定方法と原因についてお話しします。同様のトラブルが発生している方のお役に立てば幸いです。問題解決までの手順としては以下になります。 1. 現在の状態を調べる 2. ハード/ソフト含めて考えられる原因をいくつか挙げる 3. 原因について改善されるまでひとつひとつ検証していく まず現在の NIC の HW 情報とドライバを lspci で調査します。ここでは Broadcom の NetXtreme BCM5722 という NIC を使用していることがわかります。 # lspci -vvv | grep Ether 01:00.0 Ethernet controller: Broadcom Corporation

  • ウノウラボ Unoh Labs: Luaを設定ファイルとして使う

    テイルズオブヴェスペリアがPS3に移植されると聞いて、今年の夏にPS3を買うことを固く決意したbokkoです。部屋に置き場所がないとか、社会人になってから積みゲーがどんどん増えているとか、随分前にXBOX360版の総プレイ時間が三桁になっていることはこの際気にしないことにします。あと、機会があればCellとdtlを使って編集距離の計算をやってみたいです(多分あんまり速くない)。 Luaは軽量で高速なインタプリタ言語です。コアは非常に小さいのですが、テーブルというデータ構造や関数がファーストオブジェクトであることを利用して、来は機能としてないオブジェクト指向言語のような書き方をしたり、独自に拡張したりと、なかなかパワフルな言語です。実際の使われ方としてはアプリケーションに組み込んで使うことが多く、組み込み言語などと呼ばれることもあるようです。今回は、LuaのプログラムをC、C++で書かれた

  • ウノウラボ Unoh Labs: BTSとテストケース管理システムを連携させる

    こんにちは!やまもと@テスト番長です。 最近TEF(Testing Engineer's Forum)-ソフトウェアテスト技術者交流会 の有志によって日語化されたTestLinkというオープンソースのテストケース管理ツールがあるのですが、同じくオープンソースのBTSであるMantisと連携させる方法が紹介されています。 TestLinkとバグ管理システムMantisの統合http://swproject.g.hatena.ne.jp/keyword/TestLink%e3%81%a8Mantis%e3%81%ae%e7%b5%b1%e5%90%88 BTSは導入していても、テストケースは管理されていないか、Excelなどでリストを編集しているケースは非常に多いと思います。 テストケース管理システムは使い慣れないと煩雑に感じる反面、ある程度以上テスト項目を洗練させるには是非導入したいツ

  • ウノウラボ Unoh Labs: 「サーバサイドCSS」という選択

    miyakeです。突然ですが、CSSって書くの面倒ですよね。何らかのプログラミング言語を知っている人間から見ると、CSSというのは言語としてはかなり貧弱です。 もちろんCSSはプログラミング言語では無いので、それを貧弱だと言われてもCSSもいい迷惑かも知れません。でも、 div#content { ~ } div#content div.entry { ~ } div#content div.entry p { ~ } div#content div.entry ul { ~ } こういう大したことをしていないのに、コードがどんどん長くなっていくのを見ると、もう少し何とかならないものかと思ってしまいます。 コピペするにしても、 コピー元にカーソルを移動 範囲選択してコピー コピー先にカーソルを移動 ペースト という操作が必要になります。数が増えてくるとコピペのミスも発生しかねませんし、id

  • ウノウラボ Unoh Labs: yumのローカルミラーリポジトリを構築する方法

    naoya です。 フォト蔵などのサービスは、社内にあるサーバ群で運用しています。現在、サービスの規模が成長するにつれて、サーバの台数も約20台強くらいになってきました。 すべてのサーバには、Fedora Core 5がインストールされていて、すべてのサーバにまったく同じパッケージがインストールされています。パッケージの更新には、Fedora Core 5に付属しているyumを使ってすべてのサーバを定期的に更新をしているのですが、yum-fastestmirrorをインストールしている状態でもパッケージの更新に時間がかかるようなってきました。 そこで、一台のサーバにyumのローカルミラーリポジトリを構築してパッケージのダウンロード時間を減らしてみました。今日は、yumのローカルミラーリポジトリを構築する手順を紹介します。 1.必要なパッケージのインストール yum-utilsとcreate

  • ウノウラボ Unoh Labs: 水平方向のナビゲーションの作り方

    yamaokaです。 水平方向に並んだナビゲーションを作る場合、 皆さんはどのようにマークアップされているでしょうか。 とりあえず必要な項目を羅列してみましょう。 それぞれの項目には矢印の画像を付加するものとします。 == HTML == <p id="navigation"> <img src="arrow.gif">編集 <img src="arrow.gif">削除 <img src="arrow.gif">追加 </p> horizontal_nav_1 posted by (C)フォト蔵 一見よさそうです。 ただ、HTMLの論理的な構造としてふさわしいものでしょうか。 ナビゲーションと言えども論理構造としてはリストの一種なので、リストとしてマークアップするのが適当と言えます。 リストにしてみましょう。 == HTML == <ul id="navigation"> <li>編集<

  • ウノウラボ Unoh Labs: PHP標準の機能(だけ)でウェブサイトのサムネイルを作る

    ではまず試しにInternet Explorerのウィンドウをキャプチャーして、そのサムネイル(ここでは160×120ピクセル)を表示してみましょう。PHPからIEを操作するにはCOMを使用します。 <?php $url = 'お好みのURLをどーぞ'; if (!extension_loaded('gd')) { exit('GD library is not loaded.'); } elseif (!function_exists('imagegrabwindow')) { exit('Function imageGrabWindow is not exist.'); } try { $ie = new COM('InternetExplorer.Application'); $handle = $ie->HWND; $ie->Width = 800; $ie->Height = 6

  • ウノウラボ Unoh Labs: Cactiによるサーバ稼働状況の監視と異常通知

    こんにちわ。 7月2日に、エイガでつながるクチコミサイト「映画生活」のリニューアルが無事に終わってほっとしているhideです。近々、映画APIなども公開していきたいと思っていますので、どうぞよろしくお願い致します。 さて、今日は、Cactiを使ったサーバ稼働状況の監視について説明したいと思います。サーバの稼動状況を監視するツールとしてはMRTGが有名ですが、ウノウではCacti を使っています。MRTGと比べて、Webブラウザ上から設定を行うことができる、データはMySQLに保存されるので過去の任意の時点を詳しく見ることができるなどの点で優れています。 Cactiは普通にインストールしただけだとサーバから取得したデータをグラフ表示するだけなのですが、http://cactiusers.org/にて公開されている Cacti Plugin Architecture というパッチを当てるとプ

  • ウノウラボ Unoh Labs: 携帯開発向けに便利な支援ツール/サイト

    どーも8makiです。 ウノウでは携帯サイトの開発も行っています。 携帯サイトの開発ってPC用のものと比べて制限が多かったり、面倒くさいことが目白押しです。そこで開発に便利なツール・サイトをリンク集的にまとめてみました。 ~~~~~~ツール編~~~~~~ ■必須ツールi 絵文字 ドコモの絵文字が入力/表示できるようになります。 User Agent Switcher (Firefox 拡張) User Agentを書き換えて携帯になりきることができます。 インポート用の各種端末のUser Agentリストを作成していただいたので皆さんもご利用ください。 useragentswitcher.xml ■あると便利なツールiモードHTMLシミュレータIIiモードHTMLシミュレータOpenwave SDK(au) ウェブコンテンツビューア(ソフトバンク)MediaCoder .

  • ウノウラボ Unoh Labs: PHP最適化tipsまとめサイト

    こんにちは。親知らずを抜いて離乳三昧のyukiです。GWの暴飲暴から脱し、ダイエットするには好都合ですね。すいません。負け惜しみです。 さて、今回は「PHPのちょっとしたコツ」の続きネタで、PHP最適化Tipsまとめサイトの紹介です。 これらは既に有名なサイトで紹介されていたり、常識の範囲かもしれませんが、ひとつでも有用に感じていただければ幸いです。 そして英語が極端に苦手なため、意訳突っ込み等あれば宜しくお願い致します。 PHPの最適化 12 PHP Optimization tips (元ネタはこちらでしょうか? http://www.ilia.ws/files/zend_performance.pdf) staticが使えるなら、staticを使う。速度は4倍になる。 __get, __set, __autoload は避ける。 require_once() はコストがかか

  • ウノウラボ Unoh Labs: CSSの管理と記述法のコツ

    前回はYUIの紹介でしたが、今回はCSSの管理と記述法について書きたいと思います。 CSSは、主なHTMLエディタなどでは標準で編集できますが、多人数での開発 やスタイルが多くなってくるほど管理が大変になっていきます。 アプリケーションソフトの管理機能もいいですが、CSSコーディング規約のようなものがあると、より把握が容易になるメリットがあります。 サイト基準設定、ページレイアウト、共通要素、個別スタイルに分ける 構成内容によって、上記のような段階に分けると、意図しない表示等が出たとき、簡単に影響箇所の割り出せます。 基準スタイル(ex: base.css) font-sizeやfamily,デフォルトのmarginやpaddingのリセット等。 前回のYUIのReset.CSSを使う手もあります。 ページレイアウト(ex: layout.css) カラム構成やグローバ

  • ウノウラボ Unoh Labs: エラスティック・レイアウトのご紹介

    yamaokaです。 エラスティック・レイアウトというwebサイトのレイアウト手法をご存知でしょうか?  「エラスティック(elastic)」とは、ゴムのように弾力性がある状態のことです。 言い換えると「伸び縮みするレイアウト」になるでしょうか。 webサイトの代表的なレイアウト手法として、次の2つが挙げられるかと思います。 固定幅レイアウト リキッド・レイアウト 固定幅レイアウト 固定幅レイアウトでは、 コンテンツを格納するボックスの幅を以下のように絶対値で指定します。 div#container { width: 800px; } 固定幅レイアウトの場合、ウィンドウや文字のサイズが変更されてもレイアウトの枠は変わりません。 したがって、ウィンドウを大きくすると表示されるエリアが小さくなってしまったり、 文字のサイズを変更すると外枠が変わらないので読みづらくなってしまったりします。 リキ

  • ウノウラボ Unoh Labs: ウェブアプリ開発を助けるGETコマンドを使ってハックしてみよう!!

    2GBのSDカード買って意気揚々と歓迎会に突撃したらカメラごと持って帰るのを忘れて生きていくのがつらくなったjokagiです. ガジェットには名前と連絡先をお忘れなく. さてウェブアプリケーションの開発をしていると当然ですがブラウザーで画面の確認をしたりしますが,ブラウザーで確認をしているとキャッシュに悩んだり面倒くさいことが少なくありません. 普通そういう時はtelnetなどで直接HTTPプロトコルでウェブサーバーと会話するわけですが面倒くさいですよね. $ telnet www.yahoo.co.jp 80 Trying 203.216.231.160... Connected to www.yahoo.co.jp. Escape character is '^]'. GET / HTTP/1.1 Host: www.yahoo.co.jp HTTP/1.1 200 OK Date:

  • ウノウラボ Unoh Labs: ローカルPCへ大容量データを保存するJavaScriptライブラリ「save2local.js」

    こんにちは。さかとくです。 JavaScriptでローカルPCにデータを保存するライブラリ「save2local.js」を作りましたので公開します。 通常、JavaScriptではセキュリティが考慮されているため、データをローカルPCに保存するには、Cookieを利用します。 しかし、Cookieを利用する場合は、それほどたくさんの情報を保存することができません。 そのため、ゲームのセーブデータや、フォームに記入したデータなどは、セッションの仕組みを利用してサーバーに保存するのが一般的でした。「save2local.js」ライブラリを使えば、サーバーを利用することなく、ローカルPCに任意のテキストを保存できます。 今回ローカルPCにデータを保存するために、Flashの機能を使います。Flashには、SharedObjectと言ってローカルPCにデータを保存する機能がついています。

  • ウノウラボ Unoh Labs: MySQL5からのインデックス結合で1テーブル複数インデックスを使う

    komagataです。 Webアプリケーションのパフォーマンスの大半はデータベース、特にインデックスの使われ方にかかっている気がします。 仕事でもMySQLをよく使いますが、MySQLでは1テーブルに付き1インデックスしか使われません。PostgreSQLなどと比べてそのことが気になってMySQLでのパフォーマンスチューニングに全く自信が持てませんでした。 オライリーの実践ハイパフォーマンスMySQLには下記のように書かれています。 実際、UNIONを除き、MySQLでは、1つのクエリを実行するとき、1つのテーブルに付き1つのインデックスしか使用できない。この事実は、繰り返し述べるに値するほど重要である。「MySQLでは、1つのクエリを実行するとき、1つのテーブルにつき1つのインデックスしか使用できないのである。」 また、その制約を考えたクエリの書き方として下記の様に書いてあります。 my

  • ウノウラボ Unoh Labs: WEBサービス運用における監視体制

    こんにちは satoです WEBサービスは作るよりも運用の方がコストがかかるとも言われています。 運用を極力自動化して、コストを減らしたいものです。 ここではウノウで使っているツール類を紹介したいと思います。 1) 疎通、生存監視 webの生存監視などは nagiosを使って監視しています。 nagiosには - いつ(土日を除く、10時~22時までの間で など) - どのタイミングで(N回連続で ,復旧したら など) - 何が起こったった時に(疎通が取れない など) - どうするか(メールで通知する) などを細かく設定できる監視ツールです。 ウノウでは MySQL、memcached、HTTP、ping、DNS、SMTPなどの監視をnagiosで行っています。 2) システムやアプリケーションLOG ログの監視には swatch を使用しています swatchの機能には -

  • ウノウラボ Unoh Labs: Global standard programming with GNU Autotools

    尾藤正人です。 UNIXのソフトウェアをインストールするときに、よくやるのが ./configure make make install という手順ですが、この configure スクリプトや Makefile を自動的に生成してくれるツールは GNU Autotools と呼ばれます。 GNU Autotools は使うとすごく便利なんだけど、結構知らない人が多そうだった(実際あまり知らなかった)ので、昨日の勉強会の時に紹介しました。せっかくなので資料を公開します。 プレゼン資料(OpenOffice) プレゼン資料(PowerPoint) bat.tar.gz bat-0.0.1.tar.gz プレゼン資料はOpenOfficeで作りました。念のためPowerPoint用に変換したのもおいておきます。 単に説明だけだと内容がよく分からないので簡単な例として bat コマンドを作

  • ウノウラボ Unoh Labs: すべてのWebデベロッパーに必須なFirefox拡張20(+1)選

    naoyaです。 CyberKonowledgeに20 FireFox Extensions That Every Web Designer Should Know Aboutという記事がありました。ちょうど、タイムリーな記事だったので、さっそくすべてのFirefox拡張を試してみましたので紹介します。

  • 1