**Ginとは?** Ginは、Go言語で書かれたWebフレームワークです。MartiniのようなAPIを備えながら、Martiniより最大で40倍ものパフォーマンスを実現します。パフォーマンスと生産性が求められるなら、きっとGinが気に入るでしょう。
高速
ラディックストリームに基づくルーティング、小さなメモリフットプリント、リフレクション不要、予測可能なAPIのパフォーマンス
ミドルウェアサポート
受信したHTTPリクエストは、ミドルウェアのチェーンと最後のアクションによって処理できます。たとえば、ロガー、承認、GZIP、データベースへのメッセージの最終的な投稿などです。
クラッシュなし
GinはHTTPリクエスト中に発生したパニックをキャッチしてリカバリすることができます。これにより、サーバーは常に利用可能です。パニックをSentryに報告することもできます。
JSONの検証
GinはリクエストのJSONを解析して検証することができ、たとえば必須値の存在をチェックできます。
ルートのグループ化
ルートをより適切に編成できます。承認が必要なものと不要なもの、さまざまなAPIバージョンなどです。さらに、グループはパフォーマンスを低下させることなく無限にネストできます。
エラー管理
GinはHTTPリクエスト中に発生したエラーをすべて収集する便利な方法を提供します。ミドルウェアは最終的にログファイルやデータベースにエラーを書き込んだり、ネットワークを介して送信したりできます。
レンダリング機能の内蔵
Ginは、JSON、XML、HTMLレンダリングのための使いやすいAPIを提供します。
拡張可能
新しいミドルウェアの作成はとても簡単です。サンプルコードを確認するだけです。