タグ

ブックマーク / atmarkit.itmedia.co.jp (199)

  • memcached+PostgreSQLで実現するハイパフォーマンスWebアプリケーション構築(1/4) ― @IT

    稿の前提環境 memcached 1.2.5 データベース:PostgreSQL 8.3.1 OS:CentOS 5(Linux kernel 2.6 ) シェル:bash CPU:Intel Core2Quad 9660 2.4GHz RAM:PC2-6400 8GBytes memcachedは、Danga Interactiveによって開発されたオープンソースのメモリキャッシュサーバです。 メモリ上にデータを保存するのでmemcachedを終了するとデータが失われますが、(OracleMySQLといった)RDBMSと比較するとけた違いの高速レスポンス性能を有し、数千万件という大量のデータを扱ってもほとんど性能が劣化しないという特徴があります。 機能は限界まで切り詰められ、基的にはキーとデータの組(以下、itemと呼びます)の保存と検索と削除しかできません。 にもかかわらず、me

    memcached+PostgreSQLで実現するハイパフォーマンスWebアプリケーション構築(1/4) ― @IT
  • syslogdの限界と次世代シスログデーモン

    syslogdの問題点 UNIX系OSでは、syslogdがデフォルトインストールされていることに加え、ファシリティとプライオリティの組み合わせで出力を制御できる手軽さが相まって、シスログが広く利用され、そのデーモンにsyslogdがデファクトスタンダードとして普及しています。 しかし、これほど広範囲に利用されているにもかかわらず、シスログがRFC3164(http://www.ietf.org/rfc/rfc3164.txt)として標準化されたのは2001年と比較的最近のことです。その間もsyslogdは使い続けられ、キャリアクラスの用途でない限り、見直されることはありませんでした。 ところが最近になり、日版SOX法に代表される内部監査の一環として、内外の通信記録、メールの送受信記録、ログイン記録など、シスログの用途が広がりを見せています。従来シスログは、障害の検知やその原因調査など、

    syslogdの限界と次世代シスログデーモン
    tgk
    tgk 2008/07/17
    syslogdの問題点
  • PostgreSQLを遅くしている犯人はどこだ?

    出力内容を追いかけろ 実際に実行してみてどれだけの時間がかかったかは「actual time=」で表示される数値を追いかけることで確認可能です。例えば、前ページのリストの1行目に出力されている「actual time」だけを取り出すと、次のようになります。 ↓最初の1件目を取得するまでにかかった時間 (actual time=9006.586..9011.968 rows=16842 loops=1) ↑最終的に結果行全体を取得するのにかかった時間 特に、右側の数値である「最終的に結果行全体を取得するのにかかった時間」では、そのSQLの処理開始からの累積時間で表示されます。このため、当該行の処理が完了するまでにどれだけの時間がかかったかを確認できます。 これを基に、SQLの中でどの処理に最も時間がかかっていたのかを確認していきましょう。 Total runtimeが9022.840msであ

    PostgreSQLを遅くしている犯人はどこだ?
    tgk
    tgk 2008/07/06
    PostgreSQLの実行計画の見方
  • Eclipseプラグイン コード品質のカイゼン(JUnit Factory)

    これはすごい!?コード品質のカイゼン化プラグイン2種:CoolなEclipseプラグイン(24)(1/3 ページ) ソフトウェアの品質と保守性を向上させるために、テストケースの作成は重要です。しかしながら、時間がない、面倒だなどの理由によりユニット(単体)テストが省略されることはしばしばあります。 また、ソフトウェアの修正や仕様変更を考慮すると、保守性の高い(分かりやすい/読みやすい)コードにする必要があります。 稿では、ソースコードからJUnitをベースとしたたテストケースを自動的に生成する「JUnit Factory」とコードの保守性の指標であるCRAP(Change Risk Anti Pattern)を計測する「Crap4j」をご紹介します。 テストケースを自動生成するJUnit Factoryとは? JUnit Factoryはソースコードからテストケースを自動生成し、しかも生

    Eclipseプラグイン コード品質のカイゼン(JUnit Factory)
    tgk
    tgk 2008/02/20
    Agitarがタダになったらしい
  • @IT:yumコマンドでよく利用するコマンド

    Fedora Coreが標準で採用しているyumコマンドは、RPMパッケージのインストールやアンインストール、アップデートなどを行うためのプログラムだ。 Fedora Core 1を自動更新するには(yum編)で説明したように、システムを更新するだけであれば、

    tgk
    tgk 2008/02/17
  • VMware PlayerでLinuxを手軽に使用するには - @IT

    VMware Playerは、上位製品の「VMware Workstation」から仮想マシン作成能や仮想マシンの設定変更機能などを省略したバージョンなので、自分で仮想マシンを作成して、その仮想マシンにLinuxをインストールすることはできない。しかし、Linuxがインストール済みの仮想マシンをダウンロードし、それをそのまま実行することは可能だ。 ここでは、OSがインストールされた仮想マシンをダウンロードする方法を紹介する。 VMwareは、「Virtual Appliance Marketplace」(http://www.vmware.com/appliances/)というWebページで、仮想マシンの情報を公開している。ここでは、配布されている仮想マシンの情報を「カテゴリ別」「新規公開されたもの[Recently Added]」「よくダウンロードされるもの[Most Downloade

    tgk
    tgk 2008/02/15
  • rootがログインできるターミナルを変更するには

    rootがログイン可能なターミナルは、/etc/securettyというファイルに「/dev」を省略した形式で記述されている。rootがログインできるターミナルを変更するには、このファイルを変更すればいい。例えば、Turbolinux 7の/etc/securettyは、以下のようになっている。

    tgk
    tgk 2008/02/01
    /etc/securetty
  • 「route」コマンドでWindows OSのルーティングテーブルを操作する

    対象OS:Windows 8.1/Windows 10/Windows 11、Windows Server 2012/Windows Server 2012 R2/Windows Server 2016/Windows Server 2019/Windows Server 2022 Windows PCの「ルーティングテーブル」を変えたい! TCP/IPでは、IPアドレスに基づいてネットワークパケットのルーティングを行っている。このルーティング処理において重要な役割を持つのが「ルーティングテーブル」(ルートテーブル)である。 ルーティングテーブルには、宛先となるネットワークアドレス(とネットマスク)と使用するネットワークインタフェースなどを記録した情報(エントリ)が多数格納されている。 IPパケットのルーティング処理では、パケットの宛先IPアドレスがどのルーティングテーブルのエントリに合致

    「route」コマンドでWindows OSのルーティングテーブルを操作する
    tgk
    tgk 2008/01/30
    routeコマンド 「Metricが「1」と「20」の2通りのエントリがあると、「1」のルートの方が優先される」
  • 「[ASP.NET]スタイルシートでのラベルの設定」(1) Insider.NET - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    tgk
    tgk 2008/01/16
    Labelのテキストをvalign="center"することはできない
  • 「ListBoxで複数選択したい!!」(1) Insider.NET - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    tgk
    tgk 2007/12/04
    <select>でCtrlを押さずに複数選択するスクリプト
  • 第16回 ASP.NETにおけるページの遷移

    別ページへの遷移 ASP.NETでは、同一ページへのポストバックしかサポートされていない。おかげで、ページからページへデータを受け渡すには、フォーム以外の方法を取らざるをえない。例えば、Sessionプロパティに値を格納してからページを移動する、クエリ文字列に値を指定する(詳しくは後述)などだ。しかし、どちらも大量データの受け渡しには向かず、効率が悪い。より効率的にデータを渡すには、Transferメソッドを使って、擬似的に別ページへとポストバックする手法が有効だ。 ■Transferメソッド いま述べたように、ASP.NETでは同一ページにしかポストバックできない。これは揺るぎない制約だが、いったんポストバックされた後に、サーバ・サイドで別ページへと処理を移すことで、擬似的に別ページへのポストバックが実現できる。この処理に使うメソッドが、HttpServerUtility.Transfe

    第16回 ASP.NETにおけるページの遷移
    tgk
    tgk 2007/11/20
    Server.TransferでForwardできるが、あんまりスマートなプログラミングができない。Context.Handlerなんか参照するなら、Request[""]を参照してパラメータ取ったほうがいいんじゃないのか
  • 「IISのバージョンについて」(1) Windows Server Insider - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    tgk
    tgk 2007/11/07
    IISのバージョンはOSごとに決まっている。バージョンアップできないんだって
  • Windowsスクリプティング環境比較:PowerShell vs WSH(3/4) - @IT

    WSHはVBScriptとJScriptで基的なスクリプトを書く際の方法が異なる。VBScriptでは100種ほどある関数(ある処理を行い、その結果を返すための装置)を組み合わせて基的なスクリプトを組むことができる。JScriptではさまざまな内部オブジェクト(便利な機能を実現するための道具)のプロパティ(属性)やメソッド(動作)を組み合わせてスクリプトを組む。 それに対しPowerShellでは、コマンドレットと呼ばれる統一化された呼び出し方法を備えた120種以上のコマンドをパイプや変数を通して組み合わせて利用するのが基的な使い方となる。 ここで、サンプルとしてそれぞれの言語で現在の時間を表示させるスクリプトを取り上げてみよう。 これらのスクリプトはそれぞれ、VBScriptでは拡張子.vbsを、JScriptでは拡張子.jsを、PowerShellでは拡張子.ps1を付けてテキス

    tgk
    tgk 2007/09/25
    WSHとVBScriptとPowerShellの関係
  • [ASP.NET AJAX]CollapsiblePanelコントロールで伸縮自在のマルチペインを生成するには?[2.0のみ、C#、VB] - @IT

    CollapsiblePanelコントロール(CollapsiblePanelExtender)は、ASP.NET AJAX Control Toolkit(以降、Control Toolkit)で提供されるコントロールの1つで、Panelコントロールを拡張して詳細表示部分が開閉可能なパネルを定義する。

    tgk
    tgk 2007/08/08
    開閉可能なパネルを作る
  • 「[C#]普通の四捨五入をするには?」(1) Insider.NET - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    tgk
    tgk 2007/07/31
    .NET Frameworkは四捨五入を直接サポートしない。偶数丸めする
  • SQL Server 2005のエディション構成 - @IT

    *1:いずれもパッケージ版の推定小売価格。詳細はマイクロソフトの発表資料を参照。 *2:プロセッサ・ライセンス(Select レベルA)。 *3:サーバ・ライセンス+5クライアント・アクセス・ライセンス。 *4:サーバ・ライセンス+25クライアント・アクセス・ライセンス。 *5:OSがサポートする最大容量まで。 *6:WOW(Windows on Windows)を使用し、64bit環境で実行することは可能。 *7:一部機能制限あり。 *8:2ノードのみサポート。 *9:Windows Server 2003, Enterprise またはDatacenter Editionと、対応したハードウェアが必要。32bitSQL ServerではAWEを有効にする必要がある。 *10:Management Studio Express(シンプルな管理ツール)をダウンロード提供。 *11:グラフ

    tgk
    tgk 2007/07/27
    Express Editionにはインポート/エクスポート機能がない
  • Visual Studio .NETによるチーム開発事始め Visual Studio .NETを使ったソース管理の実践(1/4) - @IT

    前回は、「Visual SourceSafe(以降、VSS)のサーバ環境の構築」と「VSSクライアントのインストール」について説明した。今回は、Visual Studio .NET(以降、VS.NET)を使って開発者がVSSデータベースにソリューションを追加する手順や、ソース・ファイルのチェックイン(VSSデータベースへのファイルの格納)やチェックアウト(VSSデータベースからのファイルの取得と編集)を行う方法といった「VS.NETを使ったソース管理の実践」について解説しよう。 稿では、前回でも説明したように、ソース管理をデモンストレーションするためのサンプル・プログラムとして、「BlogX」というASP.NET Webアプリケーションを使用する。このWebアプリケーションを3人の開発者と1人のソース管理者でチーム開発し、そのソース・ファイルをVisual SourceSafeで管理する

    tgk
    tgk 2007/07/25
    ソリューションファイルの共有は、VSSでないとできないということらしい
  • ASP.NET 2.0が変えるWebアプリ開発の世界 第1回 周辺技術が支えるASP.NET 2.0の進化(2/4) - @IT

    ●新しいコードビハインド・モデルを採用 従来のASP.NET 1.xでは、2つのプログラミング・モデルを採用していた。1つに、「.aspx」ファイル内でHTMLとコードが共存する「ページインライン」モデル。そして、もう1つが、HTML部分を「.aspx」ファイルに、コード部分を「.aspx.vb(または.aspx.cs)」に分離する「コードビハインド」モデルだ。 比較的小規模なサイトで単独の人間が開発を行っているようなケースでは、ページインライン・モデルの方がファイル管理も容易だ。一方、中規模以上のサイトで、レイアウト部分はデザイナーが、コード部分はプログラマが、というように分担作業を行っているようなケースでは、ファイルそのものを分割できるコードビハインド・モデルを採用するのが好ましい(ちなみに、エンタープライズ用途での利用を主眼に置いたVS.NET 2003ではコードビハインド・モデルを

    tgk
    tgk 2007/07/25
    VS 2005では実行に必要なファイルのみが生成される。プロジェクト・ファイルがアプリケーション・フォルダに展開されなくなったので、開発環境から本番環境へのアプリケーションの配置がより容易になった。
  • 特集 C# 2.0新機能徹底解説(前編) ― 開発生産性を飛躍的に高めるジェネリック(1/4) - @IT

    C# 2.0(2005年提供予定)の新機能徹底解説ということで、数回に分けてC# 2.0の拡張点に関する記事を執筆させていただくことになった。C# 2.0の主要な改善点は、一言で表現すれば、「より書きやすくなった」ことだ。C言語に源流を持つ言語(例えば、C++Javaなど)の根底にある思想は「シンプルなコードは美しい」ということだが、C# 2.0でもこの考え方が受け継がれている。C# 2.0はシンプルかつパワフルな言語である。 C# 2.0では、現行のC# 1.0に対していくつかの新機能が追加されているが、その中でも主要なものは以下の3点だ。 ジェネリック(Generics) 匿名メソッド(Anonymous Methods) イテレータ(Iterator) 今回では、このうちジェネリックについて解説する。 ジェネリックについては、まず「ジェネリックとは何か?」を説明し、さらにジェネリッ

    tgk
    tgk 2007/07/20
  • コンソール・アプリケーションの強制終了時に処理を行うには?[2.0のみ、C#、VB] - @IT

    コンソール・アプリケーション(通常、コマンド・プロンプト内で実行される)は、[Ctrl]+[C]キーにより強制終了することができるが、アプリケーションによっては突然終了されては困る場合がある。アプリケーションの終了時に一時ファイルの削除や、ログの書き出しといった後処理が必要になる場合だ。 .NET Framework 2.0のConsoleクラス(System名前空間)では、[Ctrl]+[C]キーが押されたときにCancelKeyPressイベントが発生するようになっており、そのイベント・ハンドラにあらかじめメソッドを登録しておくことにより、アプリケーションの強制終了時に後処理を実行させることができる。 CancelKeyPressイベント・ハンドラの記述と登録 CancelKeyPressイベント・ハンドラとなるメソッドは次のような形式で記述する(具体例は後述のサンプル・プログラムを参

    tgk
    tgk 2007/07/10