0

挿入クエリを起動するときはいつでも、その時点でその特定のテーブルが一定期間ロックされます。その時間は、行をデータベースに挿入する必要があるかどうかに応じて、数マイクロ秒または数秒になります。

ユーザー数が少ない大学向けのアプリケーションを開発しています。

ここ数日、私はそれをグーグルで調べていて、次のような統計を得たので、私はそれを世話しています

10 simple read query = 1 simple write query

主な問題はnotification、教師が更新を行うたびに、私は生徒に通知し、興味のある生徒だけが通知を受け取ることです。そのため、1 回の更新で 10000 件以上の通知が発生する可能性があり、これには間違いなく 3 ~ 5 秒かかり(waiting time)ます。したがって、すべての読み取りがキューに入れられます。

では、待ち時間を短縮する方法はありますか?

4

1 に答える 1

1

前者には行レベルのロックがあり、後者には書き込み時にテーブルレベルのロックがあるため、MyISAM の代わりに InnoDB を使用することもできます。InnoDB をテーブル エンジンとして使用する場合、1 行のみがロックされますが、他のコンテンツは引き続き表示される可能性があります。

于 2012-07-04T10:33:51.830 に答える