0

我正在开发一个 b2b 应用程序。使用将与 FirebirdClient.dll 集成的 b2b 应用程序时,用户登录数据库的次数是否有限制?

4

1 回答 1

0

Firebird 服务器的官方限制发布为 https://www.firebirdsql.org/en/firebird-technical-specifications/
对连接数量没有任何预期限制。

但是,每个连接都会占用一些操作系统级别的资源,例如:

  • TCP 端口,当使用 TCP/IP 连接到服务器时(最典型的情况)
  • 操作系统级进程(当使用经典服务器版/Firebird 模式时)
  • 操作系统级线程(使用 SuperServer 版本/模式时)
  • 内存(用于连接唯一和共享数据库缓存、锁定映射等)

这些操作系统级别的资源几乎肯定会比任何 Firebird 内部限制更早耗尽。

与 FirebirdClient.dll?

我不知道这个库,所以也许它可能会在 Firebird 的基础上施加自己的限制,请查阅该库的文档或维护者。

UPD。Firebird Core 开发人员在http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=523729&msg=20809882上回答(很可能是指当前的 FB 版本 3)

根据连接协议,连接数有以下限制:

  • XNET(本地)- 无明确限制
  • 嵌入式 DLL/SO 库 - 无明确限制
  • WNET (Microsoft Named Pipes) - 255 个连接,受 API 本身限制
  • INET (TCP/IP) - 2048 个同时打开的套接字(总共用于事件连接和数据连接),在 Firebird 中硬编码

使用 Classic Server 和 SuperClassic(但不是 SuperServer)配置/版本可以在不同的 TCP/IP 端口上启动多个 TCP/IP 侦听器,增加 2048 限制(但是客户端应该知道有几个不同的端口可以尝试连接)

于 2017-09-20T09:49:01.323 回答