同时使用来自约100000个用户的Web服务

时间:2013-10-06 15:11:56

标签: web-services

我有一个网络服务,将从约...我们在同一时间(3小时内)说出100000个用户。服务使用Entity Framework 4.1读取和更新SQL数据库。这是代码

    [WebMethod]
public bool addVotes(string username,string password,int votes)
{
    bool success= false;

    if (Membership.ValidateUser(username, password) == true)
    {
        DbContext context = new DbContext();
        AppUsers user = context.AppUsers.Where(x => x.Username.Equals(username)).FirstOrDefault();
        if (user != null)
        {
            user.Votat += votes;
            context.SaveChanges();
            success = true;
        }
    }
    return success;
}

网络服务将从Android手机上调用(正如我所说,也许100000或许更多可能更少,但现在不重要)。是否存在死锁可能性或出现问题的可能性?

从数据库读取时以及更新时会发生什么。正如其中一个答案所说:我正在更新每个用户的字段投票。如果这有任何问题,您如何建议我纠正它。

提前谢谢你:)

1 个答案:

答案 0 :(得分:1)

这应该没问题。

我说的原因是,据我所知,代表用户调用此方法时发生的唯一事情就是数据库中行的计数(Votat)增加了。只要他们只触摸他们自己的行,而不是99999其他用户之一也可能触及的任何行,那么用户之间就没有争用,这应该可以很好地扩展。