walf443 / isucon11-qualify-rust-axum

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What is this

Writing a sample of axum application base on isucon/isucon11-qualify for my study purpose.

How to run test

$ ln -s docker-compose.override.yml.example docker-compose.override.yml
$ docker-compose up -d
$ MYSQL_DBNAME=isucondition_test ./sql/init.sh
$ cargo test --workspace -- --test-threads=1 --nocapture

Architecture Overview

flowchart LR
  isucondition-axum --> isucondition-core

isucondition-axum

handle http request using axum.

use isucondition-core API. convert isucondition-core response to responses object.

flowchart LR
  http -- requests --> routes
  routes --> isucondition-core
  isucondition-core -- modles --> routes
  routes -- responses --> http

isucondition-core

core application API. don't handle HTTP

see cargo doc for more details

flowchart LR
  Service --> Repository
  Repository --> DB[(MySQL)]
  Repository -- models --> Service

About

License:MIT License


Languages

Language:Rust 99.3%Language:Shell 0.7%