タグ

ブックマーク / orangain.hatenablog.com (4)

  • #isucon 2014予選の延長戦をやってみた - orangain flavor

    予選の時間内では足りてないことばかりだったので、もう少し試行錯誤することにしました。 #isucon 2014の予選をほぼ一人で戦うハメになった話 - orangain flavor 目標は50000点、できれば60000点出したい。 予選終了時 Python実装 DBはRedisのみを使う Cookieがないときだけnginxで静的ファイルを返す Gunicornを使ったマルチプロセスモデル ワーカー数10、ワークロード10 最終提出スコア: 32710 細々とした改良 nginxの設定を追加。 redis-pyのパーサーをhiredisに置き換え。 テンプレートエンジンを使わないよう変更。 アプリを見なおして、RedisのRead/Write数を削減。 スコアはあまり上がらず 32912。 Gunicornのワーカーをmeinheldに置き換え 前回のエントリのコメントで id:met

    #isucon 2014予選の延長戦をやってみた - orangain flavor
  • #isucon 2014の予選をほぼ一人で戦うハメになった話 - orangain flavor

    AMI提出した!2人目が起きたのが14時、3人目は17時という厳しい状況の割には頑張ったと思う。10位には入れなかったけど。めっちゃ楽しかったー!運営の方、ありがとうございました #isucon— かと (@orangain) 2014, 9月 28 まとめ リモートでタイムゾーンが違うと大変 Pythonを選んだ Redisのみを使う実装に書き換えた 提出スコアは32710 準備したこと 事前にチームで昨年の問題を解きました。プロファイリング方法を全然わかってなかったので、制限時間内にほとんどスコアが伸びませんでした。1週間かけて勉強し、MySQLのスロークエリログやApache/nginxのログを集計する方法を知りました。 また、継続的にプロファイリングできるようにするのが大事だと痛感したので、以下の様なツールを作りました。 ベンチマークを回すと同時に、以下の様なデータを収集する。 M

    #isucon 2014の予選をほぼ一人で戦うハメになった話 - orangain flavor
    hamaco
    hamaco 2014/10/06
  • Dockerを使ってJenkinsのジョブごとにテスト実行環境を分離する - orangain flavor

    はじめに JenkinsでJVM上で動かない言語(PythonRubyなど*1)を使っていると、ジョブごとに環境が分離されていないことが問題になる場合があります。 Pythonにおける virtualenv やRubyにおける Bundler を使えば、ジョブごとに利用するライブラリを分離することができます。しかし、C拡張ライブラリをインストールするためには、ジョブが実行されるノードに開発用のファイルが存在している必要があります。例えば、Pythonモジュールの lxml のインストールにはlibxml2やlibxsltの開発用ファイルが必要です。 *2 このようなファイルが必要になるたびにJenkinsのノードにインストールするのはスマートじゃないですし、実行に必要な環境はコードの形で明文化されているべきです。 ジョブでaptやyumを使ってインストールするのもセキュアじゃないですし、

    Dockerを使ってJenkinsのジョブごとにテスト実行環境を分離する - orangain flavor
    hamaco
    hamaco 2013/12/06
  • さくらVPSでLXCを使って安価に複数台構成を実現する - orangain flavor

    2013年6月7日 22:04更新: Upstartのデフォルトの設定ファイルを書き換えない方法に変更しました。hitoさんありがとうございます。 lxcなどのバージョンを記載しました。 はじめに Chefを使っていると、役割やサービスごとに環境を分離したくなります。 しかし、個人レベルで大してトラフィックがない段階で、サービスごとに仮想サーバーを借りていてはお金が足りません。 そこで、安価なVPS上でLinux Container (LXC) を使うことで、複数のサーバーを作ります。 スケールしたくなったときは、コンテナを潰して、新しく仮想サーバーを借りてChefで同様の設定をすれば手軽にスケールできると考えています。 Heroku使えば?と言われるかもしれませんが、色々なミドルウェアを利用したり、バックグラウンドで処理をしようとすると、たちまちお金がかかるので、VPSをやりくりして遊び

    さくらVPSでLXCを使って安価に複数台構成を実現する - orangain flavor
  • 1