node 高薪 还是 php,用node开发一电商网站,好不好,和php比较有什么利弊,求解答...

不建议使用node写。因为node的特点是偏向于性能,而php的特点是注重逻辑。

开发电商网站的话。是对逻辑有更多要求。比如说,分类,商品,评论,订单,之类的都是业务逻辑。

平台模型特性

php 的(fpm)模型是基于线程的同步模型。所以你可以把大把的精力花在怎么处理你的业务逻辑。而不是去向java那样去捣鼓线程同步,资源抢占上面。更不用想node那样去考虑阻塞,异步流程,和异常管理。这种模型对于性能上很粗暴但是对于业务开发成型非常有效。进程模型在低并发的场景中是非常有效的,没有内存泄漏,和健壮性不高带来的问题。因为一个线程的结束,就意味着所有占据的资源都得到释放。php使用c作为扩展载体也确保了计算和io的性能。

node 是基于单线程异步模型。所以你需要考虑的事情就比较多了。异步流程控制,单线程是脆弱的,需要做master/slave来增强健壮度。还要考虑异步下的异常处理。单线程也意味着不能容忍任何低性能(耗时计算等)和阻塞。

框架与类库

php社区现在发展的也越来越好,有symfony2和laravel等框架都让你不用去自己去造轮子。自己现在的各种第三方平台都对php提供支持。而且以上两个框架都提供了依赖注入,orm,模块化开发,资源管理等特性。可以轻松开发业务复杂而了扩展性好的web程序。对rest也都有很好的支持。横向扩展也很好。

node在web开发框架上只有connect,express比较成熟一些,而且express并不是一个mvc框架,准确来说是一个http业务层框架。也就意味着你需要分散一些精力去处理除业务逻辑之外的部分,比如如何分层,选择什么样的orm,采用什么样的模板引擎等。而且express的很多功能需要中间件提供支持,比如 cookies, session, json,crsf等。驾驭好express需要对http有深入的认识。对rest支持比较裸露。需要使用第三方类库才能优雅支持,通过express构建业务复杂扩展性好的web程序需要开发者不仅拥有比较强的js功底和开发复杂业务的经验还要有维护优雅可扩展代码的能力。

所以个人认为nodejs不适合开发具有以下性质的产品

1.原型产品

2.对性能无要求产品

3.计算量更多

4.团队中js能力整体比较弱

所以 你的 的问题 起码占了1,2。不推荐使用node。

node固然美使用需谨慎,因为他有很多坑需要开发者来填。nodejs个人认为相比较其他平台还是太年轻,这也意味着,我们需要帮助node长大。变成高性能和易用并存的强大平台。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值