【问题标题】:Multithreaded RTC server and DB connection pool多线程 RTC 服务器和 DB 连接池
【发布时间】:2013-10-31 12:36:38
【问题描述】:

你有什么建议?

将 TRTCHttpServer 放在主窗体还是与其他服务器组件一起放在数据模块中更好?在演示应用程序中,两者都有实现。将使用多线程属性 TRUE 设置组件。据我所知,当客户端连接时,它是否在主窗体中与每个线程一起创建数据模块。是真的吗?

另外,如果我想为数据库连接(TZConnection)创建一个池算法应该放在哪里?在具有其他服务器组件和 DBAware 组件的数据模块中还是在单独的数据模块中?池算法将像这样线程化:

DB Connection pool 服务器应该有数据库连接池并且是多线程的。它可以通过 RTC 组件来实现。它将作为 3 层架构的第 2 层。第三层是通过 ZeosLib 连接的 MySQL。

感谢您的回答。

PS:我已经搜索了任何其他建议,但我无法说清楚。请帮忙。

【问题讨论】:

    标签: multithreading delphi connection pool realthinclient


    【解决方案1】:

    我猜你有几个问题在一个...

    1. AFAIK RTC 使用线程池,以获得更好的可扩展性和更少的资源使用。所以你不能假设每个客户端都有一个线程。

    2. 总是首选将你的逻辑放在数据模块中,并且永远不要放在主窗体中:不要混合 UI 和服务器 - 例如,托管你的服务器可能是有意义的在服务中,在生产中。

    3. 如果你使用的是ZeosLib,你说的连接池与ZDBC连接池无关。

    【讨论】:

      猜你喜欢
      • 2023-02-22
      • 1970-01-01
      • 2013-11-15
      • 2019-07-07
      • 2018-08-13
      • 2011-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多