[[TrainTicket構築]]の続き。
[[TrainTicket]]に負荷を生成する。
## 公開されている負荷生成シナリオ
- [Is there any load generator? · Issue #131 · FudanSELab/train-ticket · GitHub](https://github.com/FudanSELab/train-ticket/issues/131) によると [[pptam-tool]]というものがある。
- 負荷生成自体は、[[Locust]]を使っている。
- [[TrainTicket]]用のlocustfile: [https://raw.githubusercontent.com/pptam/pptam-tool/master/design_trainticket/locustfile.py](https://raw.githubusercontent.com/pptam/pptam-tool/master/design_trainticket/locustfile.py)
- locustfileだけ流用すればよさそう。
- [GitHub - rajibhossen/ts-locust-load-generator: Locust load generator for train ticket booking microservices](https://github.com/rajibhossen/ts-locust-load-generator)
- 第三者?によるLocustの負荷生成シナリオ。
- [GitHub - FudanSELab/train-ticket-auto-query: Train Ticket Auto Query Python Scripts](https://github.com/FudanSELab/train-ticket-auto-query)
- アクセスパターン
## pptam-tool
- UserNoLogin
1. トップページ閲覧
2. 往路の検索
3. 復路の検索
- UserBooking
1. トップページ閲覧
2. 往路の検索
3. 復路の検索
4. チケット予約
5. チケットの取得と利用
- UserConsignTicket
1. トップページ閲覧
2. 往路の検索
3. 復路の検索
4. チケット予約
5. 荷物の発送
- UserCancelNoRefund
1. トップページ閲覧
2. 往路の検索
3. 復路の検索
4. チケット予約
5. チケットのキャンセル
- UserRefundVoucher
1. トップページ閲覧
2. 往路の検索
3. 復路の検索
4. チケット予約
5. 支払い
6. チケットの取得と利用
7. クーポン券の利用
## auto-query and experiment
- [train-ticket-experiment/scripts at master · FudanSELab/train-ticket-experiment · GitHub](https://github.com/FudanSELab/train-ticket-experiment/tree/master/scripts)
- ランダムネスを交えた、[[FudanSELab]]がおそらく評価実験に使用している具体的な負荷シナリオ
- Chaos注入のためのコードもある
- [GitHub - FudanSELab/train-ticket-auto-query: Train Ticket Auto Query Python Scripts](https://github.com/FudanSELab/train-ticket-auto-query/)
- train-ticket-experimentから参照されている具体的なリクエスト発行処理のためのライブラリ
### Workflow
- [train-ticket-experiment/exp_normal.py at d13de33df1c8c46f73a07077a01336b3194cc29d · FudanSELab/train-ticket-experiment · GitHub](https://github.com/FudanSELab/train-ticket-experiment/blob/d13de33df1c8c46f73a07077a01336b3194cc29d/scripts/exp_normal.py#L94)
- 17 tasksのうち3つずつランダムに選んで実行
- デフォルトで100時間繰り返す
- [train-ticket-experiment/exp_change.py at master · FudanSELab/train-ticket-experiment · GitHub](https://github.com/FudanSELab/train-ticket-experiment/blob/master/scripts/exp_change.py)
-
- [train-ticket-experiment/exp_abnormal.py at master · FudanSELab/train-ticket-experiment · GitHub](https://github.com/FudanSELab/train-ticket-experiment/blob/master/scripts/exp_abnormal.py)
- chaos注入を含めたワークフロー