TECH PLAY

Redis」に関連する技術ブログ

209 件中 196 - 209 件目
こんにちは。iQONのバックエンドエンジニアを担当しているjoeと申します。 最近、iQONのお知らせ機能のDBをMySQLからDynamoDBへ移行しました。 移行する際に発生した問題点である並列処理によるデータ欠損とProvisioning超過の対策を書きます。 間違っているところや改善点があればご指摘ください。よろしくお願い致します。 お知らせ機能とは お知らせ機能とは、facebookで言うところの「◯◯さんがあなたの投稿に「いいね!」といっています」のような、ユーザーに対するアクションがあったこ
こんにちは。auスマートパス開発部の子安です。 最近すっかり寒くなりましたね。冬といえばコタツです。そしてコタツといえば双六。双六 -> サイコロ -> Redis。 ・・・はい、やっとたどり着きました。今回はRedisの話です。 全てのレコードを吐き出したい 今やKVSの代名詞と言えるほど使われているRedisですが、一つ困ったことがあります。 というのも、レコードを全てダンプするようなコマンドがないのです! みなさんどうしていますか? 素直なやり方 最初に思いつくのは、KEYSしてMGET
エンジニアの権守です。今回は、VASILYのWebフロントチームがWeb版iQONのエラーレートを0.1%から0.003%以下まで減少させた際に、行った取り組みについて紹介します。 概要 今回行った取り組みを、ひとことで言うと、テストとデバッグの強化です。 具体的には、次の3つの取り組みを行いました。 APIモックを用いたテストの廃止 テストの高速化 New Relicの活用 各項目について、詳しく説明していきます。 APIモックを用いたテストの廃止 iQONは、iOSアプリ、Androidアプリ、Web
こんにちは、VASILYエンジニアの塩崎です。 今回はiQONを支えているクローラーの並列処理について紹介したいと思います。 並列処理の効率化をする過程でresqueを見限りsidekiqに移行した理由、移行時に書き換えた部分などについてもお話ししたいと思います。 iQONのクローラーの並列処理の仕組み iQONでは毎日数100万点のアイテムのクローリングを行っています。 一度クローリングしたアイテムも毎日1回再クロールし在庫や値下げをiQON内のDBと同期しているため、大量のアイテムを効率良くクロールす
JSON Schemaを作らなければと思っても、つい面倒で先送りにしてしまいがちです。単なるシステム上だけでなく副次的に開発補助の仕組みがあれば、作る意欲もわくでしょう。そこで今回はJSON Schemaファイルを読み込んでAPIドキュメントを生成してくれるソフトウェアを紹介します。 iodocs node.jsとredisの組み合わせで動作します。JSON Schemaファイルを置いておくと、その内容をHTML上に整形して表示してくれます。Webブラウザ上から実際にAPIをコールすることもできるようにな
  「iQON AD」 VASILYでは2014年10月から、インフィード型ネイティブ広告「iQON AD」をiQONのiOSとAndroidアプリ、スマートフォンサイトに向けて配信しています。 国内最大級のファッションアプリ「iQON」、 女性向けネイティブ広告「iQON AD」を開始。 「iQON AD」は、iQON内に配置された独自広告ユニットに対して広告を配信できるサービスになります。本プロジェクトでの開発要素は主に以下の3つです。 1. ネイティブアプリ内の広告ユニット(SDK) 2. 広告管理
SPEEDA 開発チームの緒方です。 最近話題に上ることも多い Docker ですが、UZABASE でもチームによっては積極的に使っています。 (現在は主に開発用途。) 他のコンテナ型仮想化技術と比較した場合の Docker の良さとして、 ・Docker Hub など、レジストリに登録されているイメージを利用できる ・Dockerfile を使用したイメージ構築の自動化 などが挙げられると思います。 Docker Hub をざっと見渡しただけでも、Ubuntu や CentOS など環境だけを提供する
NewsPicks の開発を担当している杉浦です。NewsPicksはおかげさまでユーザ数が20万を突破しました。サービスが順調に成長するということは大変にうれしいことなのですが、エンジニアとしては負荷との戦いになったりします。我々も例に漏れず日々、負荷との戦いを強いられています。NewsPicksの機能面の特長として次の2つがあります。・フォローしているユーザのPickが自分のタイムラインに集約される・各カテゴリで話題になった記事を閲覧できるこれらの機能を高速に処理・実現するためにRedisを採用してい
こんにちは。新規事業本部・金融グループの金(成奉)です。 前回( PHPコンパイルによる高性能のFastCGIウェブサーバー構築とチューニ&#x3
メインサービスである BUYMA のシステム的な話がいままでなかったので書きます。 (2014/09 現在) PHP , Ruby , Java 主に使う言語は PHP , Ruby , Java です。 BUYMA のほとんどの部分は PHP / Zend Framework / Smarty で書かれています。なかなか年季の入っているもので、見通しが悪く保守性がアレなコードがあったり 、誰も PHP が好きではない などの理由で、絶賛 Ruby on Rails で書き換え中です。 "絶賛" と書いて
  理系的素養は有るけれどもウェブ経験が全く無い学生インターンが、9日間で立派なウェブ系エンジニア になったので、そのポイントをまとめました! ざっくり概要 Getting Started with Rails をやる ユーザに届ける体験をする Pull Request のやりとりをする SQLをいじる ウェブで使うミドルウェアとインフラを知る JSFIDDLE を触る ウェブ業界について知る そしたら取り敢えずウェブ系エンジニアとして仕事ができます!   インターンで来たのはこんな人 ウェブ系の採用イベ
どうも。バックエンドエンジニアの吉田です。 前回は1サイトをクロールする際の最適化戦略としてRedisベースの分散ロック機構を使った実例を紹介しました。 前回の記事:Redis::DistMutex – 時限付き分散ロックで効率良くサイトクロールをしよう 今回は複数サイトに対する処理をResqueを使って最適化した事例を紹介したいと思います。 ※ランダムにキューをlistenする話の予定でしたが、話がとっ散らかるので主題を変更しました。 主なキーワードとしては、「Resqueのキュー分割」、「Rubyでク
はじめまして。バックエンドエンジニアの 吉田 です。 2013年5月末の入社以降、大量のEC2インスタンスのVPC移行を担当した後、今はiQONの商品DBを支えるクローラーの改善に取り組んでいます。今回はその改善の1つとして開発したRedis::DistMutexという分散ロック機構のruby実装を紹介をしようと思います。 Redis::DistMutex 開発の経緯や細かい設計の話は後述するとして、まずはつくったgemの紹介をします。 Redis::DistMutex Redisベースの分散ロック機構
はじめに こんにちは、じゃがいもの皮はもっぱらキレイにむいて食べるエンジニアの村田です。 前回のエントリ iQONのバックエンドの非同期処理について ではざっくりとした方針とかを書きましたが今回は具体的な実装方法や運用方法などについて紹介したいと思います。 使用技術 iQONではResqueという仕組みを採用して、メール送信やDBの重たい更新処理などを非同期処理しています。 ResqueはRedisにキューを出し入れして遅延処理を実現する仕組みです。シンプルだし導入しやすいと思い採用しました。 このRes