• http 长连,ror 并发应该上不来。可以考虑一单独启动一个新版 rails 服务做长连。旧服务只负责写。这要把 actioncable 写相关的代码引进来、然后两个服务连一个 redis 就行。

  • 我一开始看公开课,其实是为学英语,学着学着就跑偏了…最后英语没学好(也就计算机方面的还凑合),却成了程序员。

  • 最近事情太多 😂 ,有时间的时候会考虑搞。

  • 大佬说的对

  • 推荐几门公开课:

    入门 CS50,基础 CS61A,算法 CS61B,这些在网上都可以找到,除了视频,还有课后作业(project)。

    工程方面,推荐 CS169,前几年一直是用 RoR 讲的。

    网络、操作系统这些,只在大学里学过,没上过公开课。都是根据具体问题学的。不过不只看一本书,而且也不仅仅是看书。

    美国的课程,有几部分,上课讲、讲义、课后项目、助教辅助。教材一般会推荐几本,讲到具体的内容,会推荐相应的章节去看。老师的态度也是,你爱看不看,把问题搞清楚了就好。这样的话,就会发现,一门课程下来,一本书都没完全读完,但又多了好多书。有些书,其实是参考资料,当 wiki 用就好。

    还真想不出来要推荐什么书,不过 算法导论 不推荐,很多人能背出算法的 i,j,k,但却说不出算法思路。算法推荐 算法引论

    推荐 CS61A 的课堂笔记。

    再就推荐 设计数据密集型应用。很成体系,适合自学。

    好的书和课程,不是面面俱到,而是要画好一个骨架,然后可以根据这个骨架,去添加血肉。

  • 有直播吗?

  • 函数式这么玩,是因为他们没对象… 这个东西,写到时候挺爽的,维护起来略麻烦

  • signature 喊的最凶的是 clojure、elrang 这种。也有一些实现,但实际项目中用的又没多少。 clojure 这种没有对象的概念,操作的都是字段。 ruby 这种面向对象语言,操作的不是某个字段,而是类。

  • 我觉得前端挺不容易的。不单单技术方面,还要很耐心,还要跟后端扯皮。

    分工。后门后端大佬一般不写代码,但绝对是团队核心。

  • 一个全局锁,就不行了吧。。

  • 大神可以去分享啊

  • 发的时候存了 redis 里,加过期时间,每次发的时候都有判断有没有这个 key,有就不发,没有就发,并刷新 key。 或者利用 rate limit 也能做。

  • 为啥我觉得一楼比正文好呢 😏

  • 一般 IM 都会用 Erlang 或者 Rust,钉钉完全是用 Java 吗(我就是好奇问问,楼主可以忽略我?

  • Rei 说的是锁 Shell

    Shell.find(params[:id]).lock(:true)

    其他线程还想读的这个 id 的 shell 的话,就要等锁。

    如果你不想锁 Shell 的话,还可以先把 shell 的 book 都创建出来(不给 id),在加 book 的时候,就可以上锁了。

    Redis 的分布式锁,也可以,效果应该是一样的(哦,不是,如果操作时间特别长,redis 好,因为上了 exclusive lock,所有读操作都锁了,redis 分布式锁,只锁了加入 shell 这个操作)

  • 为什么不成功或者失败的时候,jenkins 发个请求?

  • websocket-client-simple,连一两个还好,多了,性能怎么样,就不知道了。

    AC 改的话,先要能主动连 ws,收消息要 hack、发消息也要 hack(AC 是对 channel 发消息,然后做广播,client 不需要),还要再配合 AC 的抽象,还不如自己写。

  • WebSocket 方案选择 at 2019年05月13日

    用 Erlang/Elixir 啊,要不然用 Rust 啊。 我瞎说的,其实 AcitionCable 够用了,实在不行 AnyCable。

  • spring boot 对 sqlite 支持不好,要 copy past 一堆代码,很麻烦。RoR 直接引入。

    schema 和 migration 可以没有(我不知道有没有,有你可以说),RoR 默认有。

    console 似乎是有,这个我不确定,但用起来似乎是很麻烦。当然,如果你有更好的办法,我也愿意学习。

    我只是委婉的告诉你,这几点,我认为 spring boot 做的不怎么样。当然,如果你觉得做的好,也请说出你的理由。因为看你之前的回复,你对 Spring Boot 和 RoR 都很了解(因为你说他们一样,所以我认为,你很了解两者),希望可以向你学习。

    难道 Java 流行只是因为功能太少?

    这种句式一点意义都没有,几十年前还流行打鸡血呢,现在还流行注射中草药呢。

    你说 SB 和 RoR 一样,就举出例子来。你知道 java 为什么流行,就说出来。

    流行本身就没有什么意义,然后抛出了一个疑问句,没有任何依据,就更没意义。

  • 我想知道 sping boot 怎么用 sqlite,schema 在哪,migration 怎么用,console 怎么用。。

  • 牛逼!

    有的时候,人们在谈性能的时候,都忘了说是 IO 密集型,还是 CPU 密集型。

  • 当初定技术栈的时候,为啥选 C?性能原因?

  • Ruby 3 将有类型系统了 at 2019年04月20日

    Ruby 不像 Clojure 对这个东西那么急切(我不是说 Ruby 不需要)。

    Clojure 很需要这个东西,是因为,Clojure 把 map 当对象用,把 map 的字段当方法用,Ruby 有对象,对象有啥方法、字段都是相对明确的。

  • TF 是啥?

  • Will Ruby kill off Python? at 2019年04月12日

    具体说说?