タグ

networkとserverに関するniidomeのブックマーク (4)

  • 開発メモ: 50行のC++コードでWebサーバを実装する

    「Kyoto Tycoonの設計 その四」改め、50行でWebサーバを書く方法を解説する。前回実装した「多重I/Oマルチスレッド汎用TCPサーバ」の上にHTTPの処理を行う層をつけて、「多重I/Oマルチスレッド汎用HTTPサーバ」を司るクラスを実装してみたので、それを使ってちょちょいとやる。 URLクラス HTTPと言えばURLが使えないと意味がない。URLは単なる文字列として扱ってもよいのだが、様々なシーンで分解や加工が必要になり、その処理はなにげに複雑で面倒なので、予めクラスとして導出しておいた方がよいだろう。 class URL { public: // 文字列のURLを解析して内部構造を作る void set_expression(const std::string& expr); // スキーム要素を設定する void set_scheme(const std::string&

  • 小悪魔女子大生のサーバエンジニア日記

    ECC版SSL証明書インストール体験記その4 02.08.13 / 未分類 / Author: aico / Comments: (0) では、いよいよ発行されたECC証明書をインストールしましょう! 実はECC版SSL証明書は現在、ブラウザ・OSによっては対応していないものも多いので、 対応していないものはRSAの証明書を読むように、ECCとRSAのハイブリッド構成をすることが出来ます。 そしてなんと、ECCの証明書を申請するとRSAの証明書も一緒にもらうことが出来ます(ベリサインさん太っ腹!) なので今回はECCとRSAのハイブリッド構成を組みつつ証明書のインストールを行います! まずはベリサインのサイトで中間証明書を確認しましょう。 発行されたCRT、中間証明書、秘密鍵は必ず対になっている必要があります。 対になっていないとエラーになってしまいます。。 小悪魔ブログは最初、中間証明書

  • ApacheとVarnishでIPブロックを共有管理 RE: IPアドレスブロックを集中管理する方法と、その活用法 - blog.nomadscafe.jp

    ApacheとVarnishでIPブロックを共有管理 RE: IPアドレスブロックを集中管理する方法と、その活用法 hirose31さんの「IPアドレスブロックを集中管理する方法と、その活用法」のような感じでApacheとVarnishのIPブロック設定を行う方法 某所でも、WWW::MobileCarrierJPをつかってIPリストを取得していますが、これまでApacheしか使ってないこともあって、吐き出し方法は直接Apacheのconfにしています。 ■mobileip(docomo|ezweb|softbank..).conf Allow from 210.153.84.0/24 Allow from 210.136.161.0/24 Allow from 210.153.86.0/24 ... これを、httpd.confからIncludeして使ってます。 Varnishでもキャリ

  • ウノウラボ 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

  • 1