不同业务场景使用不同的方案。
PHP Laravel
优点:
- 开发效率没得说,确实快。有想法时,可以瞬间实现。我依然觉得,如果是作为个人 side project,作为试错,用 Laravel 开发确实是首选。
- PHP 作为最好的语言,各种三方服务都会提供 SDK,或者参考,开发者社区环境很好。
- Laravel 的更新频繁,新功能确实贴心。
缺点:
- CPU 损耗非常高。高到离谱,导致 Laravel 能处理的请求并发数极其有限。虽然网页可以通过静态缓存的方式解决,但是对于接口类的开发非常不合适。甚至所有给客户开发的非网站项目都不适合使用。
- 当 Laravel 的服务需要部署在客户服务器上时,代码无法加密保护。
Golang Gin
优点:
- 代码简洁,规范
- 性能高。适合充分发挥低配服务器的性能。
- 包管理方便,可以方便的发布自己的包到 github 上。
- Golang 版本升级方便
缺点:
- Gin 的内置功能确实有点少
- 三方服务器 SDK 支持有限,需要不断造轮子
Kotlin SpringBoot
优点:
- Kotlin 真是一门不错的语言,弥补了 Java 的不足
- Spring 功能强大,只有你想不到的
缺点:
- 对内存要求高。单台服务器上不适合同时部署多个网站。
现阶段
我现在使用的个人服务器都是小内存的 1 核 1G 的最低配服务器。为了压榨服务器,在上面尽可能多的跑服务器和网站,目前使用 PHP Laravel / Wordpress 开发网站,配合 Golang Gin 写频繁调用的接口或者网页。
待业务增长,低配服务器扛不住时,再考虑换到 Kotlin SpringBoot 的实现。
可以考虑在公司服务器上用 Kotlin SpringBoot 重写部分业务,练练手。
tags: Golang Gin PHP Laravel Kotlin SpringBoot