我对电子商务网站闪购期间出现的情况有疑问。假设库存中只有5个项目,如果10000个请求在同一时刻到达服务器,服务器如何处理请求以及如何设置订单请求?
答案 0 :(得分:0)
考虑到当前计算机的CPU速度,如here
每秒100万个请求,每1000个请求1个 cpu cycles。
虽然请求来自世界各地,但它们是通过单一渠道接收的。这意味着即使它们是在同一时间发起的,两个请求也会相继发送。如果考虑两个请求的路由条件,则接收的时间肯定不会相同。他们不可能在同一时间点击服务器。因为路由不允许它以防止冲突。
因此,处理请求的顺序是它们在网络接口处接收的顺序。请求数据包通过应用程序层后,每个客户端都有一个专用于自己的线程。但是,您提到的共享变量(如您提到的5个项目)的访问权限将同步。因此,只有获得这些共享变量锁定的前5个线程才会获胜。