Apusic 与IIS 不是简单的集成,使用了Apusic定义的ACP(Apusic Connector Protocol)协议,除了可以使外部Web 服务器连接到Apusic 以外,ACP协议还具有可伸缩性(Scalibility)、负载均衡(load-balancing) 和容错(fault tolerance)能力。ACP可以和多种Web 服务器连接,目前提供和IIS 的接口,使用IIS作为Apusic应用服务器的Web代理,具有以下特性:
可伸缩性:从一个由单台PC 服务器建立的简单站点到由几十台高性能Unix 主机组成 的大容量商业站点都可以由Apusic 提供动力。例如,可以用10 台运行Apache Web Server 或Internet Information Server 的服务器通过循环DNS 或其他负载均衡技术组成Web 服务器 集群。用30 台以上运行Apusic 的服务器组成应用服务器集群,两个集群之间通过ACP 连接成更大的集群系统;
负载均衡:ACP 将客户的请求转发给内部应用服务器,对内部服务器的选择是随机的, 使负载得以平均分配。ACP 会正确处理HTTP session,同一个session 中的所有请求都路由到最初产生session 的服务器,即使路由出现错误,Apusic 的分布式session 管理器也会正确 迁移session 数据。
容错:当任何一个应用服务器失效时,ACP 立即将请求转发给其他正常的应用服务器, 不会出现单点故障,错误的恢复对客户端是透明的。ACP 维护一个由正常服务器组成的链 表,当发现某个服务器出现故障时将其从链表中删除,并在后台试图对失效的服务器重新连接,一旦连接成功就将其放回到正常服务器表中。
高速缓存:ACP 将从应用服务器中获得的数据缓存起来,如果数据没有改变,将直接向客 户端返回缓存中的数据,这样可以降低应用服务器的压力,提高整体性能。