タグ

2017年11月15日のブックマーク (11件)

  • さくらVPSで一日6万PVを処理するためにしたこと - 新卒インフラエンジニア2年目

    さくらVPSで6万PV程度のサイトを運用することになったので、その際の記録を残しておきます。 さくらレンタルサーバ⇒さくらVPS さくらレンタルサーバで運用している時は、ちょくちょく503が発生しておりこれを解決するためにさくらVPSへの移行を行いました。 レンタルサーバの時は、ログ解析や監視ツールなどを導入していなかったので503の頻度やパターンは不明です。(安易な判断でVPSに移行したので、この点は反省です) 来は原因を追及し、プログラムの改修やサーバ負荷の分散などをすべきですが時間の都合で省いてしまいました。 構成 運用するサイトはpukiwikiで構成されたサイトです。 pukiwikiは、PHPで書かれており大量のデータをRDBを利用せずに構築できる点が大きなメリットです。 今回は1サイトですが、複数のサイトを運用する可能性を考慮してVirtualHostも利用します。 さくら

    subak
    subak 2017/11/15
  • ApacheのVirtualHost単位でMaxClientsを設定するApacheモジュールをOSS化 - 人間とウェブの未来

    一つのサーバに多数のホストを収容するような高集積なホスティングサービス(所謂レンタルサーバ)を提供しようとすると、収容しているユーザ単位でいかにリソースをコントロールするかが運用者には求められます。 そういう状況で、これまでApacheには色々なモジュールがあって、それらをうまく組み合わせながらリソースを制御してきたと思います。ですが、意外とシンプルなリソース制御として、VirtualHost(以下vhost)単位で個別にMaxClinetsを制御するだけのモジュールが無かったりします。それと同等の機能を提供するモジュールは幾つかあるのですが、色々と必要の無い機能が沢山盛り込まれていたりとか、特定のバージョン、特定のMPM、特定のOSでしか動かなかったりして微妙に使いにくかったりします。 要件的には単にvhost単位でMaxClinetsを各種MPMやバージョンで制御できれば良いです。こう

    ApacheのVirtualHost単位でMaxClientsを設定するApacheモジュールをOSS化 - 人間とウェブの未来
    subak
    subak 2017/11/15
  • 意外と面倒な「503 Service Temporarily Unavailable」 - モロ屋

    先日とある方の家に遊びに行ったのですが、2TBのHDDを20台繋いだメディアサーバーがあり、PS3で録画したアニメどんなのでも見れて快適だよ。と紹介されて震えました。もろやです。 サーバー落ちてる? 「Service Temporarily Unavailable」の文字を見て「サーバー落ちてる」とは誰もが言ったことがあると思います。 今日もこんな話題がTwitterに流れてました。 「初音ミク×Tカード」公式サイトが503エラーで撃沈 - GIGAZINE 503は「アクセスが集中しすぎてサーバーが落ちた(ダウンした)」という意味だと捉えられることが多く、それも間違いではないんですが、正確には「アクセスが集中しすぎてサーバーが落ちそうだから、アクセスを制限している」ことが多いです。 Apacheには過負荷になったら503を返す。という処理はありません。 普通にApache入れてWebサー

    意外と面倒な「503 Service Temporarily Unavailable」 - モロ屋
    subak
    subak 2017/11/15
  • Webサーバの性能を測る | IIJの技術 | インターネットイニシアティブ(IIJ)

    UNIX系のOSで利用できるWebサーバの性能測定ツールといえば、Apache Benchやhttperfを思い浮かべる人が多いのではないでしょうか。これらの計測ツールは、残念ながら最近の高速なWebサーバを計測するには非力です。この記事では、高速なWebサーバにも負けないweighttpの使い方を紹介します。 weighttpとは何か weighttpは、Webサーバlighttpdの開発者が実装したWebサーバの性能測定ツールです。以下のような特徴を持ちます。 Webサーバのスループット(リクエスト毎秒)を測定できる ネイティブスレッドを複数起動し測定性能を向上できる libevを利用することで、モダンなポール・システムコールを利用する Apache Benchによく似たコマンドラインオプションを持つ 2.は Apache Benchやhttperfにはない機能です。ここが決定的に異な

    Webサーバの性能を測る | IIJの技術 | インターネットイニシアティブ(IIJ)
    subak
    subak 2017/11/15
  • OAuthアクセストークンを使ってMicrosoft Azureにアクセスする - Qiita

    概要 Microsoft Azureを利用するデスクトップアプリのデバイス認証にて取得したアクセストークンを, Go から Microsoft Azure を利用するにて紹介した Swagger で生成したクライアントから利用する方法. API によって微妙に関数の形が変わるため,生成されたソースコードを見ながらどこでトークンを渡せるのか調べる必要があるが,おおよそ次の二種類に分かれると思われる. メソッドが認証情報を受け取る場合 最も簡単なのは,認証情報を受け取るタイプのメソッドが生成された場合である. 例えば,次のようにして生成できる 2016-09-01 版の Resource API $ swagger generate client -f https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm

    OAuthアクセストークンを使ってMicrosoft Azureにアクセスする - Qiita
  • Apache の情報をコマンドラインで取得する - Qiita

    概要 設定変更をしないで Apache の設定や情報をダンプする方法のまとめ。 出力例は CentOS 7.1.1503 および yum でインストールした Apache 2.4.6 のデフォルト設定の環境による。 各コマンド一覧 httpd -t -D DUMP_CONFIG 2>/dev/null | grep '# In' | awk '{print $4}' # 設定ファイル一覧 httpd -t -D DUMP_CONFIG 2>/dev/null | grep -v '#' # 設定ファイル内容 httpd -V # コンパイル時の設定 httpd -S -D SSL # 実行時の設定 httpd -l # 静的モジュール一覧 httpd -M # ロード済みモジュール一覧 rpm -qi httpd # パッケージ情報 rpm -q --changelog httpd # パ

    Apache の情報をコマンドラインで取得する - Qiita
    subak
    subak 2017/11/15
  • Apacheセキュリティ設定 - Qiita

    概要 Apache の設定について共通化できるセキュリティ設定とその各項目についてまとめた。 設定例 必須設定 cat << _EOF_ > /etc/httpd/conf.d/security.conf # バージョン情報の隠蔽 ServerTokens ProductOnly Header always unset "X-Powered-By" # httpoxy 対策 RequestHeader unset Proxy # クリックジャッキング対策 Header always set X-Frame-Options "SAMEORIGIN" # XSS対策 Header always set X-XSS-Protection "1; mode=block" Header always set X-Content-Type-Options "nosniff" # XST対策 Trace

    Apacheセキュリティ設定 - Qiita
    subak
    subak 2017/11/15
  • Dockerのコンテナから見えるメモリ使用量の不思議 - ぐるっとぐりっど

    概要 CentOSもしばらく前に7が出て、Dockerが使えるようになった(正確には、6.5からDockerを正式サポートしてるはずだけど)。 コンテナとかその辺これまで使ったことなかったので、仮想化に慣れた身からは、コンテナからのメモリの見え方が奇妙に思えたのでメモ。 メモリを制限する Dockerは、runするときに、-mオプションをつけると、メモリを制限することができる # docker run -m 512m -i -t centos:centos7 /bin/bash でもこの状態で、freeコマンドを実行してみると、1GB割り当てられてるように見える。 bash-4.2# free total used free shared buffers cached Mem: 1010864 204616 806248 8744 64 49248 -/+ buffers/cache: 1

    Dockerのコンテナから見えるメモリ使用量の不思議 - ぐるっとぐりっど
  • Dockerのメモリ制限に関するメモ - Qiita

    引用:Docker run リファレンス ここでは--memory-reservationと--oom-kill-disable=false、--memory-swappinessについて調べました。 環境 OSX 10.12 Docker for MAC(docker 1.12.1) --memory-reservation メモリのソフトリミットということで、ホストのメモリに余裕がある時はは制限はかからず、他に使用している時は制限がかかるということらしい。 試してみました。 コンテナ2つ起動し、1つは--memory-reservationを512MB、もうひとつは制限なしで設定します。Linuxの負荷ツールstressで以下のシナリオでメモリに負荷をかけます。 前提:ホストのメモリは2GB 1. 両方のコンテナに1.25GBの負荷をかける 2. メモリ制限のないコンテナへの負荷を停止

    Dockerのメモリ制限に関するメモ - Qiita
  • 注文検索API - Yahoo!デベロッパーネットワーク

    2024年04月17日 取得情報(Field)「PayMethodName」の内容の文言を修正しました。 ----- 支払い方法がpayment_a17、payment_a19の場合、2024/5/13(月)リリース後の注文に関して名称が変更されますが、リリース前の注文に関しては変更されませんのでご注意ください。 <現在> PayPay(残高) PayPay(クレジット)※旧あと払い <修正後> PayPay残高等 PayPayクレジット ----- 2024年3月27日 ソーシャルギフト機能に関連する下記「取得情報(Field)」の内容を修正(追記)しました。 BillFirstName、BillFirstNameKana、BillLastName、BillLastNameKana、BillPrefecture 2023年11月10日 ExcellentDelivery(優良配送フラグ)

    注文検索API - Yahoo!デベロッパーネットワーク
    subak
    subak 2017/11/15
    yahoo
  • FuelPHPにてcurlでAPIにXML形式などで投げる方法 - deamu’s blog

    使い方を勘違いしてドハマりしたので、備忘録として残します。 今回動きを確認した環境 FuelPHP 1.7.2 PHP 5.5.19 まずはXML形式ではなく、通常のパラメータで渡すやり方から。 curlを用いてPOSTでパラメータを普通にAPI等に渡す方法 (1) 通常のPHPの関数のみで実現するパターン 参考にしたサイト: http://php.net/manual/ja/book.curl.php#116122 <?php $ch = curl_init('http://localhost/request/api'); $params = array('userid' => 12, 'data' => 'sample'); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params)); curl_setopt($ch,

    FuelPHPにてcurlでAPIにXML形式などで投げる方法 - deamu’s blog
    subak
    subak 2017/11/15