タグ

2013年10月10日のブックマーク (16件)

  • mmapのほうがreadより速いという迷信について - kazuhoのメモ置き場

    @ITに以下のような記事が出て、 今回からしばらくの間は、まったく逆の例、つまり使うとプログラムの処理性能が上がるというシステムコールを紹介していく。システムコールを呼ぶ回数は少ない方が処理性能は高くなるという原則は変わらないが、呼び出しておくと処理性能が向上するシステムコールというものが存在するのだ。こうしたシステムコールを使わないでいることは、とてももったいない。 今回紹介するシステムコールは「mmap(2)」だ。ここでは詳しく仕組みを解説しないが、mmap(2)は、プログラムの処理性能に必ず良い影響を与える。 やはりあった? 高速化に効くシステムコール (1/2):知ってトクするシステムコール(3) - @IT それを真に受けたのか、「Go言語でmmapシステムコールを使ったファイル読み込みの高速化検討とC言語のコンパイラの話 - ryochack.blog」のようなブログエントリも

    mmapのほうがreadより速いという迷信について - kazuhoのメモ置き場
  • 初心者から一歩抜け出すためのGitの業 〜 git rebase -i - Qiita

    前回とは記事を分けることにした。長くなるから。 今回は、だれでもやったことがあるであろう、「え、ちょ、3つ前のコミットにtypo見つけちゃったよ!!」に対応する。 やりかたはいくつかある。例えば、最初に思いつきそうなことが、 そのコミットまでgit resetを繰り返して、編集して、もう一回git commitしていく である。だけど、前の編集内容を覚えてなきゃいけないし、「Gitを使ってるくせに」的なアナログ感を感じざるをえない……ので、もっと上手い方法は無いのか。 ある。 iはinteractiveのことだ。多分。man git-rebaseをちゃんと読めば書いてあるのかもしれない。英語だけど気になる人は読んでみて欲しい。 で、このコマンド、何ができるのか。試しにやってみよう。 git log --onelineしたら、こんな感じのログがあった。

    初心者から一歩抜け出すためのGitの業 〜 git rebase -i - Qiita
    clavier
    clavier 2013/10/10
  • grunt-contrib-watch が重いので grunt-este-watch を試したら幸せになった

    最近、Grunt と grunt-contrib-watch を使っているのだけど、grunt-contrib-watch が CPU を消費しがちである。 watch 対象のファイルが少ないうちは grunt-contrib-watch は問題なく動くんだけども、ファイル数が増えてくると CPU の消費量が増えてくる。自分の環境では、1,000 個ぐらいのファイルを監視していると、常時 10% 程度 CPU を消費している。 この問題は既知であり、FAQ には次のように書いている。 たくさんのファイルを監視している場合、デフォルトの interval の値が小さすぎるかもしれない。options: { interval: 5007 } のようにして増やしてみてほしい。詳しくは issues #35 と #145 を参照のこと (※日語訳は私によるもの) Another reason i

    grunt-contrib-watch が重いので grunt-este-watch を試したら幸せになった
  • #isucon 2013 予選通過 - @kyanny's blog

    isucon 2013 予選通過した。チーム名は :ok_woman: 選んだ実装は Ruby (Sinatra) ISUCON 戦出場者決定のお知らせ : ISUCON公式Blog 予選二日前に @banyan から誘われ急遽参戦を決めた。予選当日までは十分な準備期間はとれなかったが、三回連続参加と場数だけは踏んでいるので振り返りという名の反省文を private repo の issue に書いて共有したりした。 当日の流れ。なんとなく役割分担したほうがいいねと事前に打ち合わせていたのもあり、チームリーダーの @m4i がデータベースを中心にパフォーマンス計測とチューニングの方針決定担当、 @banyan がデプロイ、開発環境整備、フロントエンドなどの足回り担当、残った僕がアプリケーション担当でひたすらコードを書く、という感じだった。 はやい段階で git pull によるデプロイ、

    #isucon 2013 予選通過 - @kyanny's blog
  • ざっくりと #isucon 2013年予選問題の解き方教えます : ISUCON公式Blog

    こんにちは、@acidlemon です。 ざっくりと書いたつもりなのに長編です。 エントリでは、スコアがなかなか伸びなかった方々を主な対象として、実際に先週末実施した予選問題を解いていく方法を解説します。高スコアをたたき出した方々は参考までに「こんなやりかたでもここまでスコア伸びるんだなー」という感じで読んでください。 最初の方針は「派手なことをしない」「コンサバにやる」です。「とりあえず」という気持ちでmemcachedやRedis、もしくはvarnishやnginxでキャッシュし始めるとキャッシュの寿命のことを考え始めなければならず、疑心暗鬼になったりして難易度が上がります。まぁその辺は最終的には男気によって解決するものなのですが、その要素を排除したままできるだけスコアを上げてみましょう。 日曜夜よりアップされたみなさんの感想エントリなども拝見しており、やっぱオンメモリに置くのは速い

    ざっくりと #isucon 2013年予選問題の解き方教えます : ISUCON公式Blog
  • JavaScriptで自動化!Pacifista入門 - Qiita

    皆さん環境構築とか、システムの設定作業とかって、どのように作業していますか? 古きは環境構築手順書を使って行なっていましたが、昨今の自動化ブームに伴って、 chefやcapistrano、fabricなどのツールを検討されている方も多いと思います。 ただ、最近はやりの自動化ツールって、RubyとかPythonを多少知っている必要があったり、 独自DSLや特殊な用語を覚える必要があったりと、学習コストが高くてとっつきにくくないですか? まわりにススメても「あー便利そうだねけど難しそうだね」で終わってしまうパターンが多々あります。 そこでPacifistaですよ Pacifistaは「環境構築をまるごとプログラミングする。それもシンプルに」を目的としたOSSの自動化ツールです。 Pacifistaには、以下の特徴があります。 JavaScriptでコードを書く事が出来る。 JavaScript

    JavaScriptで自動化!Pacifista入門 - Qiita
  • 英語コミットコメントに使えるオシャレフレーズ集

    英語コミットコメントに使えそうなオシャレフレーズを聞いたので、これを使ってドヤ顔コミットをしたくてやれるチャンスを虎視眈々と狙う毎日です v, x, g, z とかこのへんが入ってる単語だとなんかカッコ良さ増す。 tweak とかデザイナーにはだいぶ便利。 単語 意味

    英語コミットコメントに使えるオシャレフレーズ集
  • Chrome DevToolsを使いこなすための参考サイトまとめ | 1 pixel|サイバーエージェント公式クリエイターズブログ

    1 pixel|サイバーエージェント公式クリエイターズブログ サイバーエージェントのクリエイターの取り組みを紹介するオフィシャルブログです。最新技術への挑戦やサービス誕生の裏話、勉強会やイベントのレポートなどCAクリエイターの情報が満載です。 フロントエンドエンジニアの谷です。 記事ではGoogle Chromeの開発者ツール、Chrome DevToolsを使いこなすために参考になるサイト、ページの紹介をします。 すでに多くのフロントエンドエンジニアが開発で使っているかもしれませんが、「要素のインスペクタなどの基的な機能しか使っていない」「UA切り替えくらいしかつかってない」というような方や、そもそもほとんど使ったことがない、という方もこれらを参考にフロントエンド開発を効率化していきましょう! 基的な使い方 Chrome DevTools Overview 基はやはり公式ドキュメ

    Chrome DevToolsを使いこなすための参考サイトまとめ | 1 pixel|サイバーエージェント公式クリエイターズブログ
  • UNIX Tips & Tricks To Save You Time In Terminal

    Many web developers these days use the command line on Unix based machines. If they’re not using it for version control, they’ll more than likely be using it for server administration or compiling preprocessed CSS. As a digital agency, we find that when using the command line, typing similar commands regularly can become frustrating. By the end of this tutorial, you’ll be able to reduce your time

    UNIX Tips & Tricks To Save You Time In Terminal
  • Google、iOSアプリ向け無料バックエンド「Mobile Backend Starter」発表

    Googleは10月9日(現地時間)、iOSアプリのバックエンドを無料で構築できる「Mobile Backend Starter for iOS」を発表した。6月からAndroid向けに提供しているものを、iOSにも対応させた。 Mobile Backend Starterは、Googleが提供するクラウドベースのサーバサイド環境「Google App Engine」で動作するバックエンド。Google App Engineは、数百人までのユーザーベースに無料で対応する(有料でスケールアウトできる)。 iOS向けに、ユーザーデータの保存、米Appleの「Push Notification Service(APNS)」を使ったプッシュ通知、クライアント端末更新のためのクエリ、Google Accountsを使ったユーザー認証などの機能を構築できるObjective-Cのライブラリが用意され

    Google、iOSアプリ向け無料バックエンド「Mobile Backend Starter」発表
  • データベース負荷テストツールまとめ(3) - SH2の日記

    データベース負荷テストツールまとめの第3回です。 データベース負荷テストツールまとめ(1) TPC-B、TPC-Wベースのツールを6つ紹介 データベース負荷テストツールまとめ(2) TPC-Cベースのツールを6つ紹介 かなり期間が空いてしまいましたが、今回はTPC-Hベースのツールを見ていきたいと思います。 TPC-Hとは TPC-HはRDBMSベンチマーク仕様の一つで、意思決定支援システム(DSS)としての性能を測定するものです。大規模なデータを対象にアドホックなクエリを実行します。クエリは全部で22種類定義されています。 TPC-HはTPC-B/W/Cなどと異なり、実行するクエリそのものやテストデータ生成ツールがTPCから提供されています。試しに、一番負荷が高い9番のクエリを確認してみましょう。 -- $ID$ -- TPC-H/TPC-R Product Type Profit Me

    データベース負荷テストツールまとめ(3) - SH2の日記
  • ISUCON3 予選を開催しました - 酒日記 はてな支店

    出題担当なのですが正式名称が ISUCON3 なのか ISUCON 2013 なのか未だによく分かってない今日この頃です。 それはともかくとして、200名以上の皆様に参加していただいて ISUCON の予選を盛況のうちになんとか終えることができました。 スコアの算出方法が公表されていなかったり 基的に静的ファイル以外の1リクエストが1点 (ただしPOST→リダイレクト→GETは1点)、静的ファイルは0.02点、css扱いで で読まれるのは 0点、でした Failについては合計3まで減点なし、それ以上は (Fails - 3)^2 * % を減点するので合計 Fails 13 で (10*10)% = 100% 減点でスコア0になります 想定していない /recent/* 荒稼ぎポイントがあったり 初日の競技中に気がついて、何チームぐらいここで稼いでくるかと思いましたがやはり60チーム以上

  • 続・Casper.JSのススメ - After Coding

    2013-09-12 続・Casper.JSのススメ 前回;Casper.JSのススメCasperJSで受け入れテスト書くかって話になったので、チームの皆さんにおはなしした。 ↓少し削っているのでちぐはぐな気がする。 Casper導入資料 from Yuuki Tan-nai あとは口頭での説明だったので、その内容をざっくりまとめる。①casperjsコマンド $ casperjs test test/suite/ --direct --log-level=debug --fail-fast --pre=test/common/casper_pre.coffee --includes=test/common/casper_inc.coffee --xunit=log.xml testサブコマンドが必要。オプションは以下のとおり。 --pre: 全ファイルの実行前に一度だけ実行されるスク

  • Vagrant で bridged を使いたいときは順序に要注意 - 書き置き。

    vagrant で構築した環境でスマートフォン向けのサービスを作りたいのに、 hostonly ネットワークしか作成できなくて、同じネットワーク上にいる iPhoneから接続できなくて困ってた。 いろいろ調べた結果、困ってる人はたくさんいるようだったけど日語情報はひとつも見つけられなかった。 Vagrantfile Before # Assign this VM to a host-only network IP, allowing you to access it # via the IP. Host-only networks can talk to the host machine as well as # any other machines on the same network, but cannot be accessed (through this # network i

    Vagrant で bridged を使いたいときは順序に要注意 - 書き置き。
  • Harriet ー テストのときつかうにデーモンの取扱を簡単にするためのフレームワーク - tokuhirom's blog

    https://github.com/tokuhirom/Harriet/https://metacpan.org/module/TOKUHIROM/Harriet-0.01/lib/Harriet.pmテストのときにつかう mysqld, memcached, stf, groonga あたりのデーモンを、.t 単位で起動していては遅くてかなわない。かといって、あらかじめ起動させておくというのも。。 というわけで prove のプラグインとしてよしなにする、みたいなのをがんばってかく、というような試みがおこなわれてきたわけですが、どうもめんどくさい。 なんか適当にやったらうまくうごく、っていうかんじのカジュアルなツールがほしいな、なんておもったりするわけですよ そこで、Harriet ってのをつくってみました。 なんかこう、t/harriet/mysqld.pl っていうファイル名でこん

  • Auto Layout(iOS 7対応) その1 | Cyber Passion for iOS

    iOS 7になってから、全画面表示が基になりました。またXcode 5になってから、Interface Builder(以下IB)のAuto Layout関連のUIもガラリと変わりました。 今回は数回にわたってiOS 7 + Xcode 5 + Auto Layoutについて、解説していきたいと思います。 ごめんなさい、UIRectEdgeNoneを使った方法を書いてましたが、1ViewController + 1Storyboardの組み合わせの方が良いと思いましたので、記事を訂正しました。 2013/11/3 またiOS 7でViewが全画面になったことに関する理解がまだの人は、こちらの記事から先に読んだほうがよいかもしれません。 iOS 7の全画面対応 上記の記事に書いたように、 全画面対応はStoryboard + Auto Layoutで行う 1画面は1ViewControll

    Auto Layout(iOS 7対応) その1 | Cyber Passion for iOS