池(pooling):
池化的服务器对象提前被构造和初如化
·能限制实例的个数(最小值,最大值)
·实例能被多个会话共享,用来支持更多用户的请求
·当返回池中的时候实例必须复原
·(池化的服务可以让WEB应用程序在用户之间共享)
非池化的对象每次重新构造和初始化,并在返回服务器时析构
·能限制最大实例数
·每个会话使用一个实例
·(非池化的GIS服务的实例为单独的用户所占有,当用户操作完成后,该实例被销毁)
服务器对象可以有状态或无状态使用:
·无状态(即只读)使用时,可以和其他用户,并发会话共享服务器对象;
·有状态(即读写)使用时,不可以和其他用户,并发会话共享服务器对象。
状态和池的关系:
·池化的服务器对象只能在无状态行为中使用
---你必须负责服务器对象的状态在释放时不被改变
---当释放服务器对象时,它们返回池中
·非池化的服务器对象能在有状态行为中使用
---只要状态对你是重要的,你就必须持有它们
---释放时析构
服务器上下文:(还是没看懂)
·一个服务器上下文是运行一组服务器对象的服务器上的保留空间
·可以将服务器上下文想象成一个进程,由运行服务器对象的服务器管理
·在同一个服务器上下文中的对象合作更好
·服务器上下文提供了一种在相同的空间和“进程”中创建对象的方法,并作为一个运行的服务器对象