タグ

ブックマーク / techblog.kayac.com (76)

  • nginxのHttpLimitReqModuleを試してみる - KAYAC Engineers' Blog

    ※この記事はnginxの現時点での最新stable 0.8.54を使っています。 2回目の投稿になります、sugyanです こんにちは。 最近、jsdo.itでちょっとしたAPIを作ってみているのですが、連続で大量のリクエストが来るのはちょっと困るので、防御策としてnginxのリクエスト制御モジュール"HttpLimitReqModule"を導入してみることにしました。 http://wiki.nginx.org/HttpLimitReqModule 何も設定しない場合 まずは普通のnginx設定でhttpサーバを立ち上げて、動かしてみます。 worker_processes 1; error_log logs/error.log info; events { worker_connections 256; } http { log_format test '$remote_addr -

    nginxのHttpLimitReqModuleを試してみる - KAYAC Engineers' Blog
    tknzk
    tknzk 2011/04/24
  • instagramAPI公開!OAuth触りました - KAYAC Engineers' Blog

    ついに21歳になりました!itaniです。 みなさん!! つい先日、iPhoneで気軽に写真を共有できるサービス「instagram」のAPIが一般公開されましたね。 というわけで、さっそくOAuthを触ってみたので自分なりにまとめてみました。 なにができるの? instagramAPIを使えば以下のようなことが簡単にできます。 ユーザー情報を取得 ユーザーの写真を取得 写真に対してコメントやいいねを投稿する フォローしている人、フォローされている人を取得 上で挙げたものはほんの一例です。 まだ調査不足ですが、リアルタイム系のAPIも用意されています。面白そうですよね。 OAuthってなんだ!? 最近twitterやfacebookでよく聞く『OAuth認証』という言葉。 果たしてこれはなんなのか。お願いしますgoogle先生。 OAuth (オー オース) は、ブレイン・クックとクリス・

    instagramAPI公開!OAuth触りました - KAYAC Engineers' Blog
  • node.jsつかいました - KAYAC Engineers' Blog

    こん**は、taiyohです。 さて、先日のsugyanのエントリ「node.jsはじめました」にて 日2/25(金) 20:00から行われる、弊社のオンライン説明会もリアルタイム技術を駆使しています! 新卒採用企画 オンライン会社説明会 2012 | 面白法人カヤック ぜひ見に来てみて下さい! とありましたが、この説明会で僕はnode.jsを使ったリアルタイムシステムを担当し、説明会の盛り上げに携わっていました。 【何がリアルタイムか】 このイベントでは、講演をustreamにて配信しました。この時、閲覧者はこちらが用意したいくつかのアクションを実行することができます。この情報は自前のストリーミングサーバを経由し、同じようにページを閲覧している別の閲覧者のflashで表示されます。弊社デザイナの林(@barimi)の登場時、スゴイ数のアクションが送信され、かなりわいわいやっていた様子が

    node.jsつかいました - KAYAC Engineers' Blog
  • node.jsはじめました - KAYAC Engineers' Blog

    はじめまして! 技術部2年目のsugyanと申します。 初めてtech.kayac.comに投稿します! 先日自分のブログで書いた記事が思いのほか好評だったので、これについてもう少し詳しく書いてみようと思います。 node.js+socket.ioを使ったライブコーディングwebアプリを作ってる - すぎゃーんメモ node.jsについて 最近話題の、サーバーサイドJavaScript「node.js」。みなさん触ってみてますか? 「Google V8 JavaScript Engineによるイベント駆動の…」と、どんなものかは知っているものの実際には触っていない、という人がまだ多いような気がします。 僕も昨年の12月くらいにようやく触ってみた という程度なのですが、意外にお手軽で簡単に使えるし面白いので、 「JavaScriptはまだニガテで ><」というヒトでも安心して始められるのでは

  • FacebookのSDKで、自分のアルバムに写真を投稿し、タグ付けする方法 - KAYAC Engineers' Blog

    映画「ソーシャルネットワーク」を見て創作意欲が湧き、コードが書きたくなったwatanabeです。 今年はFacebook元年と言われており、Facebookを利用した販促や広告、キャンペーンなどが増えてくるでしょう。 その中でよく使われそうな「アルバムへの投稿」をピックアップして、実装してみました。 今回はFacebookのPHPのSDKを利用します。 https://github.com/facebook/php-sdk/ SDKならソーシャルグラフAPIを使うと便利です。 Graph API Reference 折角なので、FQLも使ってみましょう。 http://developers.facebook.com/docs/reference/fql/ 早速、日曜大工的にコードを書いてみたので、見てみましょう。 クラス <?php include('lib/facebook.php');

    FacebookのSDKで、自分のアルバムに写真を投稿し、タグ付けする方法 - KAYAC Engineers' Blog
  • vimプラグインでよりよいコーディングを - KAYAC Engineers' Blog

    こりなくvimプラグインの紹介をします。北原(@soh335)です。 たかが、エディタですがプログラムを書く際には一番触っている道具です。イチローも道具は大切にすることが重要と言ってますし、メンテナンスしながら良い状態にしておきたいですね。 今回はvimプラグインの管理、プログラム書く自体には関係ないけど便利なプラグイン、実際にエディタを使っている際に便利なプラグインの紹介をします。 vimプラグインの管理 vim-pathogen http://www.vim.org/scripts/script.php?script_id=2332 vimプラグインは、windows環境はで$HOME/vimfiles/、mac等では$HOME/.vimのディレクトリの下にインストールしていきますが様々なプラグインを一つのディレクトリにいれると のようになり例えばこのプラグインが更新されたのでアップデ

    vimプラグインでよりよいコーディングを - KAYAC Engineers' Blog
    tknzk
    tknzk 2010/10/31
  • symfony1.4 - action内であれこれ - - KAYAC Engineers' Blog

    お久しぶりです!夏季休暇真っ最中のitani(@w650)です。 入社して5か月経ちますが、ひたすらsymfonyを触り続けています。 今回は、日々symfonyを触り続けてきた中で学んだ、action内でできることをいくつか紹介します。 1. metaタグやcssなどの指定 symfonyでmetaタグの指定やcssの読み込み等をしようとしたとき、真っ先に思いつくのはview.ymlだと思います。 しかし、symfonyのresponseオブジェクトを使えばview.ymlで設定するようなことがaction内でできます。 まずは、responseオブジェクトを取得します。 これはsfComponentの中にすでにメソッドが用意されています。 $response = $this->getResponse(); このメソッドはsymfonyのsfWebResponseオブジェクトを取得します

    symfony1.4 - action内であれこれ - - KAYAC Engineers' Blog
  • symfonyとHyperEstraierを使って全文検索してみよう - KAYAC Engineers' Blog

    はじめまして。インターンのsato(@hilotter)です。 突然ですが、みなさんは「全文検索エンジン」って使ったことがありますか? 「全文検索エンジン」と聞くと「何だか難しそうだな」と思われる方もいらっしゃると思います。 僕はまさにそうでした。 そんな全文検索エンジン初心者の僕のもとに、今回、HyperEstraierという全文検索エンジンを使ってキーワード検索機能を実装する機会がありました。 色々調べてみたのですがsymfonyとHyperEstraierを使って検索を行う記事がなかったのでご紹介させていただきます。 間違い等ありましたらご指摘いただければ幸いです。 今回はサンプルとして簡単なキーワード検索機能を作ってみたいと思います。 なお、使用したシステムのバージョンは symfony1.0(ORMはPropel) HyperEstraier1.4.13 となっています。 目次

    symfonyとHyperEstraierを使って全文検索してみよう - KAYAC Engineers' Blog
  • symfony で Web API を実装するときのポイントいくつか - KAYAC Engineers' Blog

    最近はまんぐうん家にいます。 nagata (@handlename) です。 FlashやJSと連携する際には、APIを実装することになりますが、 今回は「こんなことやると実装が楽になるよ!」という小技をいくつか紹介します。 ※記事ではレスポンスの形式としてJSONを使った場合を例として用いています。 ※アプリ名を「api」、モジュール名を「kayac」として説明します。 symfonyのバージョンは1.4です。 APIのレスポンスを返すための準備 symfonyのレスポンス、そのままではレイアウトが適用されてしまいます。 HTML形式で表示されるわけですね。 APIのレスポンスとして使う場合、こんなんじゃやってられません。 view.yml でレスポンスの形式を設定してしまいましょう。 apps/api/config/view.yml has_layoutをfalseにすることによっ

    symfony で Web API を実装するときのポイントいくつか - KAYAC Engineers' Blog
  • .emacs分割のすゝめ - KAYAC Engineers' Blog

    最近ロードバイクを買いました。nagata(@handlename)です。 前回、安易にも無防備な.emacsを晒したら、我らがtypester先生に 「.emacsに全部書くのは小学生までだよね〜」(大幅に誇張あり) と言われてしまったので、早速.emacsを分割してみたいと思います! (設定ファイル群をgithubにあげました) なんで分割するの? そもそもなんで分割するんでしょうか? メリットとしては、こんなものがあります。 見通しがよくなる 環境依存の設定を切り分けられる 一部のファイルにエラーがあっても他のファイルの設定は適用される それぞれ個別にbyte compileできる 一部のエラーが全体に影響しないっていうのはいいですね。とっても。 では、実際に分割する方法を見ていきましょう。 分割してみよう 分割した設定ファイルを読み込むために、IMAKADOさん謹製のinit-lo

    .emacs分割のすゝめ - KAYAC Engineers' Blog
    tknzk
    tknzk 2010/08/15
  • 8行でjQueryのデバッグが楽になるjQuery.pの紹介 - KAYAC Engineers' Blog

    週末はオレ標準JavaScript勉強会のUstreamを眺めてました。ago(@kyo_ago)です。 以前jQuery使いが陥りやすい罠の中で「4 何でも一行で書こうとする」という点を上げたのですが、以下のようなmethodを定義することでmethod chainのデバッグが楽になるので紹介したいと思います。 $.fn.p = function (id) { var arg = [this]; if (id) arg.unshift(id); if (!window.console) return this; var c = window.console || { 'log' : function () {} }; (c.debug || c.log).apply(c, arg); return this; }; 具体的な使い方ですが、以下のように確認したいmethodの後に.p()を

    8行でjQueryのデバッグが楽になるjQuery.pの紹介 - KAYAC Engineers' Blog
    tknzk
    tknzk 2010/08/15
  • Firebugの意外と知られていない機能紹介(プログラマ向け) - KAYAC Engineers' Blog

    羊毛布団を洗濯機にかけられないことを知りました。ago(@kyo_ago)です。 意外と知られていない機能が多い!?Firebugの使い方を見て、プログラマ向けも欲しくなったので書いてみました。 1. ショートカット一覧 以下のページでFirebugのショートカット一覧が公開されています。 http://getfirebug.com/wiki/index.php/Keyboard_and_Mouse_Shortcuts 取り合えず以下の二つだけでも覚えておくと効率的かもしれません。 F12でFirebugの有効、無効の切り替え 広いコマンドラインモード時にCtrl+Enterでコードを実行 また、以下のメニューからショートカットの変更も行えるので、他の拡張等とショートカットがかぶった場合でも別のキーで使用することが出来ます。 2. Firefox体のツールバーに「要素を調査」ボタン Fi

    Firebugの意外と知られていない機能紹介(プログラマ向け) - KAYAC Engineers' Blog
  • 別なappのroutingやpartialを読み込めるsfAppChange - KAYAC Engineers' Blog

    はじめまして。KAYAC技術部に留学中のshinoutです。 今日はsymfony1.4系で動作するプラグイン(もどき)、sfAppChangeについて紹介します。 symfonyでは異なるapp同士での共有はmodelのみに限られており、 たとえば 「backend処理だけど、front側のURLを取得したい」といったことや 「このパーツは別のappでも使いたい」といったことがあったと思います。 そんな時に便利になるのが今回作成したこのsfAppChangeです。 sfAppChangeでできること 別なappのroutingが使えて、URLを生成できる。 別なappのpartialが使える。 ダウンロード、インストール ダウンロードは以下の2つのファイルをコピペしてください。 AppChange.class.php <?php class AppChange{ private $app

    別なappのroutingやpartialを読み込めるsfAppChange - KAYAC Engineers' Blog
  • 初心者による初心者のためのdoctrine : tech.kayac.com - KAYAC engineers' blog

    初めまして。社内にいるほとんどのプログラマーがpropelの中いきなりdoctrineを学んだピチピチ平成生まれ(20歳)、新卒のitaniです。 symfonyを学んだときに、こんな記事があったらいいなぁと思ったので書くことにしました。 というわけで、symfonyを触ってまだ間もない僕が、今回はdoctrineを使ってDBの基操作を紹介します。 ※symfonyのversionは1.4を使用します。 DBの準備 まずはDBの準備をします。 symfonyを使ってDBを作るにはまずスキーマを作らなければいけません。 スキーマを作る方法は2つあります。 1、自分でschema.ymlを書く config/doctrine/schema.ymlにテーブルの構造をYAMLフォーマットで書きます。 //今回使うDBのschema.yml User: columns: name: { type:

    初心者による初心者のためのdoctrine : tech.kayac.com - KAYAC engineers' blog
  • 今更聞けないcanvasの基礎の基礎 - KAYAC Engineers' Blog

    はじめまして。新入りのnagataです。 入社式で自転車乗ってた野郎です。 先輩方から「ブログ、書いてね!」とのお達しがあったので、 日報で書いたらウケがよさげだったcanvasのことについて書いてみようと思います。 ※各種サンプルはMac上のSafari4.05、Firefox3.6.3、Chrome5.0で動作を確認しています。 canvasってなんぞ? 図を書き込めるhtml要素です。 OpenGLやDirectXのような面倒な設定を書くことなく、 手軽にグラフィック描画が行えます。 ブラウザだけでローカルアプリケーションのような グラフィカル(かつ動的な)表現が行えるわけです。 とりあえずつかってみる 早速何か描いてみましょう。 こういうことは実践あるのみです。 処理にはJavascriptを使います。 canvasに描画を行うときは、canvas要素からcontextを取得して、

    今更聞けないcanvasの基礎の基礎 - KAYAC Engineers' Blog
    tknzk
    tknzk 2010/04/28
  • AmazonのMySQLホスティングサービス RDSの利点と欠点 - KAYAC Engineers' Blog

    こないだ初めてスノボ体験しました。agoです。 弊社ではAmazon Web サービスを利用してmixi、モバゲーアプリを提供していますが、その中でも今日はRDS(MySQLホスティングサービス)の利点と欠点を紹介したいと思います。 利点 設定が容易 my.cnfを設定せずとも各instance classに合わせて各種パフォーマンス項目が設定済みのため、設定を変更せずとも使用開始時からある程度の性能を出すことが可能です。 AWSSecurity Groupsと連携できる EC2 instanceはサーバ負荷によって台数が増減するため、通常のIP制限では台数を変更するたびに制限するIPを変更する必要があります。 これに関しては通常のEC2 instanceでMySQLサーバを立てるときにも専用のSecurity Groupを用意することで連携は可能ですが、RDSの場合、RDSを使用してい

    AmazonのMySQLホスティングサービス RDSの利点と欠点 - KAYAC Engineers' Blog
  • mixi app framework mist.jsを開発しました : tech.kayac.com - KAYAC engineers' blog

    KAYACモバゲー参入に伴いAmazon Web Serviceと格闘中のagoです。 弊社ではPC版mixiアプリもいくつか作成しておりますが、今回そこで得られたノウハウを集めてmixiアプリ フレームワークを公開しました。 ソースコード github opensocialに関しては過去にjquery.opensocial-simple.jsを公開しておりますが、社内からも「JSなしでmixi appを作りたい」と言う要望もあり、今回frameworkの形で公開いたしました。 コンセプト JSを書かなくてもそこそこリッチなmixi appが作れるフレームワーク 機能 OWNER、VIEWER情報の取得 マイミク情報の取得 指定mixi IDユーザ情報の取得 画面遷移の制御 表示領域の自動調整 「日記に書く」リンクの自動設定 アクティビティの発行 「友達を誘う」機能の追加 詳細はgithu

    mixi app framework mist.jsを開発しました : tech.kayac.com - KAYAC engineers' blog
  • jQuery1.4の新機能を1.4だけに14個 - KAYAC engineers' blog

    時が経つのは早いもので、ぼーとしてたらもう1月も終わりそうですね。外村です。 先日リリースされたjQuery1.4で新しく追加されたメソッドや新しい使い方ができるようになった機能を全部ではないですがいくつか紹介します。以下に変更点が全て掲載されているのでそちらも参照するといいと思います。 Version 1.4 ? jQuery API 新規で追加されたメソッド 1. nextUntil()、prevUntil()、parentsUntil() 指定したセレクタまでの要素を返します。以下の例ではitem3とitem4の後ろにテキストが追加されます。 <ul> <li id="item1">item1</li> <li id="item2">item2</li> <li id="item3">item3</li> <li id="item4">item4</li> <li id="item5

    jQuery1.4の新機能を1.4だけに14個 - KAYAC engineers' blog
    tknzk
    tknzk 2010/01/26
  • javascriptプログラマのレベル10 : tech.kayac.com - KAYAC engineers' blog

    週末料理をしていて足を切ってしまいました。agoです。 以前Perlは書いていたんですが、その頃以下の記事を読んで非常に感銘を受けました。 Perlプログラマのレベル10 - Perlプログラミング救命病棟より - naoyaのはてなダイアリー 当時あまりコミュニティとのつきあいがなかったので、「自分のスキルの絶対位置」、「次のレベルへ行くために必要なもの」を知ることで非常に安心感を感じた記憶があります。 いま確認したところ、「JavaScriptプログラマのレベル10」はないようなので書いてみました。 Perlプログラマ Schemeプログラマ Rubyプログラマ (家に直接リンクできるURLが無かったため、参照ページへリンクしています) haskellプログラマ 堕落したCプログラマ HTML知識レベル プログラマレベル 企業法務 JavaScriptの業務スキルレベル 判別表 (5

    javascriptプログラマのレベル10 : tech.kayac.com - KAYAC engineers' blog
  • javascriptでカンタン経路検索 : tech.kayac.com - KAYAC engineers' blog

    数え切れないほどのYUREXと一緒に住んでいた渡邊です。 今の時代、ブラウザさえあれば経路情報をカンタンに取得することができます。 今回はGoogleの経路検索APIjavascriptとブラウザを使います。 1. 結果を見る 弊社、自由が丘オフィスから鎌倉社までの経路についての、 APIレスポンスをまとめたものは下記の通りです。 route.json 2. 確認する 出発地名と到着地名を入力して経路検索ボタンを押すと、 Firefoxのconsoleに経路検索結果をまとめたオブジェクトが表示されます。 consoleオブジェクトが無いブラウザの場合は、アラートで簡潔にお知らせします。 ※都道府県名を含めない場合、結果が出ないことがあります。 出発地名: 到着地名: 3. 主要なクラスのリファレンス クラス GDirections - Google Maps API リファレンス クラ

    javascriptでカンタン経路検索 : tech.kayac.com - KAYAC engineers' blog