イベント開催日:2023年12月07日 現在運用している巨大な MySQL サーバの移行先の候補の一つとして TiDB があります。TiDB Cloud がこれらの MySQL の移行先として可能性があるかどうかについて、特に性能面で大規模 PoC を実施しました。今回はその PoC についての内容や方法、またその結果についてお話します。
![TiDB Cloud における大規模 PoC の話 - db tech showcase 2023 Tokyo](https://cdn-ak-scissors.b.st-hatena.com/image/square/51a622b92fd3317136e3d55efd2b2d50557ce7e6/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F4f631a6fa5e44ee69277a443a02e29fa%2Fslide_0.jpg%3F28191994)
この記事は、Merpay Tech Openness Month 2023 の4日目の記事です。 こんにちは。メルコインのバックエンドエンジニアの@goroです。 はじめに このGitHub Actionsのセキュリティガイドラインは、社内でGithub Actionsの利用に先駆け、社内有志によって検討されました。「GitHub Actionsを使うにあたりどういった点に留意すれば最低限の安全性を確保できるか学習してもらいたい」「定期的に本ドキュメントを見返してもらい自分たちのリポジトリーが安全な状態になっているか点検する際に役立ててもらいたい」という思いに基づいて作成されています。 今回はそんなガイドラインの一部を、社外の方々にも役立つと思い公開することにしました。 ガイドラインにおける目標 このガイドラインは事前に2段階の目標を設定して作成されています。まず第1に「常に達成したいこと
Advent Calendar day 7 担当の vvakame です。 予告では Apollo Federation Gateway Node.js実装についてポイント解説 としていましたが、社内各所のご協力によりAdvent Calendarの私の担当日に間に合う形で公開できる運びとなりました。そのため告知とは異なりますが GitHub上のsensitive data削除の手順と道のり をお届けしていきたいと思います。 メルペイVPoE hidekによるday 1の記事で振り返りがあったように、今年、弊社ではCodecovのBash Uploaderに係る情報流出という事案が発生しました。当該インシデント対応において、プレスリリースにも記載のある通り、ソースコード上に混入してしまった認証情報や一部個人情報などの機密性の高い情報(sensitive data)について調査を実施し、対応
こんにちは、メルペイでSREとして従事している @myoshida です。この記事は Merpay Tech Openness Month 2021 の8日目の記事です。 SREチームはお客さまへよりよいサービス利用体験を提供するため、日々様々な改善活動に取り組んでいます。その活動の一環としてPlaybookの概念を導入し、運用者の運用負担を減らす取り組みを始めました。今回はそのことについて説明してみたいと思います。 概要 メルペイではアプリケーションエンジニアとSREの双方がオンコール制度のもと運用に携わっています。 運用の悩みは様々ですが、そのうちの1つに手順書の取り扱いがあります。 どこに置くべきか、更新はされているのか、何を書けばいいのか、どの場面でどの手順書を利用すればよいのかというような悩みはどこの現場でも少なからず存在すると思います。 そこで、Playbookと呼ばれる体系的
これはなにか サイバーエージェントとメルカリの「採用前〜退社後」という一連のエンプロイー・ジャーニーに内包されている組織強化システムを構造的に分解するポストです。 メルカリのCuture Doc公開に際して、実際に起きたことを懐かしく思いツイートしたら予想外の反響をいただいたのですが、その中で私のもうひとつの古巣でもあるサイバーエージェントのことを引き合いに出して貶すような引用リツイートも見られました。 退職時、進太郎さんに1 on 1の時間もらって最後の挨拶したときに貰った「まあ株式会社インターネットみたいなものだから」という言葉を忘れない。2年半前のことなので、今に始まったポーズじゃなくて昔からのスタンス。 Culture Doc | 採用情報 株式会社メルカリ https://t.co/1kTYHh0wVN pic.twitter.com/d3qJwUExcB — きょすーけ | D
こんにちは!ソウゾウの Software Engineer の @dragon3 です。 連載:「メルカリShops」プレオープンまでの開発の裏側の8日目を担当させていただきます。 この記事では、メルカリShops 開発において、日々バリバリに利用されている CI/CD 環境と Pull Request 毎のデプロイ環境について紹介します。 CI/CD 環境 メルカリShops では、CI/CD (テスト・ビルド・デプロイ)やその他自動化のために GitHub Actions を使っており、ほとんどのワークフロー・ジョブを Self-hosted runners で実行しています。 Self-hosted runners は、専用の VPC ネットワーク 内の GCE インスタンス上で動かしており、Managed Instance Group 等を使い、そのプロビジョニングや起動・停止等は
こんにちは。ソウゾウの Software Engineer (CTO) の @suguru です。連載:「メルカリShops」プレオープンまでの開発の裏側の1日目を担当させていただきます。 7月末にメルカリShopsという新しいサービスが公開されました。メルカリShops は、2021年1月にメルカリのグループ会社として設立したソウゾウが新たに立ち上げたサービスです。 この記事では、メルカリShops を作るにあたり、どういった技術、アーキテクチャを選定したのか、その背景と意思決定をまとめて共有したいと思います。 monorepo まず最初にプロジェクトをスタートしたときに、サービスのリポジトリを作るのですが、迷わず monorepo による構成を選択しました。monorepo は、システムを構成する複数のコンポーネントの独立性を保ちつつ、全ての構成を1つのリポジトリで管理する手法です。今
(2022年9月26日追記) 本件に関する、セルフチェックページとお問合せ窓口の提供を終了いたしました。 この度は、お客さまをはじめ多くの関係者の皆様に多大なるご迷惑とご心配をおかけしましたことを、深くお詫び申し上げます。 株式会社メルカリは、当社が利用している外部のコードカバレッジツール※「Codecov」に対する第三者からの不正アクセスにより、当社のソースコードの一部および一部顧客情報(フリマアプリ「メルカリ」で2013年8月5日〜2014年1月20日に実行された売上金の顧客口座への振込みに関連した情報17,085件、2015年11月〜2018年1月の間におけるカスタマーサービス対応に関連した情報217件、2013年5月に実施したイベントに関連した情報6件、「メルカリ」および「メルペイ」の一部取引先等に関する情報7,966件、当社子会社を含む一部従業員に関する情報2,615件)が外部流
Platform チームの@deeeeeeeetです. Platform チームは2年前にMercariがMicroservicesの移行を始めたときに一緒に立ち上げられたチームです.Platform チームはMicroservicesを動かすための基盤や開発や運用のためのツールセットなど提供しています.立ち上げ時は自分を含めて2-3人で始まったチームですが2年が経ち10人を超えるチームにまで成長しました. チームのメンバーが増えるほど1チームとして動くには限界がきており,またMicroservices化が進めば進むほどチームの負う責任範囲も広くなりCognitive load (認知負荷) も高くなっていました.これらの課題を解決するために組織変更を行い,Platform チームを複数の専門性に特化したチームに分割しました. 本記事ではチームのデザイン,チームが分離しても独立性を保ちつつ
Microservices Platform Teamの@deeeeeeetと@dragon3です. Microservices Platform TeamではGoogle Kubernetes Engine(GKE)をメインのコンポーネントとして利用し,その上にメルカリとメルペイのMicroservicesを動かすための基盤を構築しています.メルカリのMicroservices化のプロジェクト自体は2年ほど前から始めており,GKEも当時に構築したものを今日まで運用し続けてきました. この2年間でGKEからは多くの機能がリリースされました.その中のほとんどはそのまま有効にすることができますが,中にはClusterを作り直す必要があるものもあります.例えばRoutes-based ClusterをVPC-native Clusterに,Zonal ClusterをRegional Clust
メルカリで写真検索と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 なぜ機械学習システムのデザインパターンが必要なのか 機械学習モデルが価値を発揮するためには本番サービスや社内システムで利用される必要があります。そのた
2019年9月24日、株式会社メルカリにて、エンジニア向けイベント「Mercari Bold Challenge ~CTOとエンジニアが赤裸々に語る 変化と挑戦~」が開催されました。社員数は1,800人を超え、40ヵ国以上の国から多様な人材が集まり急成長を続けるメルカリ。一方で、急成長に伴って新たな課題も生まれています。そこで今回は「Bold Challenge(大胆な挑戦)」というテーマで、メルカリのエンジニア組織の変化と挑戦について、そのリアルを語ります。プレゼンテーション「メルカリのエンジニア組織の今とこれから」に登場したのは、執行役員CTOの名村卓氏。講演資料はこちら CTO名村氏が語るメルカリのエンジニア組織の今 名村卓氏:こんにちは。CTOの名村です。僕からは、メルカリのエンジニア組織の話をさせていただきます。「今とこれから」ということで、これまでのことと、今抱えている課題と、
こんにちは。株式会社メルペイSREチームの@kekeです。 Merpay Advent Calendar の9日目の記事です。 本記事ではスケーラブルなDatadogモニタリングシステムをTerraformによって実現した方法を紹介します。 はじめに すでに多くの発表があるのでご存知の方も多いのではないかと思いますが、メルペイではマイクロサービスアーキテクチャを採用しています。 マイクロサービスアーキテクチャの略図 各マイクロサービスのデベロッパーは責任を持ってそれぞれのサービスを開発・運用しています。 SRE(Site Reliability Engineering)チームはシステムの信頼性を失うことなく高い開発速度を実現できるような仕組みづくりに取り組み、それをデベロッパーに提供しています。メルペイという金融事業の、高い信頼性の実現のためにサービスを横断的にモニタリングをしています。可
Profile Takaaki Komazaki @komattaka SRE Team at Merpay Agenda • • • • • • • • • Architecture Microservice Architecture Clients (API) Merpay API Gateway API service microservice A microservice B microservice C API service Mercari App Clients (Browser) CDN Microservice Architecture & Organization • Microservice architecture can be improved with the services and organizations that scale • Feat
Icon made by Freepik from www.flaticon.com こんにちは。 今年度、新卒で株式会社メルペイに入社し、SREチームの配属になったkeke(Twitter: @_k_e_k_e)です。 本記事では、メルカリの社内サービスであるWi-Fi打刻システムWIAS(Wi-Fi Attendance System)のお話をします。 会社に所属すると出退勤を記録する必要があります。その中で面倒に感じる、忘れてしまう、記録方法が分からない……など色々な問題が出てきます。しかし、Wi-Fiと勤怠システムをうまく組み合わせることによって社員体験を向上させることができた私達のチャレンジを紹介します。 目次 本記事は以下のセクションで構成されています。ご興味のあるセクションだけでもご覧ください。 目次 WIASとは 「社員体験の向上」というゴール WIASの開発背景 旧システ
ハッカーズチャンプルー2019( http://hackers-champloo.org/2019 )の発表資料です
こんにちは! PRチームのmayumineです。 最近、メルカリに新入社員が入社しました。その名もAI社員の「HISASHI」くん! Slack上に存在し、社内のヘルプデスク業務に対して、AIによるサポートをするのがHISASHIくんの役目です。「印刷の仕方」や「経費精算の仕方」「翻訳の依頼」などの質問や業務は、基本的に社内の「担当の誰か」が対応していましたが、質問する人もされる人も解決までに時間がかかってしまいます。「AI社員が答えられることは自動対応できるようにしよう!」ということで、HISASHIくんが爆誕し、社員として活躍できるまで育成されてきたのでした。 HISASHIくんにできること 誰しも、「調べれば簡単にわかりそうなことを誰かに聞くのは悪いな〜。でも調べるのはめんどくさいな〜」という心理的ハードルはあると思うんですけれど、HISASHIくんだったら心置きなく気軽に質問できま
Microservices Platform Team の @masartz です。 昨年に引き続き、Mercari Meetup for Microservices Platform #2 を先週5月22日に開催しました。 ちなみに昨年版の記事はこちらです、合わせてご確認ください。 第1回から約1年ぶりとなりますが、その間にメルカリグループではC2Cアプリ「メルカリ」におけるMicroservices移行、決済サービス「メルペイ」のリリースなどが行われており、Microservices Platform Teamはその両方を支える基盤を構築しながらグループを横断した取り組みをしてきました。自分たちの成果を広げつつ、組織を拡大させることを目的としています。 そのような背景の中で、チームとしてどのようなアウトプット・アプローチをしてきたか、またPlatformを使う側の立場であるメルペイエン
理論編: Telepresenceってなに Telepresenceとはリモートクラスタに対してより早く、ローカルで開発することを支援するツールです。現時点(2019/05/28)での最新バージョンは0.99です。 「より早く、ローカルで開発するのを支援するツール」ができることは、大きくまとめると以下の2つです。 クラスタのDeploymentをローカルサーバーと置き換える クラスタにローカルからアクセスをする これらの恩恵として ローカルサーバーのリモートクラスタの他サービスへアクセス ローカルサーバーのKuberenetesクラスタのリソースであるsecretsやConfigMapのアクセス リモートクラスタのローカルサーバーへのアクセス が挙げられ、より簡単に開発をできるようになります。 0. 今回のサービス例 例えば以下のようなサービスがあるとします。このサービスがやることは以下の
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く