我的Web服务服务器端应用程序为来自不同用户的请求提供存储过程。我正在为每个请求打开和关闭ADO连接。这是可取的还是任何人都可以提出更好的方法?并帮助我进行会话管理。 提前谢谢。
答案 0 :(得分:1)
ADO支持连接池,因此在TADOConnection的Connectionstring属性上启用它
答案 1 :(得分:0)
从空白创建新连接可能非常耗时(例如,使用远程Oracle连接时间超过1秒),因此应该像服务应用程序一样避免使用。
恕我直言,最佳解决方案(来自性能POV)是为每个服务器线程维护一个数据库连接。所以它将取决于您的HTTP服务实现。
如果你不想处理线程,也可以使用连接池,正如穆罕默德在他的回答中写的那样。
还要考虑使用服务器端缓存的答案。如果您知道结果将是一致的,则应该更好地将其缓存在服务器端并在客户端之间共享。当然,只有客户请求可以共享时才值得开发。
关于会话管理,您想知道什么?我想这是关于客户端会话。对于Web服务,主要用途是通过cookie实现会话。有关其他可能性,请参阅this SO answer about authentication of a web service。恕我直言,RESTful方法(即无状态)值得考虑用于Web服务。