totegamma/concurrent

大掃除

Closed this issue · 0 comments

そろそろすごいリファクタをやっていく時期 あとで子issueに分割するかも?

  • Config構造体をそれぞれのサービスで必要な最低限の情報に分割する
    今各モジュールがそれぞれで共通のConfig構造体を受け取っているが、その中で利用している値はごくわずかである。
    共通化されているが故にポータビリティが悪化している(ほかのmiddlewareでも過剰なconfigファイルを要求される等)のでこれをそれぞれミニマムなものに分割したほうが良い。
  • 外部へのhttpを、openapiから生成されたclientを使って行うようにする
    今は外部への通信が必要なところそれぞれでnet/httpでリクエストを行うコードが書いてある
    これはテストをするうえでもかなりネックになっているので、これをopenapiから自動生成されたclientのコードへ置き換えたい。
    otelの計装を仕込めたり、テストが書きやすいことがマスト
  • Concurrent独自のエラーのセマンティクスを定義する
    今はエラーの分別をまともにやっておらず、成功で200・失敗で500くらいな感じになっている。
    Concurrentで発生しそうなエラーをある程度の粒度で分割(存在しない・許可がない・不十分なリクエスト等々...)し、それに基づいたレスポンスを返すようにする。