Skip to content

asuka1975/isucon-knowledge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 

Repository files navigation

やっておきたかったリスト

ラスト30分にやることリスト

  • systemctlの永続化
  • ログ消す
    • アプリケーションログ
    • nginxログ
    • mysqlログ
  • 各インスタンスの疎通確認

メモリキャッシュ

  • 各テーブルがどれくらい変更されるかのモニタリング
    • 全く変化しない → 最初にメモリに全部上げる
    • 少し変化する  → 寿命を設けてメモリに上げる
    • めっちゃ変化する→ メモリキャッシュしない
  • 一応キャッシュ機構作ってみたもののmutableなオブジェクトを渡したときの動作が保証されてなさそう
  • memcached, redisの秘伝のタレ作成

ブランチどう管理するか問題

  • ベンチ中にブランチ切り替えたりサービス再起動したりと色々問題があった
  • ベンチ中は操作不可能なdeployスクリプトを作る  $ deploy branch_name的な
  • 各々が$ deploy asuka-implement-hogeやったあとに、MR作成してmainにマージ、マージコミットのメッセージにスコアの変化を記録する

/etc/..とappでそれぞれローカルリポジトリを作ったけど他のインスタンスへのミラーリングどうするか問題で負荷分散nginxは諦めてしまった。

mysql, nginxの負荷分散が意味なかった

  • topコマンドでnginx, mysql, appどれが影響しているのか把握する
    • topコマンドは各SQLクエリやappのどの関数が重いかを詳らかにはできないが、負荷分散の指標として役に立つと思う

コア数・メモリ確認

  • lscpu | grep CPU
  • コア数に基づいて最適なnginxへのコア数割当が決められる
events {
  worker_processes auto;
  worker_connections 1024;
}

多分ここらへんの設定は負荷分散しない場合はコア数に余裕を持って、負荷分散する場合はマックスまで引き上げるべき

  • mysql, nginxの最適な設定も考えねば、connection poolとか、、、

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published