タグ

ブックマーク / wazanova.jp (7)

  • Goと大規模分散システムの相性 - ワザノバ | wazanova

    Googleで分散システムの開発をてがけ、現在はソーシャルメディア mttr.toを立上げ中のBen Sigelmanが、Goを分散システムの開発に利用する場合の、メリットおよびチャレンジについて講演しています。 分散システムのあるべき姿 分散システムの勘所は、最上位ビットをパフォーマンス的にも構造的にもうまく扱うことができるかというのがポイント。その効果が一番大きい。スループットの改善のような詳細は、自分もGoogleでそれに取組んだけれども、9ヶ月くらいたつとハードウェアの性能で解決される可能性が高い。また、構造的にというのは、なるべく小さなコンポーネントを組み合わせたシステムにできるかという意味。 Goのよいところは、 両方、とくに後者によい。Railsだとアプリを複数個用意して並列処理するのは大変だったけど、Goだとシンプルにできて、標準ライブラリも読みやすいとかなどなど。パフォー

  • 急成長するサービスのサーバインフラ - ワザノバ | wazanova

    サービスを一から立ち上げる場合も、成功したサービスが更に拡大する場合も、いずれもスケールさせるのは一苦労ですが、今回は、Dropboxの初期の取組みと、Facebookの最近の動きを取り上げてみます。 まずは、DropboxのKevin Modzelewskiが、創業当初のサーバインフラの進化を時系列で紹介している講演から。 Dropboxのデータの特徴 書込みボリューム大: 通常のサービスはコンテンツをつくるより消費するボリュームが圧倒的に多いので、read/write比率が、100:1とか1000:1であるのが典型だが、Dropboxはユーザの全端末がコピーを持つ構造なので、その比率が約1:1になる。つまり、同じサーバに対して、他社よりも100倍、1000倍書込みの役割が大きくなる構造。 ACID特性の要件をしっかり守る必要がある。ユーザの情報を預かるのだから、原子性について、「大きな

  • 分散環境でどうなるかはテストしてみないとわからない - ワザノバ | wazanova

    https://www.youtube.com/watch?v=QdkS6ZjeR7Q 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約2時間前 Kyle Kingsburyは、「クラウドにおいてもネットワークパーティションは起こりうるゆえに、DBなどのプロダクトはマニュアルやマーケティング資料で説明している仕様 & パフォーマンスを、分散環境では必ずしもだせない。」というテーマでの検証結果を公表しているブログのシリーズと、ストレス下での計測ツールJepsenで知られています。ここ1年半ほどで、 PostgreSQL / Redis / MongoDB / Riak / Zookeeper / NuoDB / Kafka / Cassandra / Redis / RabbitMQ / etcd / Consu

  • レストランのパフォーマンスをRで解析する - ワザノバ | wazanova

    http://perfdynamics.blogspot.com/2014/07/restaurant-performance-sunk-by-selfies.html 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約5時間前 Performance Dynamicsのブログで、PDQ(Pretty Damn Quick)モデルを利用して、Rでレストランのパフォーマンスを試算した話を紹介しています。 データの元はこちらの記事。NYの老舗レストランが、10年前と比較して、1日当たり同じ数の顧客を対応しているのに、サービスが遅いとのクレームが増えているため、店内の監視カメラで録画したスタッフの動きを比較して分析。その結果、店内の無料Wifiのつなぎ方の問い合わせやつながりづらいというクレームへの対応、顧客がスマホで

    koemu
    koemu 2014/07/22
  • エンジニアチームでブランドを築く - ワザノバ | wazanova

    https://medium.com/on-startups/1feed0155749 2 comments | 1 point | by WazanovaNews ■ comment by Jshiike | 約5時間前 Nis Fromeのこのブログは示唆に富むものでした。 NisのチームがNew Yorkでハッカソンに参加したときのこと。慣れないテクノロジーに苦闘して、進捗が見えなくなってきた深夜3時、メール配信サービスのSendGridのエンジニア達が会場にやってきて、参加者に声をかけながら部屋をまわりはじめる。SendGridのDeveloper EvangelistであるMike Swiftから、「何か手伝える?」と言われた際に、SendGridのAPIを使ってるわけではなかったので、一旦は断る。しかし、彼は矢継ぎ早に質問を重ねてきて、Nisのチームがどのようなテクノロジー

  • Githubの組織が成長する過程で変えたことと変えなかったこと - ワザノバ | wazanova

    GithubのZach Holmanが語るGithubの組織戦略です。まず最初に、 Step #1: ロックスターエンジニアを雇う Step #2: ものすごく透明性のある経営をする Step #3: ブログ/ソーシャルメディアなどでテクノノロジーについて発信する Step #4: カンファレンスで会社について話す Step #5: カネに余裕ができる Step #6: 社員を大勢雇う Step #7: 会社のことを話さなくなる Step #8: コミュニティを無視する Step #9: 創業者が株を売って儲ける Step #10: 別の会社をはじめる という事例を挙げて、Githubは組織が成長する中で、このようなパターンに陥らないように、コミュニケーション及び仕事の進め方をどのように進化させてきたかについて紹介してます。 Dunbar's numberとしてよく知られるとおり、人間が良

  • Twilio: HTTPリクエストを磨く - ワザノバ | wazanova.jp

    https://www.twilio.com/engineering/2013/11/04/http-client スマホアプリ <-> サーバ間や、サーバ <-> 3rd partyツール間でHTTPリクエストを送ることは一般化してますが、その性能をあげるための工夫を、Twilioがエンジニアブログで紹介してます。 サーバの様々なHTTPポートに接続し、エラーパターンをシミュレートして、クライアント側が適切にハンドリングしているかどうか確認するライブラリが、Githubで公開されてます。 1) コネクションエラー サーバが遠隔にあるマシンに接続できない場合、HTTPリクエストが完了しないのでConnectionErrorが返ってくるだけで具体的な理由はわからない。 ここでまずできることは、タイムアウトの設定。connect () は通常即座に完了するか、失敗するかのどちらか。Twilio

  • 1