並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 869件

新着順 人気順

分散システムの検索結果321 - 360 件 / 869件

  • XStateを支える概念と実装方法について - STORES Product Blog

    最初に STORES 予約 の開発をしているTak-Iwamotoです。 STORES 予約 は元々 Coubic というサービス名でリリースされ、heyにジョインしたタイミングで STORES 予約 としてリブランディングされました。 ただ、今でもエンドユーザーさまが予約する画面は Coubic の名称となっています。 この Coubic はNext.jsで作られており状態管理のライブラリはReduxを使用しているのですが、良くないReduxの使い方によって改修に時間がかかったり、コードの見通しが悪い箇所があります。 詳しくはこちらの記事をご覧ください。 そういった背景があり、状態管理のリファクタリングの一環でRedux -> XStateへの移行を検討中です。(ただ、優先順位の都合でまだ本格的に移行はできていません。) この記事ではXStateのコアとなる概念、Coubicで抱えている

      XStateを支える概念と実装方法について - STORES Product Blog
    • WasmOS: Wasmを実行する自作マイクロカーネル

      背景 WebAssembly(Wasm)をブラウザの外で活用するためにWASIの標準化が進められています。その目的は隔離され、制限されたWasmの実行環境を作ることですが、これは難しい挑戦です。WASMの安全性は外部APIの能力に依存するため、WASIの標準化は慎重に行う必要がありますが、これには多くの時間がかかります。私はこれがWASIXやWALIといった新しいシステムインタフェースが登場した原因の一つであると考えています。汎用だったはずのWasmバイナリは既にランタイム依存になりつつあります。 WASIでセキュリティを考え、苦労して「第二のOS」を作る必要があるという事実は、既存のOSが今の時代に即したものでないことを示唆します。ならばいっそ、新しいOSを作ってしまうのはどうでしょう? この記事ではWasmを実行する自作マイクロカーネルである、WasmOSを紹介します。 WasmOS

        WasmOS: Wasmを実行する自作マイクロカーネル
      • 5GキャリアのエッジロケーションにAWSを設置、モバイルデバイスから利用できる「AWS Wavelength」発表。国内ではKDDIが提携。AWS re:Invent 2019

        5GキャリアのエッジロケーションにAWSを設置、モバイルデバイスから利用できる「AWS Wavelength」発表。国内ではKDDIが提携。AWS re:Invent 2019 AWSは米ラスベガスで開催中の年次イベント「AWS re:Invent 2019」で、5GキャリアのエッジロケーションにAWSのインフラを設置する「AWS Wavelength」を発表しました。 これにより5Gのモバイルデバイスから非常に小さなレイテンシでエッジロケーションに置かれたAWSのコンピュートやストレージなどにアクセスできるようになります。 次世代のモバイル通信サービスとして期待されている、いわゆる「5G」は、大容量で低レイテンシなネットワークを実現します。 しかしこの5Gネットワークを通じて、モバイルデバイスからAWSのようなパブリッククラウドへアクセスしようとすると、5Gキャリアのネットワークからイン

          5GキャリアのエッジロケーションにAWSを設置、モバイルデバイスから利用できる「AWS Wavelength」発表。国内ではKDDIが提携。AWS re:Invent 2019
        • 「ぼろぼろでも動けばいい」、クレイジーなアイデアは美しいコードに勝る

          「社会を作り変えたいなら、コードを書くのが一番だ」――。ソフトウエアが世の中を大きく変えている今、それを作り上げるコーダーの存在感は高まる一方だ。優秀なコーダーをひき付けられるかが、企業の競争優位性を大きく左右するまでになっている。本特集では5回にわたって、そんなコーダーたちの実像に迫る。 ハイテク企業の創業者などは、まず、資本主義経済にはあちこち割れ目があり、そこから底辺に滑り落ちてしまう人がいる、しかも、そういう亀裂でふつうの人の暮らしがめちゃくちゃになってしまうことがあると考える人々だと言える。同時に、そういう亀裂を全力で作ろうとしている人々だとも言える。 アマゾンの台頭で小さな商店が減ってしまったこと、ウーバーをはじめとするオンデマンドサービスの台頭でギグと呼ばれる不安定な働き方が増えたこと、オートメーションの普及で法務アシスタントなどの職業がなくなってしまったことなどを見れば明ら

            「ぼろぼろでも動けばいい」、クレイジーなアイデアは美しいコードに勝る
          • AWS OpenSearch (Elasticsearch) Serviceで専用マスターノードは3つが推奨な理由を段階を踏んで理解する - Qiita

            AWS OpenSearch (Elasticsearch) Serviceで専用マスターノードは3つが推奨な理由を段階を踏んで理解するAWSElasticsearch 前提 AWS OpenSearch ServiceでサポートするElasticsearch 7.10.2時点までの内容になります。 ノードが3つ必要という結論に関してはAWS OpenSearchの特別な話ではなく分散システムでの一般的な話になります。 理解のステップ 以下が本記事での理解の流れです。 マスターノードとは何か、他にどんなノードタイプがあるのかを把握する。 専用マスターノードとは何か把握する。 quorumとは何か把握する。 理想のquoram数を出す式がdedicated master nodes / 2 + 1の理由を把握する。 これまでマスター候補ノード(master-eligible node)はなぜ

              AWS OpenSearch (Elasticsearch) Serviceで専用マスターノードは3つが推奨な理由を段階を踏んで理解する - Qiita
            • Dockerを使ってElixirの分散システムを気軽に楽しむ - Qiita

              分散Erlangシステムを楽しむには複数のPCがあるといいのですが、それだと準備が大変で敷居を高く感じるかもしれません。 Dockerを使えば一つのPC上に複数の仮想ホストを簡単に立ち上げられます。それらを別々のPCに見立てれば、気軽に遊べるのではないでしょうか。 やりたいこと Dockerで仮想Linuxマシンを三つ起動してそれらを別々のPCと見立てる それぞれの仮想Linuxマシンでノードを起動する すべてのノードを接続 後は自由に遊ぶ ノードとは 分散Erlangのドキュメントによると A distributed Erlang system consists of a number of Erlang runtime systems communicating with each other. Each such runtime system is called a node. 分散

                Dockerを使ってElixirの分散システムを気軽に楽しむ - Qiita
              • PayPayの各種キャンペーンを支えるキャッシュバックエンジンの仕組み

                2019年7月24日、ヤフー株式会社が主催するサーバーサイドエンジニア向けの勉強会「Bonfire Backend #3」が開催されました。第3回となる今回のテーマは「モバイル決済の裏側」。急速に成長するモバイル決済分野でサービスを展開する企業が一堂に会し、自社サービスの仕組みや技術スタックなど、知られざる裏側を語ります。プレゼンテーション「100億を支える技術 」に登壇したのは、PayPay株式会社の正木一平氏。「100億円あげちゃうキャンペーン」をはじめとした各種キャンペーンを支えるキャッシュバックエンジンの仕組みを解説します。 PayPayの100億円キャンペーンを支える技術 正木一平氏(以下、正木):PayPay株式会社の正木一平と申します。今日は弊社から2人登壇させていただきます。まずは自分からPayPay全体の簡単な紹介と、自分が担当しているキャンペーン・キャッシュバックエンジ

                  PayPayの各種キャンペーンを支えるキャッシュバックエンジンの仕組み
                • いつもニコニコあなたの隣に這い寄るカオスエンジニアリング! / CNDT-OSDT-2019-2G1

                  Cloud Native Days Tokyo 2019 / OpenStack Days Tokyo 2019 Day2 RoomGで講演した内容です。 カオスエンジニアリングは分散システムにおいて障害状態を意図的に作り出し、その状態においてシステムの脆弱性を発見し、改善することでシステムの信頼性を保つためのアプローチです。 Resilienceなシステム開発のために、Microservicesなどの分散システムに携わる開発者、運用者に次の3つを紹介しています。 - カオスエンジニアリングの概要 - カオスエンジニアリングでできること - カオスエンジニアリングを実現するツールの紹介

                    いつもニコニコあなたの隣に這い寄るカオスエンジニアリング! / CNDT-OSDT-2019-2G1
                  • 新たなJavaScript RPCライブラリをCloudflareがオープンソースで提供 ー Web開発・マイクロサービス開発を進化させる可能性も

                    4月6日、CloudflareはCloudflare WorkersにJavaScriptネイティブのRPC(Remote Procedure Call)システムを追加した。 4月6日、CloudflareはCloudflare WorkersにJavaScriptネイティブのRPC(Remote Procedure Call)システムを追加した。 この新機能により、クライアント・サーバー間はもちろん、Worker間の通信も、ほぼボイラープレートなしでシームレスに行えるようになる。 ※RPC(Remote Procedure Call)とは、異なるコンピュータシステム間、または同一システム内の異なるプロセス間で、あたかもローカルのプロシージャ(関数やメソッド)呼び出しのように通信を行う手法。この手法を用いることで、開発者はネットワークの詳細を意識することなく、簡単にシステム間でデータを交換

                      新たなJavaScript RPCライブラリをCloudflareがオープンソースで提供 ー Web開発・マイクロサービス開発を進化させる可能性も
                    • リアルタイム通信サーバーのEC2インスタンス台数を50%削減した割り当て最適化 - Cluster Tech Blog

                      こんにちは、クラスター株式会社でソフトウェアエンジニアをしているMito Memelです。 clusterでは、3D空間内でアバターモーションや音声を同期するためのリアルタイム通信サーバーをAmazon EC2上で動作させています。昨年から今年にかけて、このリアルタイム通信サーバーのリソース割り当て方法を改善し、結果として稼働しているEC2インスタンス台数を半分程度に削減することに成功しました。本記事では、clusterのリアルタイム通信サーバーが抱えていたリソース割り当て効率の課題とその改善手法をご紹介します。 背景 改善手法 まとめ 背景 アバターモーションや音声の同期のようなリアルタイム性の高い双方向通信を行う、いわゆるリアルタイム通信サーバーをスケールアウトする方法には、よくあるやり方としては2種類あります。 1つ目は、Webサーバなどと同じようにアプリケーションサーバをステートレ

                        リアルタイム通信サーバーのEC2インスタンス台数を50%削減した割り当て最適化 - Cluster Tech Blog
                      • 昔から使われている技術用語をさかのぼる: Value Object編

                        考えてみればソフトウェアパターンが賑やかだった時代からはすでに20年以上たっているわけで、20年も変わるといろいろ状況も変わりますし、そんな昔のことなんて知ってるわけない、というか知ったことではない、という人も少なくないと思います。 とはいえ今でも使われている用語について、その当時の使われ方を知ると、考察が深まることもあるかもしれません。 そんな感じでOOPとかパターン方面の用語とかを遡りたい! というときには、WikipediaとかではなくてC2 Wikiを見るのがおすすめです。 C2 Wikiとは Wiki(WikiWikiWeb)の元祖みたいなやつですね。iki-ikiで紹介されています。 例えばValue Objectについて掘りたい、と思った時にはValueObjectで探すと見つかります。単語と単語をつなげるときに、単語の先頭を大文字にする感じです。 とはいえ、C2 Wikiも

                          昔から使われている技術用語をさかのぼる: Value Object編
                        • Debugging Incidents in Google’s Distributed Systems - ACM Queue

                          June 6, 2020 Volume 18, issue 2 PDF Debugging Incidents in Google's Distributed Systems How experts debug production issues in complex distributed systems Charisma Chan and Beth Cooper Google has published two books about SRE (Site Reliability Engineering) principles, best practices, and practical applications.1,2 In the heat of the moment when handling a production incident, however, a team's act

                          • 圧倒的な安全性と高性能を両立、常識を覆す次世代言語「Rust」のすごさ

                            Rustは、現在最も注目を集めているプログラミング言語の1つといっていいだろう。2015年にリリースされ、ここ数年でじわじわとファンとユーザーを増やしてきた。Rustは、言語仕様が比較的難しい部類の言語であることは間違いない。しかし、それを上回る安全性と速度の担保、優れた開発者体験――そして使う楽しさがある。 Rustは本来、オペレーティングシステム(OS)など低レイヤーのソフトウエア開発向けに設計された言語である。しかし、他の用途で使えないわけではない。例えばWeb開発でも、他の言語と遜色のない実力を発揮できる。この連載では、Rustの言語機能について一通り説明した後に、Webアプリケーション開発に利用できる側面を見ていく予定だ。連載が終わるころには、システム開発の現場にRustを導入できるようになることを目指す。 今回は、Rustの概要と特徴について解説する。Rustの特徴はメモリー安

                              圧倒的な安全性と高性能を両立、常識を覆す次世代言語「Rust」のすごさ
                            • フィヨルドブートキャンプのメンター陣が語る「このバイブルに育てられた」学びの一冊 - give IT a try

                              はじめに ちょっと前に「「このバイブルに育てられた」駆け出しエンジニアだった頃に読み込んだ、学びの一冊をご紹介」というweb記事が話題になっていました。 type.jp たぶん、長年ITエンジニアをやっている人なら1冊か2冊はそういった「バイブル」があると思います。 そこでフィヨルドブートキャンプのメンターに「あなたが「このバイブルに育てられた」と思う一冊は何ですか?」という質問をしてみました。 なお、回答者はメンターだけでなく、アドバイザー(メンターではないが、受講生の学習状況を確認できる企業関係者)や卒業生も含まれています。 というわけで、以下がその回答です! 【もくじ】 はじめに メンターの伊藤淳一さん=「情熱プログラマー」 メンターのinoueさん=「リーダブルコード」か「アジャイルサムライ」 メンターのべーたさん=「猫でもわかるC#プログラミング」と「ノンデザイナーズ・デザインブ

                                フィヨルドブートキャンプのメンター陣が語る「このバイブルに育てられた」学びの一冊 - give IT a try
                              • データでわかるRustの開発者達 〜Rust Survey 2021の深堀 | gihyo.jp

                                Rustの開発チームは毎年末にRustユーザのサーベイを行っています。このサーベイは開発者のバックグラウンドから普段使っているツールまで幅広く問うもので、コミュニティの中心がどこにあるのか理解するのに大変役立ちます。特に、周りにRustaceanがいない方にとっては「こういうのってみんなどうしてるの?」という疑問はよく発生するでしょう。そういうときにサーベイの結果はコミュニティのトレンドを追う一助になります。 2021年は2021/12/08から2021/12/22の期間にサーベイが行われました。そこで実施されるアンケートは、英語の他、中国語(簡体字、繁体字⁠)⁠、フランス語、ドイツ語、日本語、韓国語、ポルトガル語、ロシア語、スペイン語に翻訳されました。 例年なら詳細なレポートが提出されるのですが、今年は比較的簡素なもののみであったため、大きな注目は浴びませんでした。その代わりにサーベイの

                                  データでわかるRustの開発者達 〜Rust Survey 2021の深堀 | gihyo.jp
                                • 論文DynamoDB 2022に関するいくつかのメモ

                                  PingCAPはエンタープライズ向けのソフトウェアサービスプロバイダーとして2015年に設立され、オープンソースでクラウドネイティブなワンストップのデータベースソリューションを提供することにコミットしています。PingCAPの代表的なプロジェクトであるTiDBは、オープンソースの分散型ハイブリッド・トランザクション/分析処理(HTAP)データベースで、水平方向の拡張性、強力な一貫性、MySQLとの互換性を備えた高い可用性を特徴としています。 ※このブログは2022年8月12日に公開された英語ブログ「Some Notes on the DynamoDB 2022 Paper」の拙訳です。 著者: Ed Huang (PingCAP共同創設者兼CTO) 編集者: Fendy Feng, Tom Dewan DynamoDBが論文を発表してから長い時間が経ちました。数日前、私はその新しく出版され

                                    論文DynamoDB 2022に関するいくつかのメモ
                                  • OpenTelemetryとgo-chiを繋げてみる | フューチャー技術ブログ

                                    PHP/Rust/Swift/Erlangあたりはコミットチャンス? 2年前からアップデートされていると感じたポイントOpenTelemtryと、その前身のOpenCensusについてはこのブログでも取り上げました。 OpenCensus(OpenTelemetry)とは | フューチャー技術ブログ 基本的な考え方は前回紹介したものと変わっていませんが、2年前からいくつか変わったかも?と思ったところをピックアップするとこんなところですかね。 OpenTelemetryはOpenTelemetry専用のエージェント(ログ中継サービス)の活用も最初から視野に入っており、エージェント向けのエクスポーターも提供されている(OpenCensusにもあったがバージョンが最終版でも0.1.11で安定版ではなかった)。 stdoutロガーが一級市民扱い? トレース、メトリックスという2種類の機能のほかに、

                                    • グラフィカルモデルに基づく因果探索手法の調査 - Fire Engine

                                      最近,因果推論や因果探索に興味を持ち,勉強している.というのも最近,ゆううきさん と一緒に分散システムの異常の原因を即時に診断するための研究を進めている.原因を診断するためのアプローチとして,サーバやコンテナ等から取得できる様々なメトリック(CPU使用率やメモリ使用率など)を(グラフ理論における)ノードとして,因果グラフを構築することを考えている.メトリック同士の単なる「相関」ではなく,結果と原因の関係である「因果」を捉えようとするアプローチである.例えば,システムの障害が発生した場合,相関だけでは,AとBが関連がありそうというところまでしか言えないが,因果を特定できると理想的には,Aの原因はBであるといった議論ができるため,有用だと考えている. 実際に,前述のような因果グラフを構築して障害の原因を特定しようというアプローチは,以下の例に挙げるようにここ数年で増えている印象がある. 「Mi

                                        グラフィカルモデルに基づく因果探索手法の調査 - Fire Engine
                                      • Observabilityをはじめよう!(後編) 〜Metrics/Logs/Tracesチュートリアル〜 | さくらのナレッジ

                                          Observabilityをはじめよう!(後編) 〜Metrics/Logs/Tracesチュートリアル〜 | さくらのナレッジ
                                        • 分散システム内のプロセス間の関係性に着目したObservabilityツールの設計と実装 / Transtracer CNDK2019

                                          CloudNative Days KANSAI 2019

                                            分散システム内のプロセス間の関係性に着目したObservabilityツールの設計と実装 / Transtracer CNDK2019
                                          • 転職活動の記録〜クラウドと英語〜 - fu3ak1's tech days

                                            2023年8月で新卒から約13年半勤めたSIerを退職します。関係者の方々、本当にお世話になりました。 9月から新しい職場で働くのですが、転職活動が初めてということもあり、色々と試行錯誤しながら進めたのでここにまとめたいと思います。 なお、具体的な企業名やそのプロセス、オファー条件はここには記載しません。企業名、特に前職は色々調べるとわかる情報なのですが、企業名で検索してこの記事が出てくるのもちょっと違う気がするのであえて書いておりません。 転職に向けてどう準備、活動したかにフォーカスして書こうと思うので何かしら参考になれば幸いです。 自己紹介、私の経験値 なぜ転職するのか 企業探し 選考準備 読んだ本 問題解決力を鍛える!アルゴリズムとデータ構造 データ指向アプリケーションデザイン [試して理解]Linuxのしくみ システム設計の面接試験 世界で闘うプログラミング力を鍛える本 コーディン

                                              転職活動の記録〜クラウドと英語〜 - fu3ak1's tech days
                                            • 東京大学工学部を中退しました|中村 龍矢 | LayerX 事業部執行役員 AI・LLM事業部長

                                              中村 (@nrryuya_jp) です。先月末を持って、東京大学工学部を中退しました。高卒です。現在はLayerXというスタートアップのAI・LLM事業部担当執行役員・事業責任者をしています。 東大にはたしか3年生から完全に行かなくなってしまい、それからもう7年以上は経過しています。ずっと休学と留年を組み合わせて学籍だけ残っていました。が、ようやく正式に退学になりました。 スタートアップ界隈では、「大学なんて無駄だから行かなくて良い」という声が結構あるように思います。一方、実際に中退した人は意外と少ない気がします。LayerXにも中退や休学をしているメンバーもいて、たまにそういった悩みの相談を受けることもあるので、個人的な体験を書いてみます。また、高校生などでそもそも大学への進学を迷っている人向けにも一つのサンプルを提供できればと思います。 (注: 個人的なバイアスに溢れている記事です。)

                                                東京大学工学部を中退しました|中村 龍矢 | LayerX 事業部執行役員 AI・LLM事業部長
                                              • Kubernetesとは何か?

                                                Kubernetesは、宣言的な構成管理と自動化を促進し、コンテナ化されたワークロードやサービスを管理するための、ポータブルで拡張性のあるオープンソースのプラットフォームです。Kubernetesは巨大で急速に成長しているエコシステムを備えており、それらのサービス、サポート、ツールは幅広い形で利用可能です。 このページでは、Kubernetesの概要について説明します。 Kubernetesは、宣言的な構成管理と自動化を促進し、コンテナ化されたワークロードやサービスを管理するための、ポータブルで拡張性のあるオープンソースのプラットフォームです。Kubernetesは巨大で急速に成長しているエコシステムを備えており、それらのサービス、サポート、ツールは幅広い形で利用可能です。 Kubernetesの名称は、ギリシャ語に由来し、操舵手やパイロットを意味しています。Googleは2014年にKu

                                                  Kubernetesとは何か?
                                                • マイクロサービス信仰を打ち破る新技術、「モジュラーモノリス」の正体

                                                  マイクロサービスは優れたアーキテクチャーだが、設計・開発・運用の難度が高い。そこで、マイクロサービスの利点を一部手放す代わりに導入の難度を下げた「モジュラーモノリス」が注目されている。本特集は、モジュラーモノリスとは何かを解説するとともに、このアーキテクチャーを採用した4社の事例を取り上げる。 マイクロサービスは、それぞれのサービスを独立したアプリケーションとして構築し、それらが互いにデータをやり取りすることで全体のシステムを構築するアーキテクチャーだ。米国の巨大IT企業や日本のメガベンチャーが導入し、大きな成果を上げている。 マイクロサービスが生まれた背景には、巨大IT企業の事業成長のスピードにシステム開発のスピードが追いつけなくなったことがある。実際のシステムには、事業の成長に合わせて高い頻度の変更が必要なサービスと、それほど変更が必要ないサービスがある。 ところがそれぞれのサービスが

                                                    マイクロサービス信仰を打ち破る新技術、「モジュラーモノリス」の正体
                                                  • 分散深層学習における耐故障性と可塑性 - Preferred Networks Research & Development

                                                    ImageNetを15分で学習して以来 [1]、Chainerと沢山のGPUを使って深層学習を並列化し、一回の学習に必要な時間を大きく短縮することができるようになりました。その後、ImageNetの学習は深層学習における並列化 ・高速化のデファクト標準ベンチマークとなりました [2]。それと同時に、深層学習の並列化および大規模化は進み、複数GPUどころか複数ノードで学習することは当たり前のこととなりました。深層学習の計算が大規模化し所要時間はどんどん短くなりましたが、一般的にはノードが増えれば増えただけ部分故障の確率は高くなります。また、大規模なクラスタでは個々の分散ジョブをスケールアウトしたりスケールダウンする機能、つまり可塑性をもとにした計算資源のやりくりが運用上重要になってきます。そこでChainerを拡張し、分散深層学習に耐故障性だけでなく可塑性を導入する実験を行いましたので、ここ

                                                      分散深層学習における耐故障性と可塑性 - Preferred Networks Research & Development
                                                    • 分散システムはなぜ非中心の夢を見るか、Web 3.0ブームをまじめに考察する

                                                      今から10年ほど前の2013年、筆者は六本木のダイニングバー「The Pink Cow」に入り浸っていた。多国籍の料理や酒を楽しむため……ではなく、そこに集う暗号資産(仮想通貨)Bitcoin(ビットコイン)ファンに話を聞くためだ。 銀行を介さず自らデジタル通貨を管理し、店で決済できるBitcoinの可能性に、誰もが興奮していた。ブロックチェーンを使えば、銀行や国家から独立したDecentralized(非中心、非中央集権)なマネーを運営できる。そんな魅力に引かれていた。 そして2022年。DeFi(分散型金融)やNFT(非代替性トークン)、DAO(分散型自律組織)などに代表される「Web 3.0(Web3)」のブームにおいても、やはり人々を引き付けたのは非中心という考え方だった。「Web 1.0やWeb 2.0は中央集権的だが、Web 3.0は非中心になる」といわれるようになった。 とは

                                                        分散システムはなぜ非中心の夢を見るか、Web 3.0ブームをまじめに考察する
                                                      • 食べログの大規模なレガシーシステムを段階的に改善していく取り組み - Qiita

                                                        こんにちは、食べログシステム本部長の京和です。 今年の4月から本部長になりました。さらに4月に娘が生まれました 本エントリでは食べログで1年を通じて取り組んだ、大規模なレガシーシステムの段階的な改善について紹介します。[翻訳] Shopifyにおけるモジュラモノリスへの移行 に続いて2記事目のアドベントカレンダーになります。 どのように段階的に進めるか 食べログは今年で15年目のサービスで、Railsになってからは13年が経過しています。これだけ歴史があればあちこちにガタが来ているのは当然で、無数にある課題に対してどこからどのように取り組んでいくかを最初に決める必要がありました。 まず最初の前提として以下のように考えました。 既存のビジネスや開発を止めるような悪影響を与えない。むしろなるべく早くポジティブな影響を与えていきたい。 これだけ歴史のあるシステムを改善していくのは長い時間がかかる

                                                          食べログの大規模なレガシーシステムを段階的に改善していく取り組み - Qiita
                                                        • DJI製ドローンに操縦者の位置情報を正確に割り出すことが可能な脆弱性が発見されるも関係者は「想定通り」と釈明

                                                          DJIが販売するドローンが発する無線信号を傍受し、デコードすることで、DJI製のドローンを操縦する人物の位置を正確に割り出すことが可能だとセキュリティ研究者チームによって明らかにされました。規制当局がドローンを識別し、悪用を防止するための「DroneID」が暗号化されておらず、誰でも傍受可能だと指摘されていたにもかかわらず、DroneIDはドローンのGPS座標だけでなく所有者のGPS座標も送信していることが指摘されています。 Drone Security and the Mysterious Case of DJI’s DroneID (PDFファイル)https://www.ndss-symposium.org/wp-content/uploads/2023/02/ndss2023_f217_paper.pdf DJI Drone Operator's Location Can Easi

                                                            DJI製ドローンに操縦者の位置情報を正確に割り出すことが可能な脆弱性が発見されるも関係者は「想定通り」と釈明
                                                          • 実践TLA+ | 翔泳社

                                                            設計だってテストしたい! 【本書の内容】 本書は Hillel Wayne, "Practical TLA+", Apress, 2018 の邦訳版です。 複雑精緻なシステムを構築する際に、設計そのもの、仕様そのものにバグがないかをテストできたら、もう少し幸せな開発人生を送れそうな気がします。 本書は送金システムの小規模な仕様からTLA+を使ってヤバいバグを発見するところから始まります。この小さなサンプルをもとに、より良いアプリケーションの設計・テスト・構築に、どのようにTLA+を使えばよいかを理解し、実際のプロジェクトに援用できるよう、TLA+の演算子、論理、関数、PlusCal、モデル、および同時実行の基礎を学びます。 設計図の整理の仕方、分散システムや最終的な整合性の指定の仕方を学んだら、アルゴリズムのパフォーマンスやデータ構造、ビジネスコードやMapReduceなど、さまざまな実用

                                                              実践TLA+ | 翔泳社
                                                            • Web3はWebではない|みし

                                                              WebではないWeb3 イーサリアムのブログを読むとそう解釈せざるおえない。WebとはWorld Wide Webの略で、インターネット上で、HTMLドキュメントを配信するシステムで、httpプロトコル上で文書をやりとりシステムである。このシステムは、クライアント=サーバーアーキテクチャを前提としている。 そしてWeb3はWebではない。なぜならhttpプロトコルを使うとは限らないし、HTMLドキュメントをやりとりするとは限らないし、クライアント=サーバーではなくPeer to Peer(P2P)を前提にしている。WebはP2Pではなくクライアント=サーバーなのでWeb3はWebではない。 なぜ定義がおかしいのか? Web3の大元の定義がおかしいから説明しにくいし、理解もしにくい。なぜ分かりにくい言い方をしているかと言えば、Web3自体がベンチャーが投資家からお金を巻き上げるためのマーケテ

                                                                Web3はWebではない|みし
                                                              • What is Web3? (Japanese Translation)

                                                                ブロックチェーンの登場によって、これからのウェブとインターネットはどのように変わってゆくのか。 2018年にベルリンで開かれたWeb3 Summitにて、InterPlanetary File System (IPFS)の考案者であるJuan Benet氏がWeb3.0について明解な解説をし、わたしたちが次の時代をどのように心がけて創ってゆくべきかの指針を与えてくれました。 あまりにも素晴らしく、多くの人に知ってもらいたいと思ったので、本人に許可を得て、スピーチ全文を日本語に翻訳しました。是非YouTubeのプレゼンと一緒に読んでいただけると嬉しいです。15,000字以上ありますが、スマホでも見やすいレイアウトにしました。 追記:英語文字起こしバージョンも作成しました。日本語版のレイアウトと一対一の対応になっているので、合わせて読んでいただくことで英語学習の一助となれば幸いです。 最後にち

                                                                  What is Web3? (Japanese Translation)
                                                                • Google ドライブ・Gmailなどで発生した大規模障害の原因と対策をGoogleが説明

                                                                  Googleは現地時間の2020年8月19日午後8時55分から2020年8月20日午前3時30分までの間に、Gmail・Google ドライブなどのサービスやG Suite・Google Cloud Platformで発生した大規模なサービス障害について、障害の詳細および原因と対策を発表しました。 Google Cloud Issue Summary (PDFファイル)https://static.googleusercontent.com/media/www.google.com/ja//appsstatus/ir/bd9m3vkqwpvkk4j.pdf ◆障害の詳細 各サービスで発生した障害の詳細は以下の通り。 ・Gmail 一部のユーザーがGmailサービスを利用できず、メールの配信の遅延やメッセージに添付ファイルを追加する際にエラーが発生。Gmailユーザーの約0.73%に障害発生

                                                                    Google ドライブ・Gmailなどで発生した大規模障害の原因と対策をGoogleが説明
                                                                  • 3Dセキュア入門 -B/43の3Dセキュア開発・運用の裏側- - inSmartBank

                                                                    こんにちは。チャージ式プリペイドカードと家計簿アプリがセットになったサービス、B/43のサーバサイド開発をしている@ohbaryeです。 はじめに 唐突な問ですが、読者諸兄はECサイトでカード決済を行う際に本人認証を求められたことはあるでしょうか?弊社のようなカード会社のブログを読まれる方であれば人生で一度は経験しているのではないかと推察します。 この仕組みは3Dセキュアと呼ばれる本人認証サービスで、カードの盗用やなりすましなどの不正利用の防止を目的としてつくられたものです。近年では不正利用防止だけでなく消費者の利便性向上に寄与するシーンも増え*1、B/43にも多くのユーザーさんから3Dセキュア対応の要望がありました。B/43はその要望にお応えして2022年の6月に3Dセキュアに対応したカードをリリースしました。 本記事では筆者が3Dセキュアの開発・運用を通じて学んだ、3Dセキュアの仕組み

                                                                      3Dセキュア入門 -B/43の3Dセキュア開発・運用の裏側- - inSmartBank
                                                                    • Node.js v14.5.0に入ったBroadcastChannelについて

                                                                      こちらは Node.js Advent Calendar 2020 の24日目の記事です。前日は @euxn23 さんによるTypeORM と比べながら Prisma を触るです!そして明日は @yosuke_furukawa さんによる締めくくりです 導入 こんにちは 趣味でNode.jsのCore Collaboratorをしている@watildeです。今年は後半に時間を作ってNode.jsに21コミット行い、合計78コミットで終わりそうです。最近は本業でOSSのWeb/Mobileアプリ開発フレームワーク Amplify (公式サイト) の改善に集中をしていますが(JSerな人たちぜひ使ってみてください!)、来年は100コミット超えを目標に引き続きコミッター活動を続けていきたいと思っています。 さて、今回はNode.jsのv14.5.0で入ったworkerの新機能 “Broadcas

                                                                        Node.js v14.5.0に入ったBroadcastChannelについて
                                                                      • リモートワーク環境での勉強会、みんなどうしてる?VOYAGE GROUP の読書会について紹介します! - CARTA TECH BLOG

                                                                        こんにちは!fluct でインターネット広告配信のお手伝いをしている @jewel_x12 です!今日は VOYAGE GROUP における、リモートワーク環境での勉強会について書きます。 VOYAGE GROUP では以前から勉強会を実施しています(例えばReactハンズオンなど)。部署や若手・シニアを問わず、社内バーの AJITO 等に集まってワイワイやっていました。COVID-19の状況が収まらない今のご時世ですと、AJITO でワイワイってのはできなくなっています。 なので勉強会もオンラインでせざるを得ない状態です。そんな中、みなさんはどうやって勉強会を進めてますか?VOYAGE GROUP ではリモートワーク環境でも社内勉強会が活発に行われているので、その様子を紹介できたらと思います。 社内では論文読み会などの勉強会も行われていますが、読書会だけでもたくさんあったので、今回は読書

                                                                          リモートワーク環境での勉強会、みんなどうしてる?VOYAGE GROUP の読書会について紹介します! - CARTA TECH BLOG
                                                                        • マルチクラウド構成におけるMySQL Group Replicationの利用事例紹介

                                                                          こんにちは、滝澤です。 前回の記事『WireGuardによるマルチクラウド構成VPNの事例紹介』に引き続き、社内事例を紹介します。 弊社ハートビーツではMSP(Managed Service Provider)サービスの可用性向上のために、社内基盤をマルチクラウド構成で運用しています。 複数のクラウド拠点のネットワーク間をWireGuardというVPNトンネルのソフトウェアで接続しています。 さらに、リレーショナルデータベース管理システムにはMySQLを利用しており、MySQLのレプリケーション機能の一つであるGroup Replicationを使って拠点内および拠点間における冗長化を行っています。 今回はこのMySQL Group Replicationの利用事例を紹介します。 行っていることをまとめると次のようになります。 マルチクラウド構成(Azure, AWS, GCP)において、

                                                                          • subee - #golang で快適に Pub/Sub するためのフレームワーク | Wantedly Engineer Blog

                                                                            People tribe / Backend squad の @izumin5210 です。来月以降もこのペースでブログを書いていけるといいですね。 この記事は Go3 Advent Calendar 2019 の25日目です。長い1ヶ月だった。 3行まとめPub/Sub により、マイクロサービスアーキテクチャで高い疎結合性とスケーラビリティを実現できるGo で Subscriber worker を効率よく実装するためのフレームワーク Subee をつくったGo でメッセージを Publish する際の細々とした処理を隠蔽・共通化するため Pubee をつくったはじめに5月に開催された Go Conference 2019 Spring にて "Subee: Pub/Sub Worker Framework Implementation" という発表がありました。Pub/Sub というパ

                                                                              subee - #golang で快適に Pub/Sub するためのフレームワーク | Wantedly Engineer Blog
                                                                            • 2019年振り返り - エンジニアから研究者へ - ゆううきブログ

                                                                              例年のように、昨年の活動を振り返る。 昨年は、それ以前の5年と異なり、働き方もエンジニアから研究者へ転向したことにより、自分を取り巻く環境は大きく変化した。 とはいえ、1年の研究活動を通じて、エンジニア時代と比較し、働き方は変わっても、自分が目指すものはあまり変わらないことも再確認した。 エンジニアであっても、研究者であっても、SREの分野において、相変わらず特定の環境に依存しない汎用的かつオリジナルの貢献を目指している。 エンジニアか研究者かというのは、自分にとっては、単に時間の使い方の差に過ぎない。 エンジニア時代は、企業の商用システムの開発・運用経験を通して、余暇時間でブログに知見をまとめたり、ソフトウェア化したりしていたが、研究者になってからは現場経験のウェイトをほぼゼロにして、学術論文の形で深く知見をまとめて、ソフトウェア化を進めている。 1月 昨年の12月に前職を退職したのち、

                                                                                2019年振り返り - エンジニアから研究者へ - ゆううきブログ
                                                                              • 最短で理解して運用するGrafana Loki - Enjoy Architecting

                                                                                本記事について Lokiについてまったく知識のない状態の人にとって、1からキャッチアップしていくのは とても大変なことです。 特にLokiはマイクロサービスで構成されているため、何を知るべきなのかの全体像が見えにくいと思っています。 そのため、Lokiをまったく知らない状態から実際に運用検証を開始するために必要なインプットを体系的にまとめました。 具体的には下記の項目で整理します。 Lokiの機能 Lokiを構成するアーキテクチャ Lokiを構成するプロセス Lokiのモニタリング Lokiでのログのリテンション管理 Lokiのデプロイ Lokiでのデータキャッシュ Lokiのベストプラクティス ※前提として、Prometheusについての基本的な知識があれば本記事についてもすぐに理解できるかと思います。 1. Lokiの機能 Grafana Lokiとは? Lokiは3大監視項目である、

                                                                                  最短で理解して運用するGrafana Loki - Enjoy Architecting
                                                                                • PayPayはなぜマイクロサービスアーキテクチャを採用したのか? 決済プラットフォームの構成と狙いを解説

                                                                                  2019年7月24日、ヤフー株式会社が主催するサーバーサイドエンジニア向けの勉強会「Bonfire Backend #3」が開催されました。第3回となる今回のテーマは「モバイル決済の裏側」。急速に成長するモバイル決済分野でサービスを展開する企業が一堂に会し、自社サービスの仕組みや技術スタックなど、知られざる裏側を語ります。プレゼンテーション「Payment as a Microservice 」に登壇したのは、PayPay株式会社のHarsh Prasad氏。数多くのマイクロサービスで構築されているPayPayの心臓部、ペイメントコアシステムの裏側を解説します。 PayPayの分散システムの裏側 Harsh Prasad氏:みなさん、こんばんは。PayPayのペイメントコアシステムを担当している、プラサド・ハーシュと申します。今日お話しさせていただきたいことは、ペイメントマイクロサービスと

                                                                                    PayPayはなぜマイクロサービスアーキテクチャを採用したのか? 決済プラットフォームの構成と狙いを解説