在济南的 ruby 人可以关注一下,@espercn是我的老同事,人很靠谱,也非常幽默,跟他干事情应该会学到不少东西。
先用 monit 顶一阵。开多个 puma 的进程,定期重启内存超标的进程。ruby 这东西的内存经常会产生这种问题。自杀是避免不了的,memcached 的缓存要加上。
update_column 是直接更新数据库了,应该不会担心并发问题。你可以先执行线程把数据取回,再调用更新 model 的属性。而不是最后每个线程都打开一个数据库连接。
从我们项目的角度看,Rails 比较适合做 web 开发的,但我们一部分系统正从 rails 中剥离出去,但是 Elixir 不是我们的选择,主要解决问题的一些库不全,例如处理消息中“@”的库,我们过去利用的 twitter 提供的库,他们只有 ruby 和 java 的版本。最后我们选择用 java8 + akka 来重建部分系统,Elixir 还在密切关注。未来云计算肯定是趋势,万物互联也是趋势,分布式计算更是趋势,但 ruby 在这方面明显发展比较滞后,期待 ruby 3.0 能实现 actor 的架构。
居然在我们小区对面。
我们其实也在天津招,但感觉的玩 ruby 的人太少,更多的办法直接选 java。一部分服务从 ruby 转向 java。
ruby 的并发跑多进程还算凑合,一碰到分布式 OTP 就显然更方便。
grape 你需要在 before 和 after 对 user 对象处理,比较安全的办法是在 Thread[:current_user] 上存取对象。
看到很多二手转 HHKB 的,我还是理性观望。这个蓝牙好像不是 4.0 的吧?
多出去玩,参加各种驴友的团,多读书,每年读十本人文类书籍。不穷不土,做到了这个,你再听其他人的建议啊。
感觉用rails弄soap替代c#不是什么好主意。
还有种办法就是使用 nginx+lua 开发应用防火墙
python 挺擅长这个,生态来的早。ruby 发扬光大靠的是 rails。
还有一个好处就是可以实现 ZeroCopy。
访问速度还可以,不知道跑在什么一个配置的服务器上?消耗的内存高不高,ruby 最烦人的就是内存占用比较多。
漂亮多了
以现在爬虫的水平来说,你很难防范。我朋友的爬虫抓亚马逊的图片,系统由二十多台树莓派构成,购买了多个不同的线路,抓取任务会控制访问时段,请求次数。通过不停的尝试来获得网站容忍的爬虫请求次数。
java 更工程化,出错也容易修复。rails 需要大量的测试来解决问题,实现方式更灵活,速度快,适合早期功能验证。
听起来公司的主要是商业模式驱动的,所以技术不是很重要。你要是非常喜欢做技术工作,就找一个技术氛围比较好的公司,自己能力增长也比较快。至于你们公司上市,我感觉跟你毛关系都没有,因为不是靠你实现的,最多上市后公司现金会比较充裕,给员工增加些福利罢了。
你现在的时间成本很低,还是去学习吧。等工作,或者有小孩了,你的时间成本会变的非常高。那个时候,你花一天学车损失的价值更大。
试试 faye,或者 socketio,这个不是 ruby 的。
问题 1.建议用一个借口。 问题 2.建议分成多个接口。 API 设计的粗细力度取决于是否好理解和功能重用。
1.在服务器上安装 ruby,安装 bundle 的 gem。 2.确保本地安装后 rails 的目录下面存在 vendor/cache 目录,然后整个工程上传到服务器。 3.最后在工程目录下执行:
bundle install --local --gemfile Gemfile --path #{your_install_path}/shared/bundle --deployment --quiet --without development test
完成后可以看一下,存在一个.bundle 的隐藏目录,里面的 config 文件指向正确。
上 pry。然后设置断点,执行 show-source current_time_from_proper_timezone
最早我们的搜索基于 zoie 做的,结果这鬼后面疲软了。