#router
12 件の記事
自作HTTPルーターから新しいServeMuxへ
自作HTTPルーターgoblinからGo 1.22で強化されたnet/http ServeMuxへ移行。新しいルーティングパターンや他ルーターとの性能比較、ServeMuxで十分なケースを解説します。
HTTP Routerの自作で参考にした資料
自作のHTTPルーター「goblin」の開発で参考にした、各種の資料や自分のブログ記事をまとめた記事です。radix木やトライ木といったデータ構造、ベンチマーク比較など、GoでHTTPルーターを自作する際に役立つ情報を、分散していたものを集約して紹介します。
GoでServeMuxの機能拡張を提案するProposalがAcceptedになった
Goのnet/http ServeMuxに動的ルーティングとパスパラメータを追加するProposalがAcceptedに。goblinなどサードパーティルーターやGoのルーティングの今後への意味を解説します。
自作ルーティングをアップデートした
自作のGo製HTTPルーター「goblin」をアップデートした際の記録をまとめた記事です。新たに追加したミドルウェアへの対応や、内部実装の最適化について、パフォーマンスのベンチマーク結果とともに紹介し、これまでのルーティング関連の記事の続きとして書き残します。
GolangでgoblinというURLルーターを自作した
GoでURLルーターを自作した際の実装過程をまとめた記事です。トライ木というデータ構造を用いて、パスパラメータや正規表現によるマッチングに対応した高性能なURLルーター「goblin」を、設計の検討から実装まで順を追って解説します。
URLルーティング自作入門 エピソード2
「URLルーティング自作入門」シリーズのエピソード2です。エピソード1に続き、URLルーティングをトライ木を使って実装していきます。パスのマッチング処理や、HTTPメソッドに対応した動的なルーティングの構造について、図解を交えながら実装を進めていきます。
URLルーティング自作入門 エピソード1
「URLルーティング自作入門」シリーズのエピソード1です。趣味でURLルーティングを自作してきた経験から、自作の敷居や応用範囲について触れつつ、ルーティングに使う木構造のアルゴリズムや、各種Webフレームワークの参考実装を探索していくモチベーションを紹介します。
GolangのHTTPサーバーのコードリーディング (Go6 Advent Calendar 2019)
Qiita Go6 Advent Calendar 2019向けにGolangのHTTPサーバー内部実装をコードリーディング。net/httpパッケージのListenAndServe、ServeMux、Handlerインターフェースの動作を詳細に解析。
URLルーティングをつくる エピソード3(完結編)
ツリー構造を使ってURLルーティングを自作するシリーズのエピソード3。PHPで、パスパラメータやHTTPメソッド、ツリーベースの探索アルゴリズムに対応したURLルーティングを完成させるまでを解説する。
URLルーティングをつくる エピソード2
ツリー構造を使ってURLルーティングを自作するシリーズのエピソード2。エピソード1のツリー構造を洗練させ、エンドポイントのマッピングやスケーラブルなルーティングロジックの実装を解説する。
URLルーティングをつくる エピソード1
ツリー構造を使ってURLルーティングを自作するシリーズのエピソード1。HTTPリクエストのマッチングやパスパラメータの扱いを軸に、効率的にリクエストを処理するルーティングの仕組みを実装しながら解説する。
ReactとHistory APIを使ってrouterを自作する
ReactとHistory APIのpushState・popstateを使い、ライブラリに頼らずSPAのルーターを自作する方法を解説します。