微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

光滑的数据库配置更改为 URL,现在请求很慢

如何解决光滑的数据库配置更改为 URL,现在请求很慢

我正在使用 Slick 访问本地计算机上的数据库。我之前使用的配置是

db = {
  connectionPool = "HikariCP" 
  dataSourceClass = "org.postgresql.ds.PGSimpleDataSource"
  properties = {
    serverName = "localhost"
    portNumber = "5432"
    databaseName = "postgres"
  }
  numThreads = 10
}

效果很好。

现在我正在部署到 Heroku。由于 Heroku 以环境变量的形式提供数据库访问权限,因此我更改了配置以使用 URL。请注意,所有这些仍在我的本地机器上运行:

db = {
  dataSourceClass = "slick.jdbc.DatabaseUrlDataSource" 
  driver = "slick.driver.PostgresDriver$"
  properties = {
    driver = "org.postgresql.Driver$"
    url = "jdbc:"${DATABASE_URL}
  }
  numThreads = 10
}

无论出于何种原因,性能已经慢到爬行。我设法通过了一些请求,但大多数都超时了。

我确认我的 url 正确解析为 jdbc:postgres://localhost:5432/postgres,并且我的 db.forConfig("db") method returns。我不明白为什么其他所有事情都需要这么长时间,我对查询返回的 Future 进行了超时/错误处理,所以我应该看到这一点,但我的客户端连接超时。

另一件事是现在没有ctrl+C是不可能退出程序的;我对其进行了设置,以便在我按下 Enter 键时它会正常终止,但现在它会通过终止例程(包括 db.close()),然后保持挂起状态,直到我强迫它死亡。怎么回事?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。