佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 842|回复: 2

同时间很多人register in my web system会有问题吗?

[复制链接]
发表于 6-5-2008 09:14 AM | 显示全部楼层 |阅读模式
想请问下。。。我写了一个membership registration web system.

每一个registration都会contain一些calculations如加points给特定的人等等

简单说大概一个registration会需要执行10 sql queries..

那么如果同一时间有5~6人在register account... 请问会导致MySQL overload吗? 敬而miss掉一些sql query..??

if yes.. 该如何避免
回复

使用道具 举报


ADVERTISEMENT

发表于 12-5-2008 05:22 PM | 显示全部楼层
抱歉。。借你的楼用一用。。相关的问题(太多同时间的用户)

如果有两行 code
譬如说买东西的网站


// 1. if sql check quantity > 0

// 2.   sql update quantity = quantity - 1;

但是很巧地,两个人或以上同时进来了。。。
他们在同一时间execute了 line 1, 然后前者execute line 2 之后,quantity 变成 0。。后者在execute line 2,quantity 变成 -1 了!

这种事情会发生吗?
回复

使用道具 举报

发表于 12-5-2008 06:44 PM | 显示全部楼层
原帖由 counterking 于 6-5-2008 09:14 AM 发表
想请问下。。。我写了一个membership registration web system.

每一个registration都会contain一些calculations如加points给特定的人等等

简单说大概一个registration会需要执行10 sql queries..

那么如 ...


Miss掉?不会Miss掉。反而应该小心的是你要如何拿回一个User所execute 的 result。之前有问过,如果是用SELECTMAX(id)。。。 就可能会有问题。应该尽量用mysql_insert_id(),还有Session_id来分辨谁是谁。

只有5-10个人,还OK啦。如果Server 够快,网速好,MySQL应该可以suppoer上百,甚至上千个人的。。。。


原帖由 neobie 于 12-5-2008 05:22 PM 发表
抱歉。。借你的楼用一用。。相关的问题(太多同时间的用户)

如果有两行 code
譬如说买东西的网站


// 1. if sql check quantity > 0

// 2.   sql update quantity = quantity - 1;

但是很巧地,两个 ...


会发生这样的情形噢。要如何避免。。。 还没想到一个比较有用的方法。其他大大有什么Idea?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 28-12-2025 02:26 AM , Processed in 0.121545 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表