Ask me anything in 《狼叔爱Node》
2017-02-24
问题1
在一家创业公司实习,承担了比普通公司更多的职责和工作,但是我认为这种情况不应该持续下去。创业公司要向正规化的公司发展,必须要形成一个工程体系。产品不应该以需要跑业务为由而只留下一个只有概念的需求。现在技术团队已经完善了自己的技术体系。但是产品给出的需求依然只是一个概念性的东西。并且依然不做出改变。我学的是软件工程,我理解的工程是以团队为主题,每个人有自己的职责,工作流程十分清晰,输入输出十分明确,团队目标十分清楚,这样才能高效的运转,创业公司人少没办法,但是不应该在原地踏步,应该积极的向工程化团队的目标发展。在大公司工作的你们产品,设计,开发之间的关系是怎么样的?👀👀
问题2
nodejs如果只做后端开发的话,该如何在这条路上走的更远更好? 我本人不太喜欢搞前端开发,只想在后端发展。
问题3
狼叔,您好。后端我只用过express + mongoose,想深入了解node.js后端,有什么源码demo可以推荐吗?😊
问题4
狼叔你好,我之前跟着你的教程学的nodejs,受益匪浅。现在基本的语法都会了,也自己做了些留言板、博客之类的小网站。但是现在遇到了瓶颈,遇到大项目就不知从何下手。希望狼叔指点迷津~谢谢狼叔
2017-02-27
问题1
狼叔您好。我是一名雷达工程师,想做一个类似flightradar24的网站。现在雷达数据输出接口有网口和串口。请问这样的网站前后端怎么设计,数据怎么接入和存储?谢谢啦
再稍微详细点,前端要啥,后端能给啥,大致的流程是啥,晚点统一回复
前端实现飞机位置在地图上的实时显示,后端能提供雷达数据接口(网口或串口),接口实时输出飞机的位置高度速度等信息。总体上想做成flightradar24这个网站的样子。但是由于我之前是学硬件的,只学了一点网站的基础javascript ,html,node。还请狼叔多多指教
问题2
我是做php开发,在工作过程中,一直都是做业务逻辑开发。对于加载速度、并发,不是很了解。想请教一下node中是否也需要了解并发问题?会因为node是单线程 异步模式,就不需要了吗?
问题3
狼叔,我想问下,业务订单超时未付款自动关闭,一般是如何实现的?
如果想提问,请加入《狼叔爱Node》群,有问必答
互相尊重,坦诚,不说没用的
狼叔很实在
对最后一个问题比较感兴趣
@zsea 那就先放出来
问题3
答
1)从存储层处理
从mongodb 2.2开始,MongoDB又引入TTL(time to live)概念,通过给collection增加ttl索引来实现,参见https://docs.mongodb.com/manual/tutorial/expire-data/
如果你看过mongodb node版本的session肯定会知道ttl的,session也是要超时的,哈哈
另一个非常常用的缓存redis里,也有ttl和expire概念,详见https://redis.io/commands/ttl。比如ioredis里
总结:一般在NoSQL层处理超时,是最简单的办法
2)通过MQ消息队列处理
将系统进行拆分,缓存层按照上面的办法处理超时,同时以MQ的形式,向后台发送一条更新订单状态的通知。
当然,还有很多其他办法,大家可以多开动脑筋想想。
@DevinXian 哈哈
不会前端的Node.js 开发路过
2017-02-24中的Q1和Q2,回答的还是非常中肯的,聪明人问的应该是思路而不是具体的细节问题
2017-03-02
回复内容
问题1
问题2
问题3
更新,有人说webstorm没有问题,可能是某些版本吧
https://www.zhihu.com/question/42195778/answer/102689583 https://www.zhihu.com/question/34562777
围观,支持
已经95人了,最后5个99名额,之后就回复199了,哈哈
2017-03-06
详细回复
问题1
问题2
问题3
问题4
不仅要和狼叔学代码,还要学营销…… 突然想到,要是有个人天天给狼叔提交一点bug,怎么解决,狼叔会不会烦死。
作为cnode一直以来的潜水党,加入圈子表示支持一下。
2017-03-09
统一回复
问题1
上面写的测试用例,不知道意义何在。我觉得是,真正需要测试的大都是业务逻辑,比如游戏核心玩法算法这些,写个测试用例有很大的意义,可以验证算法是否正确。
问题2
问题3
问题4
问题5
问题6
/**
2017-03-16
统一回复
问题0
我基础知识不行,之前有js基础,然后看了一下node就开始写项目,边做项目边查资料,只是能把功能实现,理论知识欠缺,如果想补一下该看什么呢@i5ting 。求狼叔点拨一二
问题1
狼叔,您好!我想请问应届生找node.js实习工作难吗?没有经验简历应该怎么写?希望您能提供点思路给新人,谢谢!
问题2
这几天去面试了一些nodejs职位,被问得最多同时也是最基本的问题就是:你平时写node有没有什么经验心得。。狼叔请原谅我这个刚毕业没多久的node菜鸟,对于这一块确实没有累积到什么经验,所以想问一下,狼叔你们在开发nodejs项目的时候,最常遇到什么问题,如何去解决的,谢谢~
问题3
请教大家,在使用formidable模块的时候,我发现如果在当前上传表单中并没有上传文件,那么在执行到form.parse()的时候会默认保存一个大小为0字节的空文件,请教该怎么避免这个问题?
问题4
狼叔,今天遇到一个问题,关于NodeJS能开辟多少个子进程的问题。具体场景:利用子进程来处理socket.io请求,想提高cpu的利用率,不知道开多少个子进程比较合适,目前是按照os.cpus().length来开辟的,但是不知是否能够重复利用cpu。最好的方法是重现真是的生产环境,然后根据cpu的使用情况来确定开辟的子进程数,但是这不现实。请狼叔指点一下,谢谢。
问题5
前段时间在V2看到TB的吐(招)槽(聘)贴,后来狼叔也在CNode整理了一番,但后期看到TB的严大回复“我们希望能招募到更多的应届生或工作一两年的后端新人”,当然,另一层意思是,3年左右的“老油条”第一成本不划算,第二我们的业务新人就搞得定,所以就不需要了;这让我有些困惑,最近由于公司这边的动荡才让我有了观望的想法,公司拖欠半月左右工资,从16年下半年开始已经有3次了,个人属于那种比较老实的那种,踏实干活、关注技术走向,不太感冒管理层的勾心斗角,但是感觉基本工资都不能保障,没有安全感;总结下:本人14年毕业就在这家公司,先后负责及时聊天、推送、微信服务号开发,到现在为止由于某些原因,想听下狼叔,关于“深度要扎实,适当的加点管理,尝试帮你的领导多分担活”这部分的详解。相信对于后端Nodejs走了3年左右的人来说是一个共性问题了。 Ps:本人专业是计科(嵌入式方向),但由于刚毕业发现走硬件道路没有软件机会多,所以就投身到软件开发的队伍中了,Linux系统玩的很溜,甚至做过linux系统的裁剪和移植,所以才选择走后端而非前端,16年一段时间曾经做过一些简单前端开发,也做过php重构,但还是喜欢Nodejs,个人理念是不同需求、场景需要不同技术、语言,各个语言都有其擅长的地方和不灵的地方,不排斥java和php,能够灵活切换思维如果有需要的话;
问题6
问题7
狼叔,为什么写测试用例的时候要一条一条的写,而不是 按照功能模块一块撸了。
2017-03-21
回复内容
问题6
狼叔 我有个可能不太成熟的心理 觉得现在前端圈有个很怪异的现象,大家都用github分享些自己的项目 当去看了对方的项目后,发现其实功能很简单,但是项目里却用了很多的库 每个库依赖的库又有好几个,想想也是浪费。
有时候在cnodejs上看些内容真的很不自在,看到一个项目想去研究下,想看看别人的思路,结果核心部分一堆库的调用,很希望看到的是大家都有自己的想法,而不是每次都是推荐库,感觉大家都要被各种库剥夺自己了
答
学些都是先散的点,然后放到一起。比如练字,刚开始都是单个字,后面才是谋篇布局、章法类的。所以上来就写,肯定是特别难得。
对于开源项目也是一样的,所以理解了上面的原理,其实你就可以非常简单的逆推了。先把package.json的里的每个模块都玩明白了。然后再玩拼起来的,就会比较容易一些。避免上来大而全,对新手不利。
最小化是学习最好的方法。能够从复杂的项目里扒出有用的东西,更是本事。加油
问题1
请教一下 狼叔 node作为后台为app提供接口的过程中,出现内存泄漏的问题,如何处理?我理解的是如果是客户端会有浏览器进行处理了,那服务器端如何处理?
问题2
async/await和promise的问题
1,现在是promiseA+规范,但我不清楚node.js原生promise是怎么实现的?是通过emit还是setTimeout,还是process.nextTick实现的? 2,async/await的本质是generator吗?是generator的语法糖吗?如何理解async/await和promise的关系? 3,第三方bluebird或Q包,他们实现promise的方式和原生promise是一样的吗? 还望狼叔解疑一下,最近这块有点疑问。。。
问题3
请教狼叔怎么用vscode进行node调试,有两个问题:
问题4
狼叔,请问这种方式exports是什么意思,特别是这部分 (function (Base62) {}({}));
问题5
狼叔,更了不起的Node4这本快点大概什么时候能出呀,好想买一波。。。。
答
月底会公测,大家参与吧
您之前是不是发不过招聘社区管理员的帖子
@nunuji123 是Node全栈公众号的运营
具体是做什么的呢 如果我可以的话 希望为社区做点贡献
@nunuji123 微信号给我,我加你
15638123882
Good!