为什么RESTful应用程序更容易扩展

Nic*_*las 12 architecture rest web-services

我一直认为选择RESTful架构的一个原因是(其中包括)具有高负载的Web应用程序的更好的可伸缩性.

这是为什么?我能想到的一个原因是,由于每个客户端定义的资源相同,缓存变得更容易.在第一个请求之后,后续请求从memcached实例提供,该实例也可以水平扩展.

但是你不能用传统方法来实现这一点,其中动作在URL中编码,例如(booking.php/userid = 123&travelid = 456&foobar = 789).

Tom*_*rdt 15

REST的一部分确实是URL部分(它是REST中的R),但S对于缩放更为重要:状态.

REST的服务器端是无状态的,这意味着服务器不必跨请求存储任何内容.这意味着服务器之间不必进行(多)通信,使其可以水平扩展.

当然,在R(代表性)中有一个小小的好处,因为如果你有很好的URL,负载均衡器可以轻松地将请求路由到正确的服务器,而当POST转到主站时,GET可以转到奴隶.