Web 全栈框架, Rails or Django? (有部分爬虫需求)

2016-11-06 18:47:28 +08:00
 WildCat

团队现状: 一共两人,一个负责 marketing/product ,一个(我)负责开发(全栈)。非前后端分离应用。 个人对两个框架的熟悉程度:Rails 过去用的稍多,Django 少一些但是比较熟悉。

web 框架选择考虑如下几个方面(含个人简介,求评价):

  1. ORM :肯定 ActiveRecord 最方便,但是 Django ORM 也很好用了
  2. 爬虫需求: Rails 里打算 mechanize + nokogiri + sidekiq + whenever ,感觉这样性能不高。 Django 里面打算通过 celery 调用 scrapy 。总体 Python 里写爬虫方便。爬虫有重度需求(约为后端总代码量 30%)。
  3. 后台: Rails 目前考虑 rails_admin ,但是感觉 Django admin 更好一些
  4. asset pipeline : Rails 的感觉挺好用, Django 不了解。即使不行也不用担心,大不了用 webpack 自己打包。
  5. 微信相关库:感觉都差不多。

纠结的点主要在 rails 和 ruby 上,这两者感觉更新都不活跃了, TIOBE 最近的排名 Ruby 掉得也很快。生态上还是 Python 稍胜一筹。

10367 次点击
所在节点    程序员
71 条回复
WildCat
2016-11-08 02:55:37 +08:00
@nanlong
@kvwror

Rails 里调用 scrapy 有什么比较优雅的方法吗?


@liqiazero Elixir 没干爹,看过语言基础,但是不太想用。 Phoenix 有个疑问就是如何做 cache ?


@ryanzyy Amazon lambda service 是不是过分押注 AWS 不太好呢? React 是很喜欢但是做这种 quick prototype 开发效率还是不够高,所以暂时不想前后端分离。

另外十分感谢楼上诸位!
Miy4mori
2016-11-08 03:18:54 +08:00
没必要两种需求都用一种语言实现啊,肯定是混搭使用适合用啥就用啥,不就是图个快, node 系列的技术栈不建议使用,坑多,难踩…
georgema1982
2016-11-08 08:05:52 +08:00
我个人感觉 django 的设计思路甩 rails 和仿 rails 框架几条街。当然框架本身是否优秀是一回事,你自己熟悉哪个又是另一回事。
nanlong
2016-11-08 09:18:51 +08:00
@WildCat phoenix 做 cache 太简单了 因为 elixir 的底层是 erlang 所以可以使用 erlang 的 ETS 做缓存 连 redis 都不用装. 另外已有 cache 库了, 就在 GitHub 上,这个就是基于 ETS 。 https://github.com/sasa1977/con_cache
nanlong
2016-11-08 09:30:04 +08:00
@WildCat 虽然 Elixir 没有牛逼的干爹,但作者曾是 rails 的核心开发人员,并且此语言作者也参与 phoenix 的开发。我认为做 rails 的那批人才是真正做框架的。吸收无数高手多年的开发精华、最佳实践,融为 Elixir on Phoenix 。
shyling
2016-11-08 10:10:32 +08:00
在我的印象里。。选 ssh 我都不会选 django 。。当然,不是在黑
kideny
2016-11-08 10:27:24 +08:00
1, php 推荐 phalcon ,哈哈。
blacklee
2016-11-08 10:41:09 +08:00
看样子像是在小型创业阶段?
在这种时候做选择题的话,只有一个标准答案:快!
这个快是只落地快,而不是什么机器运行速度。
当前最急迫的事情是以最快的速度验证你们的 idea 是否有人愿意埋单。
但楼主还有时间纠结框架、语言选择,不免让我一个旁观者对你们项目的前景表示一点点不看好。
blacklee
2016-11-08 10:50:13 +08:00
我的合伙人就有那种典型的技术人员的追求完美的毛病。唉,我忍不住想在这多说两句。
「 You're not paid to write code, you're not paid to think about problems, you're paid to deliver a working solution, and nothing else matters.」
在赚到钱之前,不要总想着把代码写得多漂亮,把实现写得多优雅。
当然这并不意外着代码可以随便写,而是在投入和产出之间要找到一个平衡:代码能工作,可维护。
TangMonk
2016-11-08 10:52:35 +08:00
web 开发速度, rails 业界最快,没有之一
crazycookie
2016-11-08 13:54:11 +08:00
@TangMonk django 一点都不比 Rails 慢
fx
2016-11-08 14:00:02 +08:00
不要用 node
不要用 node
不要用 node
fx
2016-11-08 14:00:18 +08:00
web 开发速度, rails 业界最快,没有之一
fx
2016-11-08 14:00:34 +08:00
we b 开发速度, rails 业界 最快,没 有之一
rupert
2016-11-08 14:02:47 +08:00
推荐 elixir/phoenix , 在 productive 和 perf 之间做平衡
georgema1982
2016-11-09 02:54:58 +08:00
@crazycookie 事实上比 rails 还快。很多习惯 rails 风格的程序员都有些井底之蛙的感觉
georgema1982
2016-11-09 02:55:49 +08:00
@shyling 对于不会用 django 的人来说,你还是一边用 ssh 一边黑 django 吧
crazycookie
2016-11-09 08:41:20 +08:00
@georgema1982 django 经历了 10 之久,已经完全是一个体系和生态了。
传统 web 开发,论速度,工程质量,可维护性,我想知道还有谁?!!
shyling
2016-11-09 11:05:22 +08:00
@georgema1982 仿佛别人什么都不会的样子 0.0
shyling
2016-11-09 11:06:54 +08:00
@crazycookie 仿佛 rails 没它老?

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

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

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

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

© 2021 V2EX