我正在尝试设置一个包含 3 个共享一些库代码的服务的 monorepo。
这是目前的情况:
repo: web
pdf/
package.json
reference to shared-ts using github url
tsconfig.json
frontend/
package.json
reference to shared-ts using github url
tsconfig.json
Run Code Online (Sandbox Code Playgroud)
repo: mobile (react-native)
package.json
reference to shared-ts using github url
tsconfig.json
Run Code Online (Sandbox Code Playgroud)
repo: shared-ts
package.json
tsconfig.json
Run Code Online (Sandbox Code Playgroud)
这可行,但提交shared-ts、构建、更改哈希package.json并再次提交是一件痛苦的事情。
这就是我想要实现的目标:
repo: monorepo
pdf/
package.json
reference to ../shared-ts
tsconfig.json
frontend/
package.json
reference to ../shared-ts
tsconfig.json
mobile/
package.json
reference to ../shared-ts
tsconfig.json
shared-ts/
package.json
tsconfig.json
Run Code Online (Sandbox Code Playgroud)
到目前为止我已经尝试过:
"shared-ts": "../shared-ts"在 package.json 中,但它将共享 ts 复制到每个包的 node_modules 中,因此每次进行更改时我都必须重新运行yarn …我正在 Heroku 上部署一个 Django 应用程序,我发现我的请求中的大部分时间都花在了psycopg2:connect函数上。
参见 New Relic 图(蓝色是 psycopg2:connect):


我认为在 db 连接上花费 60% 的时间是不够的......
我尝试使用连接池,django-postgrespool但没有注意到任何区别。
我waitress用作服务器(根据这篇文章http://blog.etianen.com/blog/2014/01/19/gunicorn-heroku-django/)。该应用程序在带有 Hobby 基本 Postgresql 数据库的 Hobby dyno 上运行(升级会使其更好吗?)。
关于如何加速这些连接的任何指示?
[更新] 我做了一些更多的挖掘,当使用 django rest 框架可浏览 api 时,这似乎不是问题:

在之前的屏幕截图中,14:20 之后发出的请求是对相同的视图发出的,但没有?format=json,您可以看到psycopg2:connect速度要快得多。也许 django rest 框架中的某个地方存在配置问题?
django ×1
heroku ×1
javascript ×1
monorepo ×1
npm ×1
postgresql ×1
psycopg2 ×1
react-native ×1
typescript ×1