タグ

APIに関するsyossanのブックマーク (2)

  • pvpool〜メルカリの商品閲覧数カウントアップの裏側〜 | メルカリエンジニアリング

    メルカリでは出品されている商品の閲覧数を「出品した商品」の一覧や「いいね!した商品」の一覧画面から見ることができます。以下は「いいね!した商品」の一覧画面です。(開発版アプリの画面になります) 赤い枠で囲まれている部分がそれぞれの商品の閲覧数になります。今回紹介する閲覧数のカウントアップのバックエンドはGoで開発されています。 データベース上の商品閲覧数のカウントアップ メルカリでは日々大量のリクエストを処理していますが、そういった中でもデータベースへのアクセスはINSERTやUPDATE等の書き込み処理よりもSELECTによる読み込み処理が圧倒的多数を占めます。(メルカリでは、データベースには主にMySQLを利用していますが、サービスやリージョンによってはGCPが提供しているCloud DatastoreやCloud Spannerを利用している箇所もあります) 商品が閲覧される時に実行

    pvpool〜メルカリの商品閲覧数カウントアップの裏側〜 | メルカリエンジニアリング
    syossan
    syossan 2018/02/26
  • RESTの次のパラダイムはGraphQLか - Qiita

    のようなクエリをクライアントが発行することになります。 なぜこのようなシステムが必要かの説明の前に、RESTの問題点を挙げてみます。 RESTの問題点 Server Side Renderingの場合 コントローラでEager Loading等のクエリ最適化を意識しないといけない ビューを実装するときも結局裏側でどのようなクエリが発生するかを意識しないといけない Client Side Renderingの場合 コンポーネント毎に必要な情報をリクエストする場合、AJAXリクエストを何度も発行する必要がある 提供されているAPIが不十分だと、クライアント側でテーブル結合が必要となる 共通する問題 クライアント毎にちょっとずつ違うAPIを用意してメンテしないといけない 端末に応じて異なるサイズの画像を返す ネイティブアプリとウェブアプリで異なる結果を返す 等など APIに「暗黙的な契約」が発生

    RESTの次のパラダイムはGraphQLか - Qiita
  • 1