session.push的最好解释:

    前端服务器的sessionService会维护内部的session信息,这个session信息会维护连接等信息,用户不应该直接访问以及修改它。对于前端服务器,访问的时候会使用FrontendSession,可以看作是当前内部session的一个snapshot,对于后端服务器的话是BackendSession。如果要修改内部session的属性,只能通过push操作,才能进行修改,修改后,当下次取用session的时候,无论是FrontendSession还是BackendSession都会是最新的内部session的snapshot。

    如果set后没有push,将会影响本次请求的后面处理部分使用的session,不会影响到下次请求,因为下次请求时使用的session依旧是内部session的最新snapshot。也就是说如果不push,仅仅set的话,当请求处理完成后,对其进行的修改将被丢掉。