@zhenjunluo 简单说,就是把 rails 搞成一个 rails-api,页面展现别揉在 rails 里面,把页面前端做成 webapps,今后可以直接换成 iOS/Android 等 Native Apps,后端基本不用改动。
@zhenjunluo 搞太复杂了!页面的咚咚可以静态化或者提前缓存好,请求和加载数据的活交给 js 吧,ruby 只负责把处理完的结果通过 json 反馈给 js,这些线程、进程的复杂事情都交给 web server 和 app server 去干,你的线程处理得再好也不如一个成熟的 web server 能力强。
光踏实,想学是不够的,楼主朋友是学什么的,有计算机相关基础吗,比如算法,操作系统,数据结构等等?
查词典,或者http://translate.google.cn/ ,都有发音
没必要太拘束,小公司的优点就是灵活,先把事情搞起来,再逐步优化,一开始想太多会畏首畏尾的
会写代码不一定能做好的项目,是有基础知识的积累的,比如算法,数据结构,操作系统,数据库,这些必须有相应概念,如果做高性能系统,还需要了解各种流行架构,cache 系统,分布式系统等等,光单纯的程序员竞争力是不够的
纸上手绘。。。
压力大的话在架构调整时,物理上也可以考虑分离,比如所有老版本用一组服务器,新版本用一组服务器,保证不会相互干扰
@huacnlee 嗯,我也去试试,虽然我们不用 thin
最安全的方法是起多个实例,前端加个 nginx 代理一下,nginx reload 不会影响用户访问,可以把要重启的 thin 从 nginx 配置中注释掉,reload nginx,然后重启 thin,然后再改 nginx 配置,同样方法重启其他 thin
@hlxwell 另外,超高并发的系统不会直接用 rails,它太臃肿了,只会用精简版的或者 sinatra 之类小框架,要不光内存消耗就吃不起
@hlxwell 楼主,我觉得一天 1-2 千万的 PV 估算有问题吧,一天几千万 UV 还差不多,PV 肯定上亿;我们公司自己的小业务每天都 2 亿多的访问量,600 万的 UV,全国这么多上网用户,过节不管是回家还是出去玩,流动的肯定上亿人次。
想学好还是自学吧;锻炼下自学能力,这个在今后的工作中很重要,公司内部只会有业务培训,技术方面都要自己去学
我用的也是 Linode,选的是日本的服务器,速度还可以
app server 用的什么?
提交用户名和密码肯定不能用 GET,要不 URL 里面都可以看到啦;所以,POST 肯定比 GET 要安全一些;另外,由于数据大小限制,一般上传文件肯定要用 POST;数据库操作和 HTTP 方式没啥关系
说的太不具体了
嗯,cache 才是王道,不过要根据不同应用场合选择不同类型的 cache 和架构,总之,目的就是尽可能的减少数据库的 I/O 操作,毕竟内存的操作速度会快好几个数量级
这些处理的方法不光在 ruby 上有用,对于其他语言来说都有参考意义;所以我们招人是也是必然要考察对高性能系统的经验,这个比语言本身要重要很多
学 ruby 和六级有啥关系,没考过 6 级的人飘过
是很好用,不过要习惯以后才会觉得,初学肯定一堆问题