Feature Toggles (often also refered to as Feature Flags) are a powerful technique, allowing teams to modify system behavior without changing code. They fall into various usage categories, and it's important to take that categorization into account when implementing and managing toggles. Toggles introduce complexity. We can keep that complexity in check by using smart toggle implementation practice
「お金を前へ。人生をもっと前へ。」をミッションに掲げるマネーフォワードは、全ての人のお金の課題や悩みをテクノロジーで解決すべく、日々プロダクト開発をしています。現在提供しているサービスは約30あり、今後も新規のプロダクトを続々とリリース予定です。スケーラブルな開発組織のためには、社内に存在する課題も同時に解決しなければなりません。課題解決のためのプロジェクトをリードするのは、新卒4年目以内の若手が中心。本連載では、スケーラブルな開発組織を目指してチャレンジを続ける新卒若手プロジェクトリーダーの取り組みをご紹介します。第2回は、アプリケーション開発の観点から、マネーフォワードのサービス群に存在する依存関係や、依存関係が引き起こしている問題とその解決に向けての取り組みについてお話します。 はじめに はじめまして。株式会社マネーフォワードのグループ会社である株式会社クラビスに所属している古濱です
Learn about the evolution of the Shopify codebase. Today Shopify’s codebase has grown to allow 1,000+ Shopify developers to quickly and continually build out new features. Presented by Kirsten Westeinde, Senior Developer at Shopify. -------------------------------- Subscribe to our channel for more videos about developing and designing ecommerce stores, apps, and themes with Shopify » http://bit
AWS Startup ブログ スタートアップのためのマイクロサービス入門 こんにちは、スタートアップ ソリューションアーキテクトの松田 (@mats16k) です。 以前「スタートアップのためのコンテナ入門 – Kubernetes 編」を出した際に記事内で、マイクロサービスやサービスメッシュにふれる機会がありました。今回は AWS でデベロッパーアドボケイトをしているトリ氏 (@toricls) にマイクロサービスについて記事を寄稿いただきました。 ※ 本記事は Software Design 2020年7月号 に掲載された「スタートアップのためのAWSテクノロジー講座 – マイクロサービスのあるべき姿と特徴を知る」からの転載、改修版です。 目次 マイクロサービスにはコンテナが必要なのか? サービスメッシュは本当に必要なのか? 「マイクロサービス」という言葉の功罪 マイクロサービスが必
理論編: Telepresenceってなに Telepresenceとはリモートクラスタに対してより早く、ローカルで開発することを支援するツールです。現時点(2019/05/28)での最新バージョンは0.99です。 「より早く、ローカルで開発するのを支援するツール」ができることは、大きくまとめると以下の2つです。 クラスタのDeploymentをローカルサーバーと置き換える クラスタにローカルからアクセスをする これらの恩恵として ローカルサーバーのリモートクラスタの他サービスへアクセス ローカルサーバーのKuberenetesクラスタのリソースであるsecretsやConfigMapのアクセス リモートクラスタのローカルサーバーへのアクセス が挙げられ、より簡単に開発をできるようになります。 0. 今回のサービス例 例えば以下のようなサービスがあるとします。このサービスがやることは以下の
はじめに こんにちは、サーバーサイドエンジニアの@hokitaです。 この記事は Enigmo Advent Calendar 2020 の 16 日目の記事です。 弊社が運営するBUYMAは現状モノレポで管理されており、10年以上も運営しているサービスなのでソースも肥大化していて、メンテナンスが難しくなってきました。 そこで現在、本体から少しずつマイクロサービスに切り離していこうとしています。 その取組の中で配送処理の一部をマイクロサービス化する作業に携わることができました。今回はBUYMA本体と配送サービスとの通信にイベント駆動アーキテクチャを導入した話をしていきます。 イベント駆動アーキテクチャ マイクロサービスでサービスを切り分ける場合、それぞれ責務が分かれるように分割するかと思います。 しかしサービス間の通信手段によっては各サービスが密になる恐れがあります。 そこでイベント駆動ア
こんにちは、食べログシステム本部長の京和です。 本エントリでは Shopify の Engineering Blog から、Kirsten Westeinde による「Deconstructing the Monolith: Designing Software that Maximizes Developer Productivity」を翻訳して掲載します。 食べログではユーザーや飲食店に価値を届けるスピードを最大化するべく、マイクロサービス化などをはじめとしたこれまでの組織やアーキテクチャを刷新するための取り組みを始めています。しかし、マイクロサービスはアプリケーションアーキテクチャとインフラアーキテクチャが複雑に絡み合ったシステムで技術的難易度が非常に高く、適切に構築できなければ「分散されたモノリス」と呼ばれるアンチパターンに陥ります。1 Shopifyではマイクロサービスではなく、
はじめに こんにちは。ECプラットフォーム部のAPI基盤チームに所属している籏野 @gold_kou と申します。普段は、GoでAPI GatewayやID基盤(認証マイクロサービス)の開発をしています。 ZOZOテクノロジーズでは、2020年11月5日にZOZO Technologies Meetup〜ZOZOTOWNシステムリプレイスの裏側〜を開催しました。その中で発表されたAPI Gatewayによるマイクロサービスへのアクセス制御に関して、当日話せなかった内容も含めて、API Gatewayについてこの記事で網羅的にまとめました。 API Gatewayやマイクロサービスに興味ある方、「API Gateway」という言葉は知っているけど中身はよく分からないという方向けの記事なので、読んでいただけると幸いです。 はじめに ZOZOTOWNのリプレイス マイクロサービス化の目的 ストラ
要旨 モノリスとして管理するには複雑すぎるというシステムでない限り、マイクロサービスは検討さえしなくていい。ソフトウェアシステムの大多数は、単一のモノリシックアプリケーションとして構築されるべきである。そのモノリス内のモジュール性が良好になるよう注意を払う必要はあるが、別個のサービスに分けようとしてはいけない。 – Martin Fowler 明確に構造化されたモノリスを構築できない時、なぜマイクロサービスがその答えだと思うのか。 Simon Brown 始めに マイクロサービスの利点と欠点については色々書かれていますが、残念ながら私には、成長段階のスタートアップ業界ではいまだカーゴカルト風に追い求められているように思えます。そこで、Martin Fowlerの記事「Microservice Premium」(マイクロサービスプレミアム)をあえて書き直すことにはなりますが、いくつかの見解を
行き先、予算、日程、宿...いままでの旅行は、考えることが多すぎました。これからは「旅行にいきたい!」という気持ちだけで大丈夫。面倒なことはおまかせして、もっと気軽に旅に出ましょう。ズボラ旅はそんな、あたらしい旅行のかたちです。 で、そこで例えば決済まわり・観光庁ガイドラインに沿うためのページ・チャット管理画面の一部とかをマイクロサービス化して作っています。 「シード期にマイクロサービスってぶっちゃけそんなリソースなくない?」という指摘はまぁ一理あって、弊社もエンジニアは現在自分いれて2人だけで、ぶっちゃけすでにあるアプリケーションの上に乗せるほうがこれまでのマインドセットのまま作れるとか、動作環境準備しなくていいなどの面では早いです。じゃあなんでマイクロサービス化してんだよという話。 理由はざっくりまとめるとリソースの集中投下・知見の蓄積・俯瞰で考える習慣づけ・実はそんなに大変じゃないこ
Microservicesの世界においてService meshは大きなキーワードになった.KubeCon 2017やKubeCon 2018 EUにおいても多くのセッションをService mesh(もしくはその代表格であるIstio)が占めており注目の高さも伺える.もちろんMicroservicesを進めるMercariにおいても導入を検討しており今後重要なコンポーネントの1つになると考えている.本記事ではそもそもなぜService meshという考え方が登場したのか,なぜ重要なのか? その実装としてのIstioとは何で何ができるのか? について簡単にまとめてみる. 参考文献 Service meshを一番理想的な形でサービスに使い始めその考え方を広めたのはLyftだ(と思う).LyftはIstioのコアのコンポーネントであるEnvoyを開発しそれを用いてService meshを構築
オライリーから出版されている「プロダクションレディマイクロサービス」を読んだ.「プロダクションレディ」という秀逸なタイトルに惹かれただけじゃなく,章ごとのテーマも非常に惹かれる内容になっていた.仕事でアーキテクチャを考えたり,アーキテクチャレビューを担当する場面も多いけど,ベストプラクティスなアーキテクチャをもっと上手に言語化したいなと思っていて,プロダクションレディなマイクロサービスの標準化を学べる本書に興味を持った. 1章 マイクロサービス 2章 本番対応 3章 安定性と信頼性 4章 スケーラビリティとパフォーマンス 5章 耐障害性と大惨事対応 6章 監視 7章 ドキュメントと組織的な理解 付録A 本番対応のチェックリスト 付録B マイクロサービスの評価基準 プロダクションレディマイクロサービス ―運用に強い本番対応システムの実装と標準化 作者: Susan J. Fowler,佐藤直
先週の (Emit) カンファレンスでは、卓越した講演の数々、興味の尽きないパネルディスカッションが行われ、サーバレスコミュニティの優秀な仲間たちに出会って貴重な意見交換をする機会がたくさんありました。 そこでは誰もが一様に、コストこそがサーバレス適用の推進の鍵だとみなしていました。オンデマンド実行と生来の弾力性は、稼働率を最適化しつつ、稼動時間と信頼性もさらに高い状態に保ちます。従量課金制はコストを直接的に定量化できるものに変えました。場合によっては 桁外れの 節約 になる可能性があります。パネルディスカッションで、Gartnerのアナリストの Anne Thomas は、企業クライアントは”コスト”が有利という理由からサーバレスに興味を持つ、と話しました。 しかし、クローズドなシステムにフリーランチはありません。メリットを得るには何かを犠牲にしなければならないのです。テクノロジーにおい
モノリスとして管理するには複雑すぎるというシステムでない限り、マイクロサービスは検討さえしなくていい。ソフトウェアシステムの大多数は、単一のモノリシックアプリケーションとして構築されるべきである。そのモノリス内のモジュール性が良好になるよう注意を払う必要はあるが、別個のサービスに分けようとしてはいけない。要旨 モノリスとして管理するには複雑すぎるというシステムでない限り、マイクロサービスは検討さえしなくていい。ソフトウェアシステムの大多数は、単一のモノリシックアプリケーションとして構築されるべきである。そのモノリス内のモジュール性が良好になるよう注意を払う必要はあるが、別個のサービスに分けようとしてはいけない。 – Martin Fowler 明確に構造化されたモノリスを構築できない時、なぜマイクロサービスがその答えだと思うのか。 Simon Brown 始めに マイクロサービスの利点と欠
Microservices Meetup で話した step by step BFF の話です。
This document summarizes a microservices meetup hosted by @mosa_siru. Key points include: 1. @mosa_siru is an engineer at DeNA and CTO of Gunosy. 2. The meetup covered Gunosy's architecture with over 45 GitHub repositories, 30 stacks, 10 Go APIs, and 10 Python batch processes using AWS services like Kinesis, Lambda, SQS and API Gateway. 3. Challenges discussed were managing 30 microservices, ensur
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く