タグ

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

  • Yehuda Katzという生き方とインディーWeb - ワザノバ | wazanova

    https://frontsidethepodcast.simplecast.fm/16 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 41分前 昨日のエントリーでも名前のでてきたYehuda Katzですが、Rails / Ember.js / jQuery / W3C Technical Architecture Group (TAG) / TC39-ECMAScriptなどで活躍し、今回はRustのコアチームに参加することが発表されてます。Tom Dale曰く「インターネットの半分くらい書いてる感じだから。[1] 」という勢いがあります。Yehudaの仕事振りやプロジェクト運営における考えは、オープンソースという視点での発言ですが、企業におけるプロジェクトの進め方や今後の働き方のスタイルがどう変わるか、変

    mirakui
    mirakui 2014/12/25
  • Twitterのキャッシュを支えるRedis - ワザノバ | wazanova

    https://www.youtube.com/watch?v=rP9EKvWt0zo 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 TwitterのYao Yuが、大規模サービスのキャッシュにおいてRedisを活用する取組みについて紹介しています。 1) Redisを採用している理由 キャッシュだけで、ストレージとしては利用していない。 主なところでは、Twitterのタイムラインで利用している。ホーム画面であれ、ユーザ画面であれ、タイムラインはTweetのインデックスなので、key/valueストア型のRedisを利用するケースとして最適。 以前はmemcachedを使っていたが、問題になったのは、タイムラインでおきるread/writeは、(ユーザが閲覧している範囲に追加反映するということなの

    mirakui
    mirakui 2014/09/21
  • Pinterest: ユーザに影響のでないデプロイ方式への改善 - ワザノバ | wazanova

    Pinterestは、サーバの一部を番から外し順次アップデートするという方式でデプロイをしています。それが起因してページ全体を無駄にリロードさせている状況を改善するための取り組みを紹介しています。 背景 Pinterestのサイトでは、JavaScript + XHRにより、ページ内で必要なコンテンツだけが、クリックされた際に適宜更新されるようになっている。 ユーザが最初にPinterestのサイトにアクセスすると、サーバはブラウザに対しJavaScriptのバンドルを読込ませ、そのバンドルがサーバにあるソフトウェアのバージョンとの一致を確認する仕組み。 デプロイする際は、サーバの10%をオフラインにし、アップデート完了後、番に戻すという作業を繰り返している。つまり、新しいバージョンのソフトを載せたサーバと古いものを載せたサーバが混在している状態になる。(Varnishの相対するバージ

  • Rubyのパフォーマンス計測ツール - ワザノバ | wazanova

    https://www.youtube.com/watch?v=cOaVIeX6qGg 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 42分前 Aaron Quintは、オンライン/オフラインで招待状やお祝いのカードを送るサービスであるPaperless PostのCTOです。GoRuCo 2014で、お薦めのRubyアプリのパフォーマンス計測ツールを紹介してくれてます。 評価の基準としては、 Specificity (Sp): アウトプットの内容がどれだけ詳細か。 Impact (Im): Probe Effectのレベル。計測が意図しないシステムの振る舞いにつながる可能性のある影響度合い。この数値が大きいと番環境では使えない。 Difficulty of Operator Use (Op): ツールのセッ

  • Airbnb: バックエンド間の通信を支えるSmartStackをオープンソースで提供 - ワザノバ | wazanova.jp

    http://nerds.airbnb.com/smartstack-service-discovery-cloud/ Airbnbが同社のエンジニアブログで、Zookeeperとともに、クラウド分散環境におけるバックエンド間の設定変更の自動化を支えているSmartStackを紹介しています。 1) 他の選択肢の検討 DNS: クライアントのライブラリからDNSをネイティブに使う方法だと、プッシュができないことと情報伝播の遅延(キャッシュによって更に悪化)がネックになる。 中央でのロードバランシング: バックエンド間の通信をロードバランサーで集中管理するかたちだと、ロードバランサー自体もしくはルーティングレイヤの障害が大きなリスクとなる。また、F5などの一般的なハードウェアはクラウドでは使えない。AWSのElastic Load Balancingはpublic IPを介さなくてはいけない

    mirakui
    mirakui 2014/03/22
  • Facebook: MySQL Pool Scannerでの徹底した自動化 - ワザノバ | wazanova.jp

    https://www.facebook.com/notes/facebook-engineering/under-the-hood-mysql-pool-scanner-mps/10151750529723920 Facebookがエンジニアブログで、MySQLの運用を自動化している事例を紹介しています。このレベルまでくると、意思をもった大規模なロボット群みたいで、すごいですね。前半はマスタ/スレーブの基的な自動化の話ですが、後半ではオペレーションの自動化ロジックをどのように自動化して増やすかという手法まで言及してます。 FacebookのMySQL DBクラスタは、2つの大陸にまたがる複数のデータセンタにある数千台のサーバで構成されている。通常、DBアドミンが担当するルーティーンワークは、MySQL Pool Scanner (MPS) で自動化されている。 1) DBノードを詳しく

    mirakui
    mirakui 2014/03/14
  • Amazonの社風とSOA - ワザノバ | wazanova

    https://plus.google.com/app/basic/stream/z12ld3fwhlnexv5b004cjv0oapmuflzrezc0k 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約5時間前 Steve Yegge (Amazon -> Google)が、Googleのプラットフォーム戦略が遅れていることを指摘した、2年前のかなり長いエントリーですが、その中で触れているAmazon時代のエピソードが興味深かったです。 Jeff Bezosは2002年の当時からプラットフォーム戦略の重要性をよく理解していたが、とにかくマイクロマネッジメントで強制力のある経営者だったとして、サービス指向アーキテクチャ(SOA)の採用を指示したときのエピソードを取り上げてます。 そこでJeffは命令をだした。

    mirakui
    mirakui 2014/03/10
  • Etsy: モバイルアプリの継続的インテグレーション - ワザノバ | wazanova

    http://codeascraft.com/2014/02/28/etsys-journey-to-continuous-integration-for-mobile-apps/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約7時間前 EtsyのNassim Kammahが同社のモバイルアプリのCIシステムを紹介しています。 Build CIマシンはMac Mini + Chef 例えばiOSアプリのビルドはコマンドラインで、xcodebuild -scheme "Etsy" archive パッケージのインストールはhomebrew cookbook ruby環境の管理はrbenv cookbook Xcode(一部手動のテップあり。)/ Git / Androidのパッケージの95%をCIマシンでの

    mirakui
    mirakui 2014/03/02
  • Railsのテストを高速にする - ワザノバ | wazanova

    http://www.youtube.com/watch?v=bNn6M2vqxHE 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約2時間前 「Airbnbのテスト:巻き込み力のある人がポジティブな変化をもたらす」でLou Kosakが、依存関係のないユニットテストを実現するのに参考にしたというCorey HainesのGoGaRuCo 2011での講演です。 一番読込みに時間のかかる3rd partyエンジン = Railsとの関係を切り離す。 1 class ShoppingCart < ActiveRecord::Base 2 has_many :shopping_cart_products, dependent: :destroy 3 has_many :products, :through => :

    mirakui
    mirakui 2014/03/01
  • YouTube & Go言語: MySQLをパワーアップするVitess - ワザノバ | wazanova

    http://www.youtube.com/watch?v=qATTTSg6zXk 1 comment | 1 point | by WazanovaNews ■ comment by Jshiike | 約3時間前 YouTubeのシステムアーキテクトであるSugu SououmaraneのFOSDEM 2014での講演です。スライドはこちらからダウンロードできます。 1) Vitessとは Vitessは大規模な番環境でMySQL DBを効率的に利用するためのオープンソースプロジェクトです。概要はプロジェクトゴールのページ にまとまってます。 MySQLは機能が豊富だがスケールさせるときは苦労する。一方、NoSQLはスケーラビリティには問題がないが、アプリケーションが複雑になるとできることに限界があるのがネックになる。セカンダリインデックス、joinsなどがサポートされていない。

    mirakui
    mirakui 2014/02/26
  • 給与をあげるベストな仕組みの解がない - ワザノバ | wazanova

    https://saastr.quora.com/By-The-Time-You-Give-Them-a-Raise-They%E2%80%99re-Already-Out-The-Door 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約2時間前 1) 意義のあるチャレンジングな仕事をすること、2) 刺激をもらえる優秀な仲間と仕事ができることは、3) 高い給与をもらえることよりも優先度が高いという意見に100%賛同していますが、今日は1) 2)のことはさておき、3) の給与、特に昇給の話しをしたいと思います。 原文 は、EchoSignのFounderであったJason M. Lemkinが、優秀なメンバに会社に残ってもらうために心がけていたことを紹介しています。 #1. By The Time You Gi

    mirakui
    mirakui 2014/02/19
    “Netflixのように「当該職種の業界最高給与をNetflixの業績に関係なく保証する。」”
  • NTPベースのDDoS攻撃を理解する - ワザノバ | wazanova

    http://blog.cloudflare.com/understanding-and-mitigating-ntp-based-ddos-attacks1 comment | 0 points年初にLeague of Legends、EA.comのサーバがダウンする原因となったNTPベースのDDoS攻撃について、CoudFalreがエンジニアブログでまとめています。 DNS Reflection is so 2013 DNSベースのDDoS攻撃とNTPベースの攻撃は似ている。プロトコルの違いだけ。攻撃者が、被害者となる相手のIPアドレスを偽ってパケットを送付。事情を知らないサーバは、リクエストに応えて、被害者のIPアドレスにデータを返すという仕組み。実際の攻撃者のソースは隠されていて、トレースするのが難しい。もし大量のサーバが利用されると、相当のボリュームのパケットが、世界中から被害者

    mirakui
    mirakui 2014/01/14
  • 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

    mirakui
    mirakui 2013/11/05
  • MongoDBの$150M調達で色々考えさせられたこと - ワザノバ | wazanova.jp

    http://www.bloomberg.com/news/2013-10-04/mongodb-becomes-king-of-nyc-startups-with-1-2-billion-valuation.html 10genが社名もMongoDBに変えてたことは知りませんでした。さて、同社が$1.2BのValuation (企業価値)で$150M調達ということですが、昨年、Githubが$750Mのvaluationで$100M調達したのに続き、オープンソースがベースになってる会社で大型資金調達が成功する事例が続いてますね。  MongoDBはHacker Newsで取り上げられる度に驚くほどネガティブコメントを集めてるのですが、今回も例にもれず、この資金調達のニュースには219件のコメントがつき、トップに掲載されてる(おそらく掲載順ロジックはUpvoteの数なので、一番人気のコメン

    mirakui
    mirakui 2013/10/08
  • 1