ブックマーク / engineering.mercari.com (5)

  • メルカリShops の技術スタック、その後 | メルカリエンジニアリング

    こんにちは。ソウゾウのSoftware Engineer(CTO)の@suguruです。連載:メルカリShops 開発の裏側 Vol.2の1日目を担当させていただきます。 去年、2021年に開始した メルカリShopsの技術スタック についての記事を書きましたが、今回はリリースまでに採用した技術スタックが、半年通してどのようにアップデートしてきたかを共有したいと思います。 ローンチ時に採用した技術が、実際の運用でどのように変遷したのかを共有することで、技術スタックを考える際の何らかの参考になれば幸いです。 monorepo メルカリShops ではサービスに必要なコードを1つに集約する monorepo を採用しています。リリース後半年たってコード量はかなり増えてきましたが、monorepo に対する満足度は非常に高く、うまく機能しています。 サービス全体の見通しが良くなることと、すべての

    メルカリShops の技術スタック、その後 | メルカリエンジニアリング
    onesplat
    onesplat 2022/02/09
    サービス開始半年でマイクロサービス50個か…つら…
  • OAuth2の次に来ると言われる認可プロトコルGNAPとはなにか | メルカリエンジニアリング

    Merpay Advant Calendar 2020、23日目の記事は、趣味で認証認可をやっている @nerocrux が送りいたします。 最近 GNAP という認可プロトコルのワーキンググループドラフトが出ていて頑張って細かく読みましたので、(次回はいい加減に仕事でやってることについてお話しますが)今回はその GNAP について紹介させてください。 GNAP とはなにか? GNAP は Grant Negotiation and Authorization Protocol の略で、認可のプロトコルです。Justin Richerさんという方を中心に策定しています。作者によると、GNAP の発音は げなっぷ になります。 認可(Authorization)プロトコルと言えば、OAuth 2.0 (RFC6749) が広く知られ、運用されています。GNAP は OAuth 2 の後継とし

    OAuth2の次に来ると言われる認可プロトコルGNAPとはなにか | メルカリエンジニアリング
    onesplat
    onesplat 2020/12/23
    ちゃんと読んでないけどOAuthより色々しっかりしてて良さそう。OAuth2 / OIDCは難しいわりに穴が多くてあまり洗練されているとは言い難かったよな。
  • 機械学習システムの設計パターンを公開します。

    メルカリで写真検索とEdge AIチームに所属している澁井(しぶい)です。機械学習のモデルを番サービスに組み込むための設計やワークフローをパターンにして公開しました。 GithubでOSSとして公開しているので、興味ある方はぜひご笑覧ください! PRやIssueも受け付けています。私の作ったパターン以外にも、有用なパターンやアンチパターンがあれば共有してみてください! GitHub:https://github.com/mercari/ml-system-design-pattern GitHub Pages:https://mercari.github.io/ml-system-design-pattern/README_ja.html なぜ機械学習システムのデザインパターンが必要なのか 機械学習モデルが価値を発揮するためには番サービスや社内システムで利用される必要があります。そのた

    機械学習システムの設計パターンを公開します。
    onesplat
    onesplat 2020/04/24
    あ〜でもこれは人々が求めていたもの感はある。コアのモデルや手法は理解できてもいざ実装して運用しようとなると悩みが沢山出てくるし
  • マイクロサービスにおける決済トランザクション管理 | メルカリエンジニアリング

    この記事はMERPAY TECH OPENNESS MONTHの15日目の記事です。 こんにちは。メルペイのPayment PlatformチームでPaymentServiceの開発を担当するエンジニアの @foghost です。 メルペイではマイクロサービスのアーキテクチャで決済システムを開発しています。その中でPaymentServiceは決済トランザクション管理の基盤サービスとして、下位層のサービス(外部サービスも含め)が提供する各種決済手段を利用して、上位層のサービス(メルカリ、NFC,コード払いなど)に必要な決済フローを共通APIとして提供しています。PaymentServiceが提供する決済処理に複数のサービスを跨いでお金の動きを正確に管理する必要があるので、作り始めた頃から決済トランザクション管理を最も重要な課題として、サービスを跨いでもデータの整合性が取れる仕組みを作ってき

    マイクロサービスにおける決済トランザクション管理 | メルカリエンジニアリング
    onesplat
    onesplat 2019/06/08
    Fault Injection Testingの具体的な手法が知りたかった
  • 2018年のPHPとメルカリ | メルカリエンジニアリング

    Mercari Advent Calendar 2018 の 8 日目は Backend チームの @hidenorigoto がお送りします。 来週末12/15(土)には、PHPカンファレンスが開催されます。メルカリでは、これから開催される3つのPHP系カンファレンスをスポンサーとして支援しています。 PHPカンファレンス 2018 2018/12/15(土) PHPカンファレンス仙台 2019 2019/01/26(土) PHPerKaigi 2019 2019/03/29(金)〜2019/03/31(日) この記事では、メルカリにおけるPHPとの関わり方と、PHPカンファレンスやPHPコミュニティに向けて、メルカリエンジニアからの一言メッセージを紹介します。 メルカリでは現在、システムと組織のMicroservies化を進めています。Microservicesの開発にはGoを選択して

    2018年のPHPとメルカリ | メルカリエンジニアリング
    onesplat
    onesplat 2018/12/08
    誰が何と言おうとPHPは揺るぎないクソ
  • 1