InfoQ ホームページ rpc に関するすべてのコンテンツ
-
Lyft社が共同作業のためのProtocol Buffers設計ベストプラクティスを促進
Lyft社は主にチームやシステム間で共有される定義のための共同プロトコル設計に焦点を当て、システム間統合のためにProtocol Buffersを使用した経験を発表した。同社は、単なる効率性の最適化というよりも、知識共有、一貫性、開発プロセスの質を向上させるアプローチを推進している。
-
LinkedInがREST+JSONではなくgRPC+Protobufを選んだ理由:Karthik Ramgopal氏とMin Chen氏とのQ&A
LinkedInは、Microservices platformのサービス間通信にProtocol Buffersを使ったgRPCに移行すると発表した。従来は、オープンソースのRest.liフレームワークが主要なシリアライゼーションフォーマットとしてJSONと共に使われていた。
-
UberのCheckenvがクロス環境間RPCコールを検知し、データ漏洩を防ぐ
Uberは、リモート・プロシージャ・コール(RPC)を通じて多数のサービスが疎結合に相互作用するマイクロサービス・アーキテクチャの複雑さに対処するため、CheckEnvという新しいツールを開発した。このツールは、データの不整合や予期しない動作などの望ましくない結果につながる可能性がある、本番環境とステージング環境などの異なる環境間をまたぐ RPCコールを迅速に検出し、対処するように設計されている。
-
Pinterest、KubernetesとApache Helixで非同期コンピューティング・プラットフォームを刷新
Pinterestは次世代の非同期コンピューティング・プラットフォームであるPacerを開発し、大きくなり過ぎてスケーラビリティと信頼性の課題が生じた旧ソリューションであるPinlaterを置き換えた。新しいアーキテクチャは、ジョブ実行ワーカーのスケジューリングにKubernetes、クラスタ管理にApache Helixを活用している。
-
Cadence1.0:Uberがスケーラブルなワークフロー・オーケストレーション・プラットフォームをリリース
Uberは6年間の開発期間を経て、Cadenceと名付けられたワークフロー・オーケストレーション・プラットフォームのメジャーバージョンをリリースした。Uberや他の企業は、ネイティブのプログラミング言語を使ってステートフルなサービスを大規模に構築するためにCadenceを使用している。チームは、使いやすさ、オブザーバビリティ、効率性の向上を目標に次のリリースに取り組んでいる。
-
CloudflareレポートでAPIトラフィックの急速な成長が示された
Cloudflareは最近、毎年恒例の「APIトラフィックの状況」レポートをリリースした。このレポートでは、Cloudflareのグローバルネットワークによって利用されるトラフィックデータを分析して、Webトラフィックの現在の業界トレンドへのインサイトを提供する。
-
Googleプロトコルバッファは慣用的なKotlinバインディングをサポートします
GoogleはオープンソースのProtocol BuffersプロジェクトにKotlinのサポートを追加した。Kotlinの高度な構文機能を活用してプロト定義を慣用的なドメイン固有言語(DSL)に変換できるようになる。
-
QCon PlusからAPIアーキテクチャトラックの総括
QCon PlusのAPIアーキテクチャトラックには、APIを設計、構築、保守するソフトウェアエンジニアとアーキテクトに関連するトピックについて話し合う6人のスピーカーとパネリストが参加した。このトラックでは、拡張性やAPIライフサイクルなどの幅広い概念を取り上げ、REST、GraphQL、gRPCの対決を取り上げて、APIを構築するときに使用するのに最適なテクノロジーを決定した。
-
Uber Riderアプリでのデータ収集、標準化、大規模な利用
Uber Engineeringは最近、Uber Riderアプリからデータを収集、標準化、使用する方法を公開した。ライダーデータには、Uberアプリとのライダーのインタラクションがすべて含まれる。このデータは、Uberのオンラインシステムからの毎日の何十億ものイベントを表している。Uberはこのデータを使って、ファンネルコンバージョンの増加、ユーザエンゲージメントなどの主要な問題領域に対処する。
-
NetflixによるgRPCを使った実用的なAPIデザイン
NetflixでのAPI設計に関する2部構成の記事が、最近、同社のテクノ���ジーブログで公開された。バックエンドAPIの要求と応答において無関係なメッセージフィールドを無視する問題をどのように解決したかを説明している。この実現には、特別なProtocol Buffers(Protobuf)メッセージのFieldMaskを使っている。
-
Slackが新しいロール管理アーキテクチャを詳しく説明
Slackは最近、新しい役割管理システムのソフトウェアアーキテクチャの詳細な説明を投稿した。Slackは、以前よりも柔軟なシステムを構築する必要があった。Slackは、カスタムコンテナ化されたGoベースのパーミッションサービスを開発した。これは、gRPCを介して既存のシステムと統合される。その結果、顧客の管理者は、ユーザが実行できることをきめ細かく制御できるようになった。
-
UberがAPIゲートウェイのアーキテクチャを公開
Uberは最近、自社で構築したAPIゲートウェイのアーキテクチャについて詳しく説明した。そこでは、独立したレイヤー化されたコンポーネントがゲートウェイで各リクエストをどのように処理するかを説明されており、各レイヤーはリクエストライフサイクルの異なる面を担当する。YAMLとApache Thriftの組み合わせがゲートウェイ構成を定義し、Goでコード生成されたアーティファクトがゲートウェイ実装を構成する。
-
Alibaba Cloudはビジネスの成長をサポートするためDaprを使用
先頃のブログ投稿で、Alibaba CloudのスタッフエンジニアであるSky Ao氏が、Alibaba Cloudが分散アプリケーションランタイム (Dapr) を使用してビジネスの成長をサポートする方法について詳しく説明している。Alibabaのビジネスが急速に成長し、他の企業も買収するにつれて、さまざまなクラウド環境で複数のプログラミング言語をサポートする必要性が高まっている。このニーズをサポートするために、AlibabaはDaprの使用を選択した。
-
DropboxがマネージドサービスオーケストレーションプラットフォームのAtlasを公開
先日のブログ記事でDropboxが公開したAtlasは、サービス指向アーキテクチャのさまざまなメリットを提供すると同時に、サービスを所有する運用コストを最小限にすることを目的とするプラットフォームである。その目標は、小規模かつ自己完結型の機能をサポートすることによって、容量計画や警告のセットアップといった、本格的なサービスを管理するオーバーヘッドからプロダクトチームを救済することにある。
-
Thrift for HaskellはRPCコードからバグを排除することを目的としている
もともとFacebookで作成され、現在はApacheの一部となっているThriftは、複数の言語で記述されたサービス間で大規模で効率的なRPCを実現することを目的としたインターフェイス定義言語(IDL)およびバイナリ通信プロトコルである。Facebookは最近hsthriftをオープンソース化した。これにより、HaskellプロジェクトでThriftを使用し、その依存型を利用して本番環境のバグを排除することができる。