Heroku C应用程序。使用TCP/UDP套接字的服务器
我正在使用BSDSockets开发一个服务器应用程序,这是一个C项目,它是在Heroku上使用自定义构建包构建的 我不知道以后如何执行二进制文件 构建包包含:Heroku C应用程序。使用TCP/UDP套接字的服务器,c,sockets,heroku,C,Sockets,Heroku,我正在使用BSDSockets开发一个服务器应用程序,这是一个C项目,它是在Heroku上使用自定义构建包构建的 我不知道以后如何执行二进制文件 构建包包含: bin/ detect.sh compile.sh release.sh release.sh #!/usr/bin/env bash # bin/release <build-dir> cat <<EOF --- config_vars: PATH: /app/bin:/usr/loca
bin/
detect.sh
compile.sh
release.sh
release.sh
#!/usr/bin/env bash
# bin/release <build-dir>
cat <<EOF
---
config_vars:
PATH: /app/bin:/usr/local/bin:/usr/bin:/bin
EOF
serverUDP
是应用程序bin/文件夹中二进制文件的名称
编辑:
生成日志:
-----> Fetching set buildpack https://github.com/damorton/heroku-buildpack-c.git... done
-----> C app detected
-----> Compiling with Make
make: `vendor/bin/busltee' is up to date.
-----> Discovering process types
Procfile declares types -> spinup
-----> Compressing... done, 4K
-----> Launching... done, v20
https://hangman-udp.herokuapp.com/ deployed to Heroku
日志:
部署后的命令:
heroku ps:scale spinup=1
假设它成功构建和部署了一个dyno,那么它应该加载slug并执行命令。要缩放和/或更改dyno配置,需要使用所选选项发出命令。例如:
$ heroku ps:scale web=2 queue=1
这将启动三个Dyno;两个用于web,一个用于队列进程。您还可以通过使用类似的命令增加RAM和CPU共享来扩展dynos的单独功率:
$heroku ps:scale web=2:standard-2x queue=1
我发现
Procfile
用于在构建之后执行二进制文件。我当时遇到的问题与正在执行的二进制文件无关,而是二进制文件没有被构建。所以我使用cmake
buildpack来安装cmake。然后我用cmake来构建我的项目。除了链接到共享libs的相对目录之外,所有这些都在构建端运行良好
对于有相同问题的任何人:
- 对
使用构建包,然后对cmake
c
- 使用
在生成后执行带参数的二进制文件Procfile
heroku ps
会告诉我进程已崩溃。您是否有任何日志或转储文件提供有关进程崩溃的详细信息?
$ heroku ps:scale web=2 queue=1
$heroku ps:scale web=2:standard-2x queue=1