AWSとオンプレミスと繋ぐときに知っておきたいルーティングの基礎知識。 JAWS DAYS 2021の発表資料です。Read less
タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。
久々に図を書きたくなったので、今回は AWS の VPC ネットワークの主にルーティングについて雑談気味に振り返っていきたいと思います。 基本的なところから、少し発展させた構成はどう実現するのか、ってのを学習用教材風にお絵かきしていきます。 はじめに 最近、実現できると思ってた部分が1つ通らなくて、詰んだかと一瞬諦めかけたところで、10分間くらい思案したらズバッと解決できて気持ちよかったんですよ。 我ながら物凄い泥々の技術を駆使して、発想通りにAWS仕様を回避したネットワークを構築してしまった。泥臭すぎてとてもブログに書けないけどっ…自分の中では満点かつスタイリッシュっ — 外道父 | Noko (@GedowFather) July 7, 2023 元々泥臭いエンジニアリングが得意だったとはいえ、こういう発想の展開力はクラウドだけ真面目にイジってても身につきづらいだろうな、と思い、そうい
はじめに この文書は RFC7938 - Use of BGP for Routing in Large-Scale Data Centers の日本語訳です。 翻訳者はデータセンターネットワークの専門家ですが翻訳の専門家ではありません。技術的な意味を維持した上でなるべく読みやすい日本語になるようにしているため、英文の直訳ではなく一部のニュアンスがかけている場合がありますのでご了承ください。オリジナルの目次、謝辞、参考文献等は省略しています。 免責 いつものやつ 目次 はじめに 免責 目次 概要 1. 導入 2. ネットワーク設計の要件 2.1 帯域とトラフィックのパターン 2.2 CAPEXの最小化 2.3 OPEXの最小化 2.4 トラフィックエンジニアリング 2.5 要件の要約 3. データセンタートポロジーの概要 3.1 従来のDCトポロジー 3.2 Closネットワークトポロジー
2020年は、型安全ルーティングが密かに盛り上がりを見せた年でした。この記事では、TypeScript周りのエコシステムで発生した型安全ルーティングという概念とこれまでの流れを振り返ってご紹介します。 ルーティングとは この記事でいうルーティングは、URL(特に/user/uhyoといったパス部分)を見てコンテンツを出し分ける機構のことを指します。ルーティングは、主にSPA (Single Page Application) で必要となります。SPAはどのようなURLでも同じHTMLとJavaScriptが動作し、JavaScriptによってアドレスに対応したコンテンツが表示されます。まさに、ルーティングがSPAの根幹となっています。また、一般のウェブサーバーも、異なるURLに対するリクエストには異なるレスポンスを返しますから、ここでもルーティングが行われていることになります。 従来は、文
Next.js 型安全なルーティングを使う Next.js では実験的な機能として、型安全なルーティングを利用できます。この機能を使うことでリンク先のパス名を静的に検査できるため、typo などのエラーを事前に防ぐことができます。 Next.js では Next.js 13.2 より実験的な機能として、型安全なルーティングを利用できます。この機能を使うことでリンク先のパス名を静的に検査できるため、typo などのエラーを事前に防ぐことができます。 なお、型安全なルーティングを利用するためには App Router と TypeScript を使用している必要があります。 型安全なルーティングの利用方法 型安全なルーティングを有効にするためには、experimental.typedRoutes フラグを有効にする必要があります。next.config.mjs に以下のように設定します。 /*
Amazon Web Services ブログ SaaS におけるテナントリソースへのリクエストルーティングを JWT を用いて実現する みなさんこんにちは。ソリューションアーキテクトの福本です。 本投稿のテーマは Software as a Service(SaaS)におけるルーティングです。 SaaS ではテナントごとにサーバーなどのリソースが分離されていることがあります。そのため、各テナントに属するユーザーからのリクエストを適切なリソースへとルーティングする必要があります。 具体的なルーティングの話に入る前に、SaaS のテナント分離モデルについて説明をします。SaaS では、テナントの分離モデルとしてサイロ、プール、ブリッジモデルが存在します。また、ユーザーがサブスクライブしている利用プラン (ティア) によって、リソースの分離形態が変わるような、階層ベースの分離もあります。 サイ
Reactの技術選定においてルーティングとデータ取得は特に重要な役割を担っています。 もちろんNext.jsやRemixのようなフレームワークを採用すれば、個別のライブラリを追加することなくルーティングからデータ取得までフレームワークが提供するAPIを使って実装することができます。 しかし、AI ShiftのようなBtoBのサービスにおいてはSPAで十分なことがほとんどで、Next.jsなどのフレームワークの採用がtoo muchになりかねません。 この記事は2024年2月時点の技術選定において、TanStack RouterがSPAのルーティングライブラリとして非常に有力な候補であることを紹介します。 はじめに TanStack RouterとTanStack Queryの採用がSPAアプリケーションにおける最適解の一つになりうることをその特徴と実際の設計例をもとに解説します。 TanS
インターネットを支えるルーティングプロトコルであるBGP(Border Gateway Protocol)をRFCからRustで実装する方法を解説します。小さなプログラムから始め、Update Messageを交換しルーティングテーブルの更新まで、一歩ずつ実装・解説します。 関連サイト本書の関連ページが用意されています。 NextPublishingオフィシャルWebサイト内容紹介インターネットを支えるルーティングプロトコルであるBGP(Border Gateway Protocol)をRFCからRustで実装する方法を解説します。小さなプログラムから始め、Update Messageを交換しルーティングテーブルの更新まで、一歩ずつ実装・解説します。RFCで定義されているプロトコルを一度自分の手で実装することで、BGPに限らず、その他のプロトコルについてもRFCから実装することを目指します
はじめに こんにちは。メディアプラットフォーム本部 WEAR部 WEAR-SREの長尾です。 WEARは2013年にリリースされ、現在8年目のサービスです。そして、2004年にリリースされた当時のZOZOTOWNと同じアーキテクチャを採用しているため、比較的古いシステム構成で稼働しています。本記事では、そのWEARのWebアプリケーション刷新とクラウド移行で実践している、Fastlyを活用したパスベースルーティングによる段階移行の取り組みを紹介します。 WEARをリプレイスする理由 WEARのWebアプリケーションは、データセンターでオンプレミス(以下、オンプレ)上で稼働しています。また、DBはSQL Serverを利用しています。長年このアーキテクチャで成長を続けてきましたが、今後さらに成長を加速させていくためには以下の3点を実現する必要があります。その実現に向け、2年前からリプレイスに
本記事は 初夏のAWSアワードエンジニア祭り 10日目の記事です。 🍦 9日目 ▶▶ 本記事 ▶▶ 最終日 💻 2023 Japan AWS All Certifications Engineers発表時の裏話 NRIネットコムの望月です。初夏のAWSアワードエンジニア祭りもいよいよ明日で終わりです。 昨年に続き、2023 Japan AWS All Certifications Engineersに選出されました。 この認定は、 APN(AWS Partner Network)企業に所属している AWSの認定資格を全て持っている の2つの条件を満たしていれば、申請すると誰でも貰えるものです。 ところが、2023年4月20日に認定者の発表があった時点では、私の名前はありませんでした。 4回くらいはページリロードしましたね。 しかしながら、残酷なことに表示結果は変わらず「何故だ!!まぼろ
Web アプリケーション開発において、ファイルベースルーティングはコードの可読性向上や開発効率化に大きく貢献します。本記事では、Vue.js アプリケーションでのファイルベースルーティングをシンプルかつ型安全に実現できる「Unplugin Vue Router」をご紹介します。Nuxt のような大規模なフレームワークは少し大げさだと感じる場合や、Vue Router をより効率的に活用したい方はぜひ参考にしてください。 Unplugin Vue Router 概要 ファイルベースルーティングによってファイルのパスと URL を直接対応させることで、コードの構造を直感的に理解できます。 TypeScript との連携によりコンパイル時にルーティングのミスを検出でき、より安全な開発が可能になります。 Nuxt のようなフルスタックフレームワークと比較して軽量であり、小規模なプロジェクトに最適で
はじめにGo1.22リリース連載 の5本目です。 本記事ではGoの標準ライブラリである net/http の ServeMux におけるルーティング周りの強化について取り上げます。 関連する Release Note と Issue はこちらを参照してください。 https://tip.golang.org/doc/go1.22#enhanced_routing_patterns https://github.com/golang/go/issues/61410 変更点HTTPメソッドの指定が可能にServeMux.Handle や ServeMux.HandleFunc を使用してハンドラを登録する際に GET /xxx のようにHTTPメソッド指定して、ハンドラを呼び分けることができるようになりました。 mux := http.NewServeMux() // GETを指定したハンドラ
以前Railsウォッチ20201012でご紹介した内容を自分用に別記事にしました。 RailsのルーティングをFSM(有限状態機械)の形式でHTMLファイルに出力し、動的にルーティングをシミュレートできる機能です。 参考: 有限オートマトン - Wikipedia routes visualizer、`devise_for :users` みたいなDSL処理される系のroutingでもちゃんと展開された。めっちゃ実用的では #kaigionrails pic.twitter.com/LBBKPcE4D4 — Masato Mori (@morimorihoge) October 3, 2020 ⚓ Railsのルーティングビジュアライザ ⚓ 必要なもの Railsローカル実行環境 graphviz なお、2012年の56fee39でJourneyがAction Dispatchに統合された
Amazon Web Services ブログ 詳解 FireLens – Amazon ECS タスクで高度なログルーティングを実現する機能を深く知る この記事は Under the hood: FireLens for Amazon ECS Task (記事公開日: 2019 年 11 月 18 日) を翻訳したものです。 2019 年 11 月、Amazon ECS は FireLens によるカスタムログルーティングのサポートを発表しました。FireLens によって、人気の高いオープンソースのロギングプロジェクトである Fluentd や Fluent Bit を簡単に使用することができ、さまざまな AWS サービスやパートナーの宛先にログを送信することができます。 この記事では、私たちがなぜ、どのようにして FireLens を作ったのか、詳しく説明します。また、私が Fire
7月27日、Cloudflareは新しいRoutingページを発表しました。 この新機能は、インターネットのルーティング状況をモニタリングし、洞察を提供することを目的としています。 7月27日、Cloudflareは新しいRoutingページを発表しました。 この新機能は、インターネットのルーティング状況をモニタリングし、洞察を提供することを目的としています。 Routing Statistics: インターネットのルーティングに関する統計情報を提供 Routing Statisticsでは、インターネットのルーティング状況に関する統計情報を提供します。 利用者は、ASや国ごとのASの数、グローバルルーティングテーブルで観察されたさまざまなプレフィックスとそのルートの数、RPKI(Resource Public Key Infrastructure)によるルートの数の情報を迅速に調査できま
はじめに こんにちは。calloc134 です。 自分は普段 React を利用してフロントエンドの開発をしています。 SPA のルーティングを実装する上で、TanStack Router を利用することが多いです。 この使い方について、簡単にまとまったドキュメントが思ったより少なく感じたため、まとめていきたいと思います。 TanStack Router とは TanStack Router は、React のルーティングを行うためのライブラリです。 当初は React Location として、TanStack の Tanner Linsley 氏によって開発されました。 その後、改名や設計のし直しが行われ、TanStack Router として開発されており、2023 年のクリスマスに v1 がリリースされました。 現在は色々な機能が追加されており、React のルーティングを行うため
最近、TypeScript + tsoa + express + TypeORM というような技術スタックでバックエンドの Web API 開発しています。 tsoa という軽量な Web フレームワークを使っているんですが、OpenAPI の自動生成をしてくれるので、実装と API 仕様書の齟齬がなく快適に開発ができています。この記事では、TypeScript + tsoa + express + TypeORM を使って簡単な Web API を作成してみたいと思います。 tsoa とは tsoa とは、TypeScript のコードから OpenAPI 定義の自動生成と express、koa、hapi と統合できる Web フレームワークです。TypeScript のデコレータを使ってコントローラークラスに付与して開発します。なんらかの MVC フレームワークを使ったことがある方は
こんにちは。日本マイクロソフトの向井です。 こちらの記事ではマネージド環境の機能である環境ルーティングを使って個人用開発環境が作成されるように設定する方法、その意義などを解説しています。 個人用開発環境はPower Platform で市民開発をさせる上で、ガバナンス管理に非常に役に立つ設定です。 Power Platform の個人用開発環境 Power Platform では通常、ユーザーが最初にアクセスする環境は既定環境ですが、環境ルーティングをオンにすると、最初にアクセスする環境を個人用開発環境にすることができます。 個人用開発環境はそれぞれのユーザー専用の環境で、そのユーザーが個人の生産性向上の範囲で自由にアプリやフローを作ることができます。 アプリやフローの作成練習(勉強)にも最適です。 これまで、既定環境で各ユーザーが自由にアプリを作成できる状態にしておくと、「テスト」や「t
米IBMは6月10日(現地時間)、長時間にわたって多リージョンで各種クラウドサービスがダウンした原因を、「外部ネットワークプロバイダーが誤ったルーティングでIBM Cloudネットワークをあふれさせ、トラフィックの深刻な輻輳を引き起こした」ことにあると説明した。 関連記事 IBM Cloud、長時間停止で調査中【復旧済み】 IBMのWatson AI、Continuous Delivery、クラウドサービスで問題が発生。公式ステータスページは本稿執筆現在「サポート技術者が問題を調査しています」となっている。 IBM、顔認識事業からの撤退を宣言 「人種プロファイリングや自由の侵害を容認しない」 IBMが、汎用的な顔認識技術の開発と提供を廃止すると発表した。黒人男性が白人警官の暴行で死亡したことを契機に全米で人種差別抗議運動が続く中、「今こそ、法執行機関が顔認識技術を採用すべきかどうか話し合う
macOS 13 VenturaではScreenCaptureKitをサポートした「OBS v28」以降で、SoundflowerやBlackHoleなどのオーディオルーティングアプリなしでウィンドウ/アプリ単位のオーディオをキャプチャが可能になっています。詳細は以下から。 Appleは現地時間2022年03月にリリースした「macOS 12.3 Monterey」で、ZoomやCisco Webex、OBS、Microsoft Teamsの開発者の意見を取り入れて開発したスクリーンキャプチャ用API「Screen Sharing API (ScreenCaptureKit)」の提供を開発者向けに開始、 06月に開催されたWWDC22のセッション「Take ScreenCaptureKit to the next level」では、ScreenCaptureKitをサポートしたライブ配信ア
先日 Railroads という、Rails開発向けのIntelliJ Platform Pluginを作りました。 RubyMine 2023.3系から、rails routes を便利に扱える Railways プラグインが動かなくなったので、代替プラグイン Railroads を作りました - メモ的な思考的な そのプラグインの動作確認をするために rails routes を実行し、設定したルーティグがどのように表示されるか確認 rails routes の結果を元に、Railroadsプラグインでコントローラとメソッドが表示されているか確認 ができるRailsアプリが必要になりました。 そこで、 routes.rb に色々なルーティングを設定したRailsアプリを作ってみたことから、メモを残します。 なお、今回定義したRailsアプリのルーティングについては、 Railroads
壊れたルーティングの検出、routing specを自動化するroute_mechanic gem を作って公開しました。この gem の紹介と内部実装の話を書きます。 rubygems.org 背景 Rails 開発者のうちの N% は、Rails application のルーティングを検証するために以下のようなコードを書いたことがあるかもしれません。 Rails が提供する assertions を使うなら: assert_routing({ path: 'photos', method: :post }, { controller: 'photos', action: 'create' }) rspec-rails なら: expect(:get => "/articles/2012/11/when-to-use-routing-specs").to route_to( :cont
こんにちは。データアナリティクス事業本部 サービスソリューション部の北川です。 Next.jsで、新しいルーティングシステムについての記事が公式から出ました。 今回は中でも、ようやく提案されたNested Layoutsについて調べたので、まだ正式に実装されたわけではないですが、せっかくなので記事にしました。 Appフォルダの提供 Next.jsでは、pagesフォルダの配下に作成したファイルが、そのままURLのパスとして機能します。 新しいルーティングシステムでは、pagesフォルダではなく、機能追加に対して段階的に変更できるよう、新しくappフォルダを提供する考えのようです。そのため、appフォルダとpagesフォルダは併用できそうです。アップデートによる修正や更新の負担が減るので、これはありがたいです。もちろんpagesフォルダ同様、階層を下げてパスを指定できます。 pagesフォル
今までNext.jsのAPIでちょっとしたルーティングを実現するために下記のライブラリを使っていました。 ただ、こちらのライブラリでは、APIの型情報をクライアントに共有することや、Zodなどであらかじめサーバーサイドで受け取るパラメータの型を縛ったりすることができませんでした。 そこで、今回ZodファーストなNext.js用のルーティングライブラリを作ってみました。 trpcやGraphQLなどを使えばクライアントへの型共有は行えるのですが、そこまで複雑なものにしたくなかったので、軽量なZodファーストな型安全なNext.js用のルーティングライブラリを作りたいというのがモチベーションとしてありました。 デモ デモを見ていただくとクライアント側とサーバー側で型が共有できているのがわかるかと思います。 StackBlitzのembed用のURLを指定してください 使い方 Zodファーストな
この記事は fujiwara-ware advent calendar 2024 の24日目です。 lamux とは lamux は、HTTP リクエストを AWS Lambda にルーティングするためのツールです。Lambda MultiPlexer の略です。 なぜ作ったのか Lambda Function URLs を使うと、HTTP を処理するサーバーを Lambda で簡単に作ることができます。また Function URLs が生成する URL は Lambda 関数のエイリアスごとに異なるため、ステージング環境や本番環境などを分けて運用することができます。 この機能を使って、20日目に紹介した mirage-ecs のようなことができるなと思いつきました。 foo.example.com にリクエストが来たら foo というエイリアスの Lambda 関数を呼び出す bar.
こんにちは、戸田です。 今回は React Router v6.4 以降を使用する際にどのルーティング方法を使えばいいのか自分の言葉でブログにまとめました。 まず結論 シンプルなルーティングのBrowserRouterかcreateBrowserRouterで迷ったら基本的にcreateBrowserRouterを使いましょう! 以下がサンプルコードです。 import React from 'react'; import { Outlet, RouterProvider, createBrowserRouter } from 'react-router-dom'; const Parent = () => { return ( <div> <h1>Parent</h1> <Outlet /> </div> ) } const App = () => { const router = cr
ネット上の障害状況レポートを提供するサービスdowndetector.comによると、米東部時間の15日午後1時ごろから不調の報告が始まり、3時ごろには9万件を超えた。本稿執筆現在(午後7時半)、まだ問題は解消していない。 T-Mobileはこの問題を把握しており、公式Twitterアカウントで「エンジニアが音声とテキストに影響する広範囲にわたるルーティング問題の解決に取り組んでいます。一時的な解決策として、FaceTime、WhatsApp、Signalなどのサードパーティー通話アプリを使っていてください」とツイートした。 【UPDATE】技術担当社長のネヴィル・レイ氏は16日午前0時ごろ、ほぼ復旧したとツイートした。 同社のマイク・シーバートCEOは公式ブログで、原因は「IPトラフィックに関する問題」だとし、完全復旧に注力すると説明した。 米Cloudflareのマシュー・プリンスCE
Next.jsとは プロジェクト作成 フォルダ構成 ルーティングシステム・別ページ作成 最後に ReactのフレームワークであるNext.jsの入門を初心者の方に向けて解説します。 本日の記事と合わせて、静的サイトについても触れています。 こちらの記事も参考にしてみてください:dev-k.hatenablog.com 必要な条件 ・ JavaScriptに精通していることや豊富な経験があることが求められます。 クラス、スプレッド演算子、Promiseなどの概念の知識は必須です。 ・ ローカルの開発環境にNode.jsがインストールされていること。 Node.jsのインストールは、Download | Node.jsから行ってください。 ・ React.jsの基礎知識をある程度持っていること。 ※ なお、この記事はNext.js 13以前に投稿された記事となっておりますのでご了承下さい。 N
複数のページで構成されたReactアプリケーションを構築する際にはReact単独ではルーティングの機能をもっていないためルーティングライブラリが必要となります。数あるルーティングライブラリの中でReact Routerは最も人気の高いライブラリです。複数のページを持つということはブラウザからアクセスするためのURLが複数存在することになります。アプリケーションを構成するURLにアクセスした場合にどのページコンポーネントのコンテンツを表示させるのかといったルーティングの設定をReact Routerを利用して行います。ログインページやユーザ登録ページなど複数のページが必要なアプリケーションをReactを利用して構築したい場合にはReact Routerを利用することになります。 通常のWEBサーバではページを移動する度にサーバから送られてくるコンテンツをブラウザ上に描写させるためページ全体の
40億人以上、つまり世界人口の半分以上が少なくとも1つのメールアドレスを持ち、仕事やプライベートの諸事を把握するための不可欠なツールとしてメールを使っています。毎日3000億以上のメールが送受信されていますが、メールはコミュニケーションツールの役割だけに留まらず、単にメッセージを伝える手段を遥かに超えた影響を私たちの生活に及ぼしています。メールは身元認証の方法としても一般的ですし、他のコミュニケーションプラットフォームへのゲートウェイとしても機能します。 現在ではたいていの人が、銀行アカウントへのログインや政府機関との連絡など機密性の高い目的のためにメールを使用しています。一方、同じメールアドレスで、オンラインで見つけた10%オフクーポンの申し込みもし、その後何か月もスパムメールを受信し続けることになります。これらの2つのユースケースは重要度やセキュリティの観点でみれば両極端に位置しますが
こんにちは、電通国際情報サービス デジタルイノベーション1部の加世です。 今回は「FluentBitを利用したログルーティング」を進める際に、「FluentBitについて理解する」ことを目的とした記事となっております。 具体的なFluentBitの使い所や設計を考える前段階として、本記事を参考にしていただければと思います。 Fluent Bitについて Fluent Bitの特徴 検証環境と処理フローについて Fluent Bit設計前の準備 データパイプラインの理解 データの構造化について まとめ Fluent Bitについて FluentBitは、データ(メトリクス、ログ、それ以外の生情報など)をInput情報として収集し、加工処理したうえで任意の転送先に転送します。 クラウドサービスプロバイダを利用するうえでは、既に「システム」から「サービス」に転送する仕組みを用意していることが多い
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く