タグ

2020年7月6日のブックマーク (3件)

  • 赤いラクダは3倍早い!ピーク時毎分1400件を捌くための決済処理のチューニング紹介 - pixiv inside

    こんにちは、4月からBOOTH部になったorekyuuです。 この記事では、転属後の一番大きな成果である、BOOTHで発生する大量の注文(ピーク毎分約1400件)を整合性を取りつつ高速にさばく改善について解説します。 BOOTHが抱えていた課題 まずはBOOTHが抱えていた課題について説明します。 BOOTHでは販売開始時刻が事前に予告されていた場合などの理由で瞬間的に決済が集中し、サーバーが大量の注文に耐えきれないケースが度々ありました。 その原因は在庫の処理にありました。擬似コードですが、注文の処理は以下のようになっていました。 def checkout! ActiveRecord::Base.transaction do 商品の悲観的ロック # 在庫数を同時に編集しないようにロックを取る 商品の在庫の減算処理 注文を確定済みにする 決済の請求APIを叩く end end 上記のコード

    赤いラクダは3倍早い!ピーク時毎分1400件を捌くための決済処理のチューニング紹介 - pixiv inside
    iga_k
    iga_k 2020/07/06
    元々のコードも見たけど、どう直せばいいかわからなかったのでこれまじすごい偉業。
  • ソフトウェア開発の「品質vs.スピード」、本当は何を犠牲にしているのか【デブサミ2020】

    デブサミ2020の1日目、「質とスピード」というセッションが人気を集めた。2019年10月に開催されたEngineering Organization Festival 2019で評価の高かったセッションをアップデートして再演したものだ。登壇したのは、テスト駆動開発者として有名な、タワーズ・クエストの和田卓人氏。ライオンのアスキーアートといっしょに紹介されることが多いという。プロジェクトマネジメントにはQCD(Quality:品質、Cost:コスト、Delivery:納期)という概念があり、トレードオフの関係になると言われている。確かに開発の現場でも、「いまは大事な時期だから、品質を犠牲にしてスピードを優先しよう」といった判断が行われることは少なくない。しかし、和田氏は、ソフトウェア開発の文脈において、逆の効果をもたらすことを、多くの資料を引用して再構築してみせた。 タワーズ・クエスト株式

    ソフトウェア開発の「品質vs.スピード」、本当は何を犠牲にしているのか【デブサミ2020】
    iga_k
    iga_k 2020/07/06
    これは参照につかえる良い記事
  • Rails Upgrade Service

    Need to upgrade Rails but don't have the time? Let the experts at FastRuby.io upgrade your application Contact Us FastRuby.io is a specialized Rails upgrade service. We have worked alongside teams from 1 to 100 people, upgrading applications without interrupting product development. Whether you’re stuck on 2.3 or want to prepare for 7.1, we’ve seen it all before and know the best approaches. We’ve

    Rails Upgrade Service