PHPer 想学 Java Web

2017-05-29 20:29:30 +08:00
 sfree2005

最近看了一些框架性能的对比,感觉还是有些担心 PHP 框架在某些业务场景扛不住,所以想学学 Java web, 在多任务,并行计算,处理并发上发挥优势。

Java 的生态环境不用说,该有的都有,搬砖就是,需要思考的就是针对实际的应用场景选择合适的架构。

工作之后后端都是用 PHP,最后用 Java 还是在学校的时候,只是写了些简单的小程序。大概在网上搜了下,了解到 Spring 应该是比较大而全的框架,Dropwizard 比较轻量级。

都说现在的趋势都是 Microserivce,所以我应该比较偏向使用 Dropwizard. 前后端分离,就只用 Dropwizard 做 API。 例如我可能用 PHP 负责网站登陆模块,Java 负责高级搜索模块。

熟悉 Java 的朋友,你们觉得我的想法有没有得搞?

6503 次点击
所在节点    Java
43 条回复
sfree2005
2017-05-30 11:26:34 +08:00
@gouchaoer 恩,这也是个不错的解决方案,到时可以试试。
sfree2005
2017-05-30 11:29:25 +08:00
@ixiaohei 非常感谢如此详细的回复,你提到的关键词都会去看看。
ixiaohei
2017-05-30 11:55:48 +08:00
mybtais 打错了,应该是 mybatis (学 3 别学 2,mybatis 跟 ibatis 是一个东西。当年 ibatis 给 apache 维护不上心,ibatis 团队要回 ibatis 自己维护,然后改名成 mybatis,之后更新了很多东西,但是现在老项目很多用 ibatis,新手直接学 mytatis3,上手一天就行)。mac 输入法真心不好用,见谅
sagaxu
2017-05-30 12:27:35 +08:00
既然是现在入门,直接学 Kotlin 吧,小项目框架就用 springboot,大项目用 springcloud 服务化,简单查询用 springdata,复杂查询再 fallback 到 mybatis,springmvc 挺好,structs 不宜再碰了。
crossoverJie
2017-05-30 12:54:29 +08:00
新项目的话就不要用 dubbo 了 免得今后还得换 直接 springboot+springcloud 应该就是之后的趋势了 现在项目正在用 感觉还不错。
weer0026
2017-05-30 13:53:31 +08:00
我也有和你一样的问题,不过我开始尝试用 Go 来处理高并发场景,冗杂的业务用 PHP 来写还是很舒服。
sfree2005
2017-05-30 15:37:42 +08:00
@weer0026 go 的生态基本够用吗? 之前就是担心 go 比较新,生态还不够 Java 丰富
weer0026
2017-05-30 18:52:00 +08:00
@sfree2005 够用但是肯定没那么成熟,我是混用的,有几个并发高的接口被我用 Go 重写了,而且我觉得写业务还是 PHP 好用。
recovery0394
2017-05-30 19:10:26 +08:00
php 挺好的啊。另外 go 语言的热度近两年也是在上升的。java 内容太多容易学偏,要找对方向才行,18 楼讲解的方向可以。
wdlth
2017-05-30 20:09:52 +08:00
这不是换一种语言的事情,换 Java 意味着需要将整个技术栈进行更新。PHP 可以无脑写,出错可以当场改文件,但 Java 就没这么简单了,要编译要部署,框架出个错 Backtrace 给你返回几页甚至几十页。
你可以先尝试把业务从 PHP 框架中移植到 Java 的框架中,两种语言语法上差别不。密集计算还是用 C、C++吧。
wangchenyang
2017-05-30 20:10:51 +08:00
可以用一下 jfinal,一个国产 java web 框架,简单、方便、实用,社区很不错
sagaxu
2017-05-30 20:33:26 +08:00
@wangchenyang jfinal 就算了,外包项目公司专用,拼堆 CRUD 代码的速度
sfree2005
2017-05-30 20:49:12 +08:00
@wangchenyang 由于是外企,所以暂时不考虑国产框架。依然谢谢你的回复。
sfree2005
2017-05-30 20:56:50 +08:00
@wdlth 实验性质,应该只是将部分性能要求高的业务转到 Java,用的感觉如果不错或许会在新项目中全面使用。 密集计算什么的,业务暂时还不需要。
zachping
2017-05-30 21:43:55 +08:00
其实,php 够用的...
要学的话,我觉得 Go 不错..
我也是玩 PHP 的....
准备下一个 学 Go..
zjsxwc
2017-05-30 21:48:06 +08:00
主流不都是:脚本语言写业务,静态语言写中间设施吗?
mrgeneral
2017-05-31 12:18:11 +08:00
PHP 快速开发,PHP7 也不慢,JIT 也有了可喜进展。但是缺乏稳定运行的机制,不适合 Daemon 服务比较蛋疼。
公司有个 java 推送服务,跑了 1 年没人维护,也没出错,换成 PHP 估计够呛。

所以你得看使用场景。PHP 做 web 和 API 开发,都是很不错的选择。java 也有适合他的场景。

武林里面各种武器都有,挑一个合适的就好。
bk201
2017-05-31 13:38:49 +08:00
和语言好像没啥关系,apache 的一些项目是支持多语言的
sfree2005
2017-05-31 15:05:04 +08:00
@mrgeneral 恩 我这里看上的就是 JAVA 的性能和稳定性,复杂一些的场景就需要它
sfree2005
2017-05-31 15:09:10 +08:00
@bk201 不是很明白。看业务场景,也不一定需要 Apache 的支持。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/364638

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX