並び順

ブックマーク数

期間指定

  • から
  • まで

561 - 600 件 / 766件

新着順 人気順

分散システムの検索結果561 - 600 件 / 766件

  • 『Distributed Services with Go』をRustでやっていく

    『Distributed Services with Go』は分散システム実装の入門書です。JSON/HTTP APIエンドポイントの作成から始まり、APIエンドポイントのprotobuf/gRPC化やTLS対応、そして非集中型サービスディスカバリ・オーケストレーションの実装であるSerfや分散合意アルゴリズムRaftなどを扱っています。『データ指向アプリケーションデザイン』で原理はなんとなくわかったけど分散システムを具体的にどう実装したら良いかわからないという人を対象にしているらしいです。(自分はこの書籍はまだほとんど読んでないです) この書籍では全てGoで実装していますが、理解度を確認しながらやっていきたいのでRustで実装していきます。 1. Let's Go Kubernetesなどで実行する分散システムの実装を学ぶ。その最初の一歩としてcommit log JSON over H

    • アクセス制御オープンソース「Athenz」、CNCF Landscape 参加までの道のり

      ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは。ヤフーでAthenzを活用した社内アクセス制御基盤システムの開発・運用を担当している矢野です。 ヤフーでは、オープンソースであるAthenzに対してさまざまな活動を行っており、現在は、CNCF TOCによって定義されたCloud Nativeな技術がまとめられている CNCF(Cloud Native Computing Foundation) Landscape において、Sandbox Projectとして登録されるに至っています。 本記事では、Athenzがオープンソースとして公開され、CNCF Sandbox Projectとなるまでの、道のりについてご紹介します。 ヤフーにおけるアクセス制御 ヤフーでは、Op

        アクセス制御オープンソース「Athenz」、CNCF Landscape 参加までの道のり
      • ついにAWSがマネージドなカオスエンジニアリングサービスを発表したぞ #reinvent | DevelopersIO

        Werner Vogels氏のKeynoteで発表されました。 そうです、Well-Architected Frameworkの設計の一部となったカオスエンジニアリングのサービスです。 名前は、AWS Fault Injection Simulatorです。 そのうち出るだろとは思っていましたが、案外早かったですね。 今から使えると言うわけではなく、2021年の早期に提供するとのこと。 カオスエンジニアリングは、簡単にまとめるとシステムに対して何か破壊的なイベントを発生させ、弱点を見つけ出し、影響が出る前に改善していくという手法です。 AWS Fault Injection Simulatorでは、AWSサービスの範囲全体で制御されたカオスエンジニアリング実験をセットアップして実行するプロセスを簡素化する と説明されていました。 AWS Fault Injection Simulatorを

          ついにAWSがマネージドなカオスエンジニアリングサービスを発表したぞ #reinvent | DevelopersIO
        • AWS IoT を利用して IoT デバイスの証明書の更新を管理する方法 | Amazon Web Services

          Amazon Web Services ブログ AWS IoT を利用して IoT デバイスの証明書の更新を管理する方法 この記事は Ryan Dsouza と Lukasz Malinowski によって投稿された How to manage IoT device certificate rotation using AWS IoT を翻訳したものです。 はじめに IoT (Internet of Things) は、さまざまな業界でビジネスオペレーションやカスタマーエクスペリエンスを変化させています。この無限のチャンスはビジネスの変革を可能にしますが、正しく導入されなければ、セキュリティ、リスク、プライバシーの懸念をもたらし、データやブランドを危険にさらすことにもなります。産業設備では OT(Operational Technology) 環境は、生産高と効率を向上させるために、より多

            AWS IoT を利用して IoT デバイスの証明書の更新を管理する方法 | Amazon Web Services
          • 発展する Anthos - より使いやすく、より多くのワークロードに対応 | Google Cloud 公式ブログ

            ※この投稿は米国時間 2020 年 8 月 25 日に、Google Cloud blog に投稿されたものの抄訳です。 お客様はかつてないほど、アプリケーション ポートフォリオの見直しと費用削減の推進という 2 つの重要なビジネスニーズに対処するための支援を求めるようになっています。本日、Google Cloud App Modernization Program(Google CAMP)を発表いたしました。このプログラムは、イノベーションを加速して、世界クラスの安全かつ信頼性の高いアプリケーションで顧客にリーチしながら費用を節約できるようにするために作成されました。Google CAMP はこれを実現するために、アプリケーションを開発、実行、運用、保護する方法に関する一貫した開発と運用の経験、ツール、ベスト プラクティス、業界トップクラスのガイダンスを提供しています。 Google C

              発展する Anthos - より使いやすく、より多くのワークロードに対応 | Google Cloud 公式ブログ
            • キンドリルとは何者か? 何ができ、何が新しいのか

              IBMのマネージドインフラストラクチャサービス部門が独立して設立されたKyndryl。ベンダーやSIerの「コト売り化」が進み競合ひしめく中、キンドリルジャパンは何を狙い、どのようなスタンスで顧客に臨むのか。 2021年9月1日付でIBMから独立し、インフラストラクチャサービスを提供する企業としてスタートを切ったKyndryl。エンジニアを中心に全世界で9万人規模の従業員を抱える同社は、日本ではキンドリルジャパン(キンドリル)としてサービスを展開する。 多くの企業がデジタルトランスフォーメーション(DX)に取り組む中、ベンダーやSIerにも従来の在り方の見直しが迫られている。「製品販売」「人材派遣」だけでなく、技術以外の課題解決を含めて「顧客に寄り添う」ことをうたう競合がひしめく中、キンドリルはどのようなスタンスで市場に乗り出すのか。キンドリル 執行役員 最高技術責任者(CTO)の澤橋松王

                キンドリルとは何者か? 何ができ、何が新しいのか
              • IBM Cloud大阪リージョンが稼働開始。東京リージョンと同じく3つのゾーンで構成。リージョン間の通信費無料

                IBM Cloud大阪リージョンが稼働開始。東京リージョンと同じく3つのゾーンで構成。リージョン間の通信費無料 IBM Cloudは、大阪リージョンの稼働開始を発表しました。IBM Cloudの日本国内においては、東京リージョンに次ぐ2番目のリージョンとなります。 東京リージョンと大阪リージョンを組み合わせて利用することにより、可用性の高いシステムや自然災害や事故などに対応するバックアップなど、BCP(Business Continuity Plan)を考慮したクラウド環境を日本国内に確保することが可能となります。 また、大阪リージョンも東京リージョンと同様に3つのゾーンから構成されています。ゾーンは独立した電気系統、機器、ネットワーク機器で構成されているため、別のゾーンの物理的障害などから影響を受けることはありません。 そのうえで各ゾーンは、2ミリ秒以下の低遅延かつ1Tbps以上の広帯域

                  IBM Cloud大阪リージョンが稼働開始。東京リージョンと同じく3つのゾーンで構成。リージョン間の通信費無料
                • メルカリグループ各社のBackendエンジニアに聞いた「うちの会社に合うのは、こんな人!」 | mercan (メルカン)

                  ソウゾウのソフトウェアエンジニア/エンジニアリングマネージャー。2010年にDeNAへ入社し、ソーシャルゲームや新規事業のBackend/iOS開発を担当。2016年に旧ソウゾウに入社し、メルカリ「アッテ」を開発。2018年メルペイ立ち上げのタイミングでProduct Managerとしてジョイン。Backendチームのエンジニアリングマネージャー、Manager of Engineering Managersを経て、2021年4月から新ソウゾウへ異動。現在は組織開発や採用をメインに担当。 まずは各社の特徴をご紹介 サービス拡大や立ち上げ…それぞれのフェーズの開発体制は? ーそれぞれが提供しているサービスやフェーズ、開発体制を教えてください。 @CaDs:メルカリは、日本最大級のCtoCマーケットプレイスを提供しています。それもあって、エンジニアリング部門の規模は、メルペイやメルコイン、ソ

                    メルカリグループ各社のBackendエンジニアに聞いた「うちの会社に合うのは、こんな人!」 | mercan (メルカン)
                  • 2020-11-10のJS: Socket.IO 3.0.0、core-js 3.7.0、SvelteKit

                    JSer.info #513 - Socket.IO 3.0.0がリリースされています。 Release 3.0.0 · socketio/socket.io-client Socket.IO 3 Release | Socket.IOのリリース記事では、 現在ではWebSocketsのfallbackとしてのSocket.IOの機能はそこまで重要ではありませんが、auto-reconnectionような機能などには引き続き価値があるという話が書かれています。 2.xから3.0.0への変更点やマイグレーションについては次のページにまとめられています。 Migrating from 2.x to 3.0 | Socket.IO Engine.IO 4へのアップデートも含まれています。 破壊的な変更として、maxHttpBufferSizeが100MBから1MBに変更、CORSの設定方法の変更

                      2020-11-10のJS: Socket.IO 3.0.0、core-js 3.7.0、SvelteKit
                    • スパコン富岳の「生みの親」が貫いた理想、目指したのは1番にあらず

                      富岳は「世界一のスーパーコンピューター」として華々しくデビューした。開発プロジェクトを率いたのはソフトウエアの研究者である石川裕だ。京の100倍の実行性能を達成する一方で貫いた理想があった。 新型コロナウイルスの感染拡大を受けて理化学研究所のスーパーコンピューター富岳の運用が1年前倒しで始まった。新型コロナと戦うため急きょ研究者に提供を開始した富岳だが、2020年7月に早速、京都大学の研究チームが治療薬の候補物質を発見するなど成果を上げている。 先代の京の理論性能を100倍上回るエクサスケールマシン(1秒間に10の18乗回の浮動小数点演算が可能なスパコン)の開発を目指す「フラッグシップ2020プロジェクト」は2014年4月に始まった。プロジェクトを率いたのが理研の石川裕だ。 石川は並列分散システムソフトウエアやクラスターシステムの研究者で、東京大学情報基盤センターに在籍していた。「特殊なも

                        スパコン富岳の「生みの親」が貫いた理想、目指したのは1番にあらず
                      • nikezono.dev

                        この記事は データベース・システム系 Advent Calendar 2023 (opens in a new tab) の16日目の記事です. 深い意味はない この記事はポエムです.また,Redbookの6章 (opens in a new tab) や Peter Bailis のブログ (opens in a new tab) がほぼ同じ話をしているので,この記事を読むよりこちらを読まれたほうがより深い理解が得られます. TL;DR; Serializableという概念は便利.しかし,使われていない Serializableでなくとも要件が満たされるシステムが世の中には多い ワークロードによってはそもそも Weak Consistency でも Serializable と等価 それでも,Weak Consistency と Serializable の差分の定式化(すなわち,Ano

                        • 公開論文から学ぶ Google のテクノロジー : パート 1:分散処理基盤(コンテナ技術)とデータセンター編 | Google Cloud 公式ブログ

                          Google Cloud のサービスは、Google が長年に渡って構築してきたグローバルネットワーク、そして、世界各地のデータセンターによって提供されています。これは、Google 検索をはじめとするさまざまな Google のサービスを支えるインフラでもあり、その上では、Google 独自の技術を活用したさまざまなミドルウェアが稼働しています。 Google Cloud で提供されるマネージドサービスの多くは、これらのミドルウェアをマルチテナント化して提供しているものであり、いわば、Google Cloud を利用することで、Google 以外の企業でも「Google のサービスを支える技術」が活用できるのです。Google Cloud を活用する開発者の中には、このような Google の技術に興味を惹かれて、Google Cloud を使い始めたという方も少なくないかも知れません。

                            公開論文から学ぶ Google のテクノロジー : パート 1:分散処理基盤(コンテナ技術)とデータセンター編 | Google Cloud 公式ブログ
                          • マイクロサービスの課題を克服するsagaパターンについて

                            最近、「マイクロサービス」や「分散処理」について考えていました。 その際に、DynamoDBやMongoDBなど、一貫性に弱点のあるDBはどのようにトランザクションを克服しているのか気になりましたので、その際に使用する手法の一つであるsagaパターンを紹介します。 sagaパターンで解決できる課題 マイクロサービス化を行うことで主に下記のような問題が出るかと思います。 トランザクション管理の複雑性 エラー処理とロールバック 各サービスの状態管理と一貫性の確保 サービス間の疎結合性の維持 こういった課題に対するアプローチとして、sagaパターンを用いることで軽減することができます。 sagaパターンとは Sagaパターンは分散システムでサービス間のトランザクションを管理し、一貫性を保証する設計の一つです。 代表的な2つのアプローチがあります。コレオグラフィとオーケストレーションです。 オーケ

                              マイクロサービスの課題を克服するsagaパターンについて
                            • クラウドネイティブデータベースを実現する技術(の一端)を理解してみた - NTT Communications Engineers' Blog

                              はじめに こちらは NTT Communions Advent Calender 2021 の 24 日目の記事です。 はじめまして、データプラットフォームサービス部の tnkgw と申します。 普段は、Smart Data Platform の契約管理機能を開発しています。 本記事では、クラウドネイティブデータベースを実現する技術の一端を理解するということでAlibaba Cloud で提供されている PolarDB のファイルシステムである PolarFS で用いられている分散合意プロトコルの ParallelRaft 1について解説します。 Raft Raft は Ongaro らにより提唱された2理解と実装のしやすさに重きをおいて考案された分散合意アルゴリズムです。 この章では、本記事を読むにあたって前提知識となる Raft の各要素について概要を紹介します。 Raft が実現する

                                クラウドネイティブデータベースを実現する技術(の一端)を理解してみた - NTT Communications Engineers' Blog
                              • サービスメッシュ必読ガイド - 第2版: 次世代のマイクロサービス開発

                                2016年頃「サービスメッシュ」という用語は、マイクロサービス、クラウドコンピューティング、DevOpsの分野に登場しました。楽天的なあるチームは、2016年にこの用語を使用して彼らの製品である Linkerd を説明しました。コンピューティングの多くの概念と同様に、実際には、関連するパターンとテクノロジーの長い歴史があります。 サービスメッシュの登場は、主に IT ランドスケープの最悪の状況によるものでした。開発者は、複数言語 (ポリグロット) アプローチを使用して分散システムの構築を開始し、動的なサービスディスカバリーを必要としていました。運用は一時的なインフラストラクチャの使用を開始し、避けられない通信障害を適切に処理し、ネットワークポリシーを適用したいと考えていました。プラットフォームチームは、Kubernetes などのコンテナオーケストレーションシステムの採用を開始し、Envo

                                  サービスメッシュ必読ガイド - 第2版: 次世代のマイクロサービス開発
                                • CMUのソフトウェア工学修士を修めた - pco2699’s blog

                                  昨年12月にCMUのソフトウェア工学修士を無事に修めました。主に昨年 秋学期の振り返りをしようかと思います。入学から秋~春ぐらいのお話は以下の過去記事を参照ください。 blog.pco2699.net blog.pco2699.net blog.pco2699.net 授業 今年の秋は、「Advanced Distributed And Operating Systems」という CSのPhD向けのクラスを取りました。 www.cs.cmu.edu 授業はCSの論文のディスカッション、グループプロジェクトで構成されます。学期前半はDynamoやMapReduce、Tenserflowなど著名な分散システムやオペレーティングシステムの論文を読んでディスカッションを行います。学期後半は、グループプロジェクトとして、3人グループで論文を書きます。 この授業の教授がシステム界隈では有名な方らしく、

                                    CMUのソフトウェア工学修士を修めた - pco2699’s blog
                                  • 私の考える最強のNostrプロトコル拡張(考え中) - Ryoの開発日記 Neo!

                                    分散システムに明るいと自称している私なので、Nostr *1なアプリケーション(ここではマイクロブログ型SNSとする)をスケール可能(全体のユーザ数が増加しても使えるものであり続ける)にするためにはどうすればよいかと、思考実験レベルで考えてみている。 これならいける!というところにはたどり着いていないけれど、アイデアとか、糸口になるかなーみたいな気づきはあったのでここに記す。 Nostrの特徴として維持されないといけないこと 大事。 中央集権的なサーバに頼らない リレーサーバは気軽に建てられて運営をやめてもユーザに迷惑がかからない (ボランティアベースになるというところはひとまず仕方がない、ということにしておく) リレーサーバに要求されるマシンスペックや通信リソースがべらぼうな量にならない クライアントはそれなりに遅延なくデータを取得できる (ピュアP2Pなアーキ等だと遅くなりがちであると

                                      私の考える最強のNostrプロトコル拡張(考え中) - Ryoの開発日記 Neo!
                                    • イベントソーシングフレームワーク、Sekibanの開発に至る経緯と開発中の試行錯誤

                                      株式会社ジェイテックジャパン CTOの高丘 @tomohisaです。この記事は私たちジェイテックジャパンの作成しているイベントソーシング・CQRSフレームワークがリリースされてしばらく経ったので開発に至るきっかけやこれまでの歴史をまとめてみました。 Sekiban開発に至る経緯 複雑さに対応するアーキテクチャの必要性 当初、私たちはシンプルなMVCで開発を行っておりました。しかしながら、Fatコントローラーが生じる問題や、モデルにビジネスロジックをまとめる難しさから、メンテナンスが困難なシステムへと変化してしまいました。 そこで、弊社ではDDDというドメイン駆動設計を導入しました。初期段階では「軽量DDD」もしくは「とりあえずレイヤー化したオニオンアーキテクチャ」でした。しかし、リポジトリの抽象化によって、コードのテストが劇的に書きやすくなりました。また、多くのビジネスロジックがドメインに

                                        イベントソーシングフレームワーク、Sekibanの開発に至る経緯と開発中の試行錯誤
                                      • イミュータブルデータモデルにおける "削除フラグ" について考える

                                        イミュータブルデータモデリング Q. イミュータブルデータモデリングについて教えてください。 A. 以下、ChatGPT の回答です。 イミュータブルデータモデリング(Immutable Data Modeling)は、データモデリングのアプローチの一つで、データを不変(変更不可)な形式で扱う方法です。このアプローチでは、データが一度生成されたら、その値を変更せず、新しいバージョンを作成することが一般的です。イミュータブルデータモデリングは、分散システム、バージョン管理、データの整合性、履歴のトラッキングなどのさまざまな領域で有用です。 以下は、イミュータブルデータモデリングの主要な特徴と利点です。 データの安定性と信頼性: データが不変であるため、一度データが記録されたら、それを変更することができないため、データの信頼性と安定性が向上します。これは、エラーやバグがデータを破損させる可能性

                                          イミュータブルデータモデルにおける "削除フラグ" について考える
                                        • コスト意識は“現場レベル”での浸透が必要 システム肥大化で上がったコストをどう削減するか

                                          “コストの壁” 春日重俊氏(以下、春日氏):土橋さんのインタビュー動画でした。続いて、コストの壁といったところです。土橋さんと一緒にやったFALCONという分散システム導入するというところで、ようやくサービスを安定的に運用できるという、僕の心理的なところの1つのプレッシャーが解かれたところがありました。 この後に待っていたのが、その後のビジネスをよりGrowthさせてかないといけないので、やはりサービスを安定運用させるためには、コストがどんどん上がってしまっていたような状況でした。 ヘルシーにきっちり儲かるビジネスにしないといけないところがあり、そのコストの壁といったところで、どういうふうにChatworkがいろんな施策を通じて、システムをさらにバージョンアップさせていったのかについて、これから話したいと思っています。 先ほどの分散システムを導入したといったときのアーキテクチャです。、スラ

                                            コスト意識は“現場レベル”での浸透が必要 システム肥大化で上がったコストをどう削減するか
                                          • [レポート]Everything fails, all the time:分散システムにおける耐障害性のある設計について #AP-19 #AWSSummit | DevelopersIO

                                            AWS Summit tokyo 2023の「Everything fails, all the time:分散システムにおける耐障害性のある設計について」のセッションレポートです。 セッション概要 【スピーカー】 アマゾン ウェブ サービス ジャパン合同会社 グローバル・オートモーティブ事業部 シニアソリューションアーキテクト 小林 芙美 システムは必ず壊れます。マイクロサービスのような分散システムや、AWS のマネージドサービスを活用したクラウドネイティブなシステムは、上手く設計することで高い耐障害性を実現できます。一方でコンポーネント間の連携が複雑化することで障害の原因特定が困難になったり、挙動を完全に予測することが困難になります。このような分散システムにおいて、高い耐障害性を備えたシステムを設計するための方法をお話しします。 セッション視聴 5/22からAWS Summit Tok

                                              [レポート]Everything fails, all the time:分散システムにおける耐障害性のある設計について #AP-19 #AWSSummit | DevelopersIO
                                            • AWS Application Composerでサーバーレスワークロードを可視化し、作成する | Amazon Web Services

                                              Amazon Web Services ブログ AWS Application Composerでサーバーレスワークロードを可視化し、作成する この記事は、プリンシパル スペシャリスト ソリューションアーキテクトのLuca Mezzaliraが書きました。 本日(2022年12月1日)、AWSは、複数のAWSサービスからサーバーレスアプリケーションを構築するために使用できるビジュアルデザイナー、AWS Application Composer のプレビューを開始します。 分散システムにおいて、チームに権限を与えることは、開発者がビジネス能力をコードに変換するのを支援するために必要な文化的な転換です。 これは、すべてのチームが孤立して働くことを意味するものではありません。異なるチームや新規の参加者であっても、プロジェクトに貢献するためには、自分たちが何を作っているのかを理解する必要があります

                                                AWS Application Composerでサーバーレスワークロードを可視化し、作成する | Amazon Web Services
                                              • NATSに入門する - TECHSTEP

                                                今回はメッセージングシステムの一つであるNATSを試してみました。 NATSとは 分散システムにおけるアプリケーションとサービス間のコミュニケーションは複雑で理解が難しいものとなります。現代のメッセージングシステムは複数のコミュニケーションパターンをサポートする必要があり、それに加えてセキュリティ・マルチテナンシー・拡張性など多様な要素も求められています。 NATSはこれらの要求を満たすために開発されたソフトウェアで、以下のような特徴を備えています。なおNATSはNeural Automatic Transport Systemの略称です。 複数のメッセージングパターンのサポート NATSはSubjectをベースとしたメッセージングシステムで、PublisherがSubjectに対してメッセージを送信し、Subjectと紐づくSubscriberへメッセージを転送します。Subjectは、

                                                • AWS認定SAA(ソリューションアーキテクト アソシエイト)合格体験記 - シー・エス・エス イノベーションラボ(ブログ)

                                                  皆さん、初めまして。エンタープライズ・システム開発四課のYです。 私は4月からAWSおよび開発技術習得という社内のスキルチェンジプロジェクトに配属されていました。 ※スキルチェンジプロジェクトについての記事はこちら blog.css-net.co.jp 以前は、C#を使用したアプリケーション開発を行っていたため、AWSに触れたのはこの時が初めてでした。スキルチェンジプロジェクトを通して、AWS認定ソリューションアーキテクト アソシエイト(以下、SAA)合格に至った体験を記していきます。 1.AWS認定SAAとは 2.試験について 2-1. 試験概要 2-2.申し込み 2-3.合否 3.社内での取り組み 4.個人での学習期間/学習方法 4-1.期間 4-2.教材 5.試験の感想 1.AWS認定SAAとは 引用:[AWS 認定](https://aws.amazon.com/jp/certif

                                                    AWS認定SAA(ソリューションアーキテクト アソシエイト)合格体験記 - シー・エス・エス イノベーションラボ(ブログ)
                                                  • 【リッチなerrors】cockroachdb/errorsとは

                                                    モチベーション CockroachDBのcoding guidelinesを読んでいた際に、今回紹介するcockroachdb/errorsパッケージを発見しました。 調べてみたところ、日本語で紹介されている記事等がなかったので今回この記事を書きました。 cockroachdb/errorsとは cockroachdb/errorsは、CockroachDBを開発しているCockroach Labsが提供しているパッケージです。 READMEには「分散システムに適した方法でのエラーのネットワークポータビリティを提供する。」とあり、CockroahcDB:の実装のためのエラーハンドリング用のパッケージだということがわかります。 他のerrorsパッケージとの比較はcockroachdb/errorsのREADMEの方に書かれているので、ぜひそちらをご覧ください。 主な機能 ここからはcock

                                                      【リッチなerrors】cockroachdb/errorsとは
                                                    • 新規サービスで分散システムにおける責務分解とパフォーマンスのトレードオフを考えた話 - asoview! Tech Blog

                                                      アソビュー! Advent Calendar 2024の19日目(表面)です。 アソビューにて海外事業を担当している江部です。今年の前半まではCTOで、今年からは心機一転して海外事業責任者を拝命し、これまでの国内向けサービスを拡張して海外向けのサービスを新規事業として立ち上げることにチャレンジしています。 役割は事業責任者ですが、MVP開発フェーズ終盤においてはプロダクトチームと一緒に開発に取り組んでいます。 今日はこの海外事業を立ち上げるにあたって、アーキテクチャ上の責務分解とシステム全体の性能のトレードオフについて悩んだことがあったので、そのお話をネタにしていきたいと思います。 背景 起こった問題 問題の原因 対策の検討 ① キャッシュで対応 長所 短所 ② 共通基盤のAPIをサイトに最適化 長所 短所 今回の私達の選択 最後に 背景 前述の通り、アソビューでは海外のレジャーやアクティ

                                                        新規サービスで分散システムにおける責務分解とパフォーマンスのトレードオフを考えた話 - asoview! Tech Blog
                                                      • Google Cloud Storage にリーダー選出を実装 | Google Cloud 公式ブログ

                                                        ※この投稿は米国時間 2021 年 1 月 14 日に、Google Cloud blog に投稿されたものの抄訳です。 リーダー選出とは、分散システム実装の際に一般的に適用されるパターンです。たとえば、MySQL などのレプリケートされたリレーショナル データベースや、Apache Zookeeper などの分散 Key-Value ストアは、レプリカの中からリーダー(マスターと呼ばれることもあります)を選出します。すべての書き込みオペレーションはリーダーを経由するため、システムに書き込みを行うのは常に 1 つのノードのみです。これは、書き込みが失われたり、データベースが破損したりしないようにするためです。 分散システムのノードの中からリーダーを選出するのは、ネットワーク接続されたシステムと時刻同期の性質により、難しい場合があります。この記事では、リーダー選出(一般的には「分散ロック」と

                                                          Google Cloud Storage にリーダー選出を実装 | Google Cloud 公式ブログ
                                                        • [レポート] モノリスかマイクロサービスか、その選択に迷っている人へ届けたい話 #devio_day1 #main | DevelopersIO

                                                          こんにちは。 ご機嫌いかがでしょうか。 "No human labor is no human error" が大好きな吉井 亮です。 2023年4月11日に開催されたクラスメソッド株式会社のイベント、DevelopersIO DayOne で「モノリスかマイクロサービスか、その選択に迷っている人へ届けたい話」とタイトルで登壇しましたのでスライドを公開します。 マイクロサービス導入ステップやチーム作りの観点から解説しました。 スライド スーパー概要 マイクロサービスに向いてない/向いているアプリケーション モノリスは悪くない マイクロサービスの導入 達成したいことは? 別の方法はなかったのか? KPI は? 分散システムの罠にハマらないように マイクロサービス導入へのステップ マイクロサービスへの移行パターン チーム作り コンウェイの法則 ルース・マラン 逆コンウェイ戦略 マイクロサービス

                                                            [レポート] モノリスかマイクロサービスか、その選択に迷っている人へ届けたい話 #devio_day1 #main | DevelopersIO
                                                          • 私はこうしてGoogleに入社した(アイルランド編)|KotaのXにはかけない雑多なこと

                                                            こんにちはKotaです。 アイルランド在住ソフトウェアエンジニアです。Googleアイルランドに勤めております。 今まで自分がアイルランドへ来た経緯とかは一部の人にしか話してなくて「なんでアイルランドなの?」って聞かれることが多くあったので、この記事を残そうかと思います。だいぶ長くなっちゃいましたが全部読んでくれたらとても喜びます。最後に有料コンテンツとしてオファー額+αを載せていますので興味がある人は買ってみてください。 リクルーターからの接触(2019/12)2019年12月にリクルーターからの最初のメールが来ました。渋谷オフィスができて、オフィスに人を集めたいから受けないか?とのことでした。学生時代に一度Googleを受けて落ちた経緯があってそのリストを使って連絡してきたそうです。前職には特に不満はなかったですが、最終面接まで行ったら渋谷オフィスのランチが食べられるし、どーせ受からな

                                                              私はこうしてGoogleに入社した(アイルランド編)|KotaのXにはかけない雑多なこと
                                                            • Microservice, Data, and Data Mesh

                                                              Developers Summit 2022 登壇資料 アプリの世界観が変わり、分散システムが特別な選択肢では無い事も増えてきました。アプリをより小さな単位で構成する概念は広く認知されましたが、一方、データストアの分割、分割されたデータストア間での整合性の確保にはまだ多くの課題があります。 本セッションでは分散システムにおけるデータ整合性と、それを支えるApache Kafkaの役割についてご説明します。また将来のステップとして、ドメイン駆動化されたデータを"Data as a Product"として横断的に活用するData Meshの構想についてご説明します。

                                                                Microservice, Data, and Data Mesh
                                                              • Facebookの仮想通貨「Libra」が「Diem」に改称、運営組織も再編

                                                                2020年12月1日に、Facebookが主導する仮想通貨「Libra」の名称が「Diem」へと変更されました。これに伴い、Libraの発行や管理を行う「Libra協会」も、「Diem協会」へと改名することが決まりました。 Announcing the name Diem. Executive leadership in place in preparation for launch. | Diem Association https://www.diem.com/en-us/updates/diem-association/ Facebook-Backed Libra Association Changes Its Name to Diem - Bloomberg https://www.bloomberg.com/news/articles/2020-12-01/facebook-ba

                                                                  Facebookの仮想通貨「Libra」が「Diem」に改称、運営組織も再編
                                                                • 【海外記事紹介】SQLiteを大規模なサーバーサイドシステムで利用するのが今後トレンドになるかもしれない

                                                                  3月4日、海外スタートアップRivetが「SQLite-on-the-Server Is Misunderstood: Better At Hyper-Scale Than Micro-Scale」と題したブログ記事を公開した。この記事では、サーバー環境におけるSQLite活用が大規模スケールでどのように有効なのかについて詳しく紹介されている。以下に、その内容を紹介する。 3月4日、海外スタートアップRivetが「SQLite-on-the-Server Is Misunderstood: Better At Hyper-Scale Than Micro-Scale」と題したブログ記事を公開した。この記事では、サーバー環境におけるSQLite活用が大規模スケールでどのように有効なのかについて詳しく紹介されている。以下に、その内容を紹介する。 Rivetは新しいオープンソースのセルフホスティ

                                                                    【海外記事紹介】SQLiteを大規模なサーバーサイドシステムで利用するのが今後トレンドになるかもしれない
                                                                  • 『n月刊ラムダノート』Vol.5 No.1(2025)発行のお知らせ

                                                                    いつもご来店ありがとうございます。計算機好きのための技術解説情報誌『n月刊ラムダノート』Vol.5 No.1の発売開始のお知らせです。本号は以下の3つの記事でお送りします。 著名な数学者からも注目を集める関数型言語Leanのチュートリアルを通し、数学とプログラミングの深いつながりを感じる「自然数を作って学ぶLean言語」(井上亜星 著) ブラウザが文字列を描画するときに背後で何が起きているのか、Chromiumの実装を辿りながらWebの表現への理解を深める「Chromiumはテキストをどのように描画しているのか」(佐藤可奈留 著) 分散システムが気になってる人から計測したい人まで、合意アルゴリズムの一般的な説明にとどまらない具体的なRaftの姿が見える「実用Raft」(太田 健 著) どこで買えるの? 『n月刊ラムダノート』のお求めは、当サイトの直販をご利用ください。PDF版はすぐにダウン

                                                                      『n月刊ラムダノート』Vol.5 No.1(2025)発行のお知らせ
                                                                    • 「ソフトウェアアーキテクチャ・ハードパーツ」の情報リンク~マイクロサービスの設計技法の課題は何なのか - プログラマの思索

                                                                      ソフトウェアアーキテクチャ・ハードパーツ ―分散アーキテクチャのためのトレードオフ分析を読んでいて、まだ中身を理解できていない。 ネット上の感想記事を自分用にリンクしておく。 【参考】 『ソフトウェアアーキテクチャ・ハードパーツ』 - Don't Repeat Yourself (引用開始) また、最近話題になっていた『ソフトウェアアーキテクチャの基礎』(以降、「基礎」)を執筆した著者陣が書いたもう一冊の本でもあります。 「基礎」はアーキテクトとしての姿勢や、それぞれのアーキテクチャの簡単な概要が中心でしたが、この本はより実践に近く方法論寄りです。「基礎」が「What」を扱うとすれば、本書は「How」を扱うといった関係性でしょうか。 (引用終了) (引用開始) 現代ではデータをどのように設計し、分割しつつ整合性を保って保管しておくかといった一連の流れの重要度が増しています。この問題について

                                                                        「ソフトウェアアーキテクチャ・ハードパーツ」の情報リンク~マイクロサービスの設計技法の課題は何なのか - プログラマの思索
                                                                      • ICSアプローチに基づくドメイン駆動設計の戦略的設計 - Qiita

                                                                        ドメイン駆動設計の戦略的設計では、主にマイクロサービス形式によるサービス指向アーキテクチャ(SOA)を使用したクラウドを使用した分散型システムを使用する。 海外ではマイクロサービスの設計の失敗事例が数多くあり、設計思想に何らかの欠陥があるのではないかと考えた。 事例を研究した結果、アメリカ式のドメイン駆動設計の戦略的設計に問題があるという結論に達した。 アメリカ式のドメイン駆動設計の戦略的設計は、テクノジーに偏重した高スペック重視の設計方法。 スペックを高めるために、クラウド上の外部サービスを使用した結果、設計が複雑化し、サービスが追加されるほど複雑化が加速し、分散システムが破綻する。 マイクロサービス形式による分散型システムにはシンプルで簡易な設計思想が必要である。 そこで、ロシア式のドメイン駆動設計の戦略的設計であるICSアプローチを使用する方法を紹介したいと思う。 ICSアプローチと

                                                                          ICSアプローチに基づくドメイン駆動設計の戦略的設計 - Qiita
                                                                        • 「eBPF」の利点とその登場が及ぼすクラウドネイティブへの影響とは? | 東京エレクトロンデバイス

                                                                          このコラム欄で2022年8月に公開した記事「Dockerコンテナと関連技術をやさしく解説 (最終回) Dockerコンテナと関連技術は今後どのように進化していくのか?」で、クラウドネイティブ関連でさらに注目度が高まる技術は「eBPF」と「WebAssembly」であると書きました。今回は、そこでは書き切れなかったeBPFに関する動向を紹介します。 eBPFとは、Linuxカーネルのコードを変更することなく、カーネルの持つさまざまな機能をフックすることで、カーネルに対して動的な機能拡張を実現する技術です。Linuxのカーネルの動的な機能拡張が、なぜクラウドネイティブの文脈で注目されているのか。最大の理由はネットワーク機能の拡張にあります。 一般にクラウドネイティブなアプリケーションと言えば、複数のサービスをネットワーク経由で相互に連携させる分散システムとなります。このとき、サービス間の認証、

                                                                            「eBPF」の利点とその登場が及ぼすクラウドネイティブへの影響とは? | 東京エレクトロンデバイス
                                                                          • Data Observability の概要

                                                                            本記事は、某コミュニティで Data Observability について議論するために書き下したメモです。もし Data Observability について議論されたい方は気軽にコメントください。 概要 Data Observability を直訳するとデータの可観測性。あくまでデータを観測できるようにする技術分野であって、 Data Observability すなわち、データ品質ではない。 本来の意味合いは、外部から観測可能な出力を使って、複雑なシステムの内部状態や振る舞いを観測可能にすること。それにより、対象システム(あるいはデータ)をより理解できるようにする。よく理解できるようにした結果、データの品質やパフォーマンスの最適化などの取り組みを楽にできる場合がある。ただし、ツールやサービスを入れると自動的に実現できるわけではない。 語源は制御工学分野の Observability

                                                                              Data Observability の概要
                                                                            • RDSとDynamoDBをCAP定理、ACID、BASEを使って整理する - Qiita

                                                                              AWSの2大データベースであるRDSとDynamoDB、シンプルに初心者向けに何が違うのか、違いが簡単にわかるような説明を考えてみます。 はじめに 初めてAWSのアーキテクチャーを考えるときに、最近ではサーバーレスな設計がごろごろ落ちているため、初めてシステム設計をする場合でも、NoSQLデータベースである、DynamoDBを使ったシステム構成が描けてしまいます。私が駆け出しのころは、Oracleまっさかりで、RDBを使ったシステム構成しか描けなかったものです。あらためて今回CAP定理という言葉をつかって初心者向けに比較してみたいと思います。 CAP定理 と ACID と BASE を知っておこう 分散コンピューティングの考え方として、CAP定理、ACID、BASEを整理してみます。データベースを比較するときにかならず取り上げられる特徴になります。なかなか理解できませんが絵のように頭に焼き

                                                                                RDSとDynamoDBをCAP定理、ACID、BASEを使って整理する - Qiita
                                                                              • データエンジニアリングの要諦の後ろ髪を掴む - Fundamentals of Data Engineeringを読んで - じゃあ、おうちで学べる

                                                                                最強なデータ分析基盤は何か⁉︎多種多様なデータ分析基盤が、制約のない環境で競合した時… ビジネス用途に限らず、あらゆるシナリオで使用可能な「データ分析」で比較した時、最強なデータ分析基盤は何か⁉︎ 今現在最強のデータ分析基盤は決まっていない データ分析基盤まとめ(随時更新) などもあり大変参考にさせていただきました。ありがとうございます。 はじめに データエンジニアリングは、データの収集、処理、保存、そして提供を行う技術やプロセスを扱う複雑な分野です。この分野の全容を系統的に把握することは決して容易なことではありません。このような状況の中で、『Fundamentals of Data Engineering』という書籍に出会いました。この本は、著者たちの豊富な実務経験に基づいて書かれており、データエンジニアリングの基本概念とそのライフサイクルに焦点を当てています。さらに、これらの概念を現実

                                                                                  データエンジニアリングの要諦の後ろ髪を掴む - Fundamentals of Data Engineeringを読んで - じゃあ、おうちで学べる
                                                                                • Debezium Usecases in Tabelog - Tabelog Tech Blog

                                                                                  はじめに こんにちは。食べログシステム本部 技術部 マイクロサービス化チームの栗山です。 マイクロサービス化チームのミッションは「巨大なモノリシックサービスにおける開発の辛さを解消し、少人数のチームが自律的に意思決定しながら開発するためのシステム基盤を作る」です。2021年の Advent Calendar ではチームの成果として、食べログのレストラン検索インデックス同期システムを Change Data Capture (CDC) プロダクトの Debezium により改善した事例と、1 メッセージング基盤を Apache Kafka にリプレイスした事例を紹介しました。2 マイクロサービス化チームが提供するシステム基盤には例えば分散トレーシングのように特定の課題に特化したものもありますが、中には様々な課題に応用できる基礎技術的なものもあります。Change Data Capture (

                                                                                    Debezium Usecases in Tabelog - Tabelog Tech Blog