考虑到90%的时间,开发人员正在使用调试版本,为什么要部署发布版本更可取?在生产中部署调试版本有什么大不了
0
A
回答
1
大小,速度和内存使用。
你的用户并不需要你使用的所有调试工具,所以剥离调试符号可以减少二进制大小和内存消耗(因此可以提高速度,因为将程序组件加载到RAM中花费的时间更少) 。
当您的应用程序崩溃时,通常需要回溯和细节。你的用户真的不会在意这一点。
0
部署调试版本没有任何问题。人们通常不会这样做,因为非调试版本往往更有效率(即,断言代码被删除,编译器不会在目标代码中插入跟踪/调试器信息)。
0
利用Java 1.1的调试版本可能会慢得多,他们需要更多的磁盘空间(在那个时候,磁盘与120兆是巨大 - 尽量适应这样的小型设备上的主目录.. )。
今天,这两个都不是问题了。 Java运行时忽略了调试符号,并且使用JIT,代码在运行时进行了优化,因此编译时优化不再那么重要。
调试版本的一大优势是生产中的代码正是您测试的代码。
0
这完全取决于构建配置,在进行“发布”构建时可能会有编译优化。还有其他的考虑因素,依赖于语言;例如,使用Visual C++编译应用程序时,可以针对不允许重新分发的C RunTime(CRT)的调试版进行编译。
0
我认为这里的关键是确定究竟是什么使构建“调试构建”。主要是生产版本更加优化(内存使用率,性能等),并且已经采取更多的关注来构建它,以便于部署和维护。我遇到的一个主要问题是调试版本有很多不需要的日志记录,导致性能非常显着。
除此之外,调试版本不应该被部署到生产环境中没有真正的原因。
相关问题
- 1. Maven为什么在生产版本中使用测试资源?
- 2. 调试和生产版本的JavaScript
- 3. 在生产环境中部署定制的编译版本
- 4. 部署测试,接受生产并带有生产证书
- 5. jQuery UI图标显示在调试部署但不是版本
- 6. 什么是“测试环境”中的测试过程,已经部署在生产环境中而没有测试
- 7. 两个版本的生产轨道部署中的宝石
- 8. 我在Django生产部署中缺少什么?
- 9. Subversion版本'差异'有什么大不了的?
- 10. Qt调试版本和Qt发布版本有什么区别?
- 11. Django生产部署
- 12. Node.js生产部署
- 13. IIS生产部署
- 14. 守护生产 - 在部署
- 15. mup部署 - 什么都没有发生
- 16. 为什么Xamarin的调试版本太大了,我该如何缩小尺寸?
- 17. 部署版本
- 18. deploy_env在Capistrano部署脚本中做了些什么?
- 19. apache tomcat部署者和核心版本有什么区别?
- 20. Tomcat在部署新版本时取消部署旧版本
- 21. 在与capistrano一起部署时在生产中调试rails应用程序
- 22. Google Play中的生产版本和测试版本
- 23. 在生产中使用Dokku部署NextJS
- 24. 在生产中的weblogic部署
- 25. Kafka和Zookeper部署在K8s生产中
- 26. 将大版本部署到Maven Central
- 27. 在生产中测试部署的方法?
- 28. 在生产环境中部署Grails。 (Hibernate尝试更新架构)
- 29. 部署中{{STATIC_URL}}会发生什么
- 30. 在VC++中调试后发生了什么事情
只是一个错字。我不是邪恶的。 – Blender