1.node 怎么使用多线程
2.node 上传文件有比 multer 更好的方案吗
3.前端点击按钮上传图片之前如何实现图片预览
4.被 python 党喷 js 就是个辣鸡,应该怎么怼
1
whypool 2019-05-29 10:52:47 +08:00 4
cluster
传文件这个中间件挺好用的 预览和 node 有鸡毛关系,直接去看 filereader 菜是原罪,和语言无关 |
3
lisia 2019-05-29 11:01:47 +08:00
1. 使用 worker_threads
3. 前端预览可以直接前端实现, 使用 canvas |
4
libook 2019-05-29 11:19:13 +08:00
1. Node 现在多线程是试验阶段,不过已经离稳定发布不远了,现在最新版 Node 已经不需要加 flag 就可以使用 https://nodejs.org/api/worker_threads.html 如果对稳定性(主要是 API,程序已经很稳定了,不保证正式发布前 API 是否会做调整,不过大概率不会有大变动)要求不严格可以开始用了。或者可以去找一些 Web worker 的其他方案。
如果接受多进程方案的话,Cluster、Chield Process 都很稳定,可以根据自己的需要使用。 2. 没抠过这个,用得比较多的方案是上传 SDN 再从 Node 上下载,这样对弹性分布式+消息总线的系统友好一些。 3. 跟 Node 没关系,个人没怎么做过,不过有思路是用 HTML5 API 读取本地文件然后再用 Canvas 画出来,这样可以支持上传前编辑,最终上传的应该是页面内存里的那个编辑过的图片数据。可以找找有没有相关的前端组件。 4. 软件工程没有银弹,在不同的地方使用最合适的技术栈才是最明智的。 |
5
azh7138m 2019-05-29 11:25:16 +08:00
1. 上次看到一个用 https://www.npmjs.com/package/fibers
是一种 coroutine,被 https://www.npmjs.com/package/sass 使用,Dart 写的,很有趣的用法 4. 电子竞技( |
6
marsgt 2019-05-29 11:31:30 +08:00
2 和 3 可以放到客户端那边去做,亦即前后端分离。
2 的核心原理实际上就是 HTML5 的文件上传,3 可以调 FileReader 接口 new 个 Image 然后直接填充,当然也可以用 Canvas (如果项目里没大规模用 Canvas,我觉得还是前者比较有优势) 4 ……这种人懒得喷,就让他继续辣鸡下去好了。 |
7
marsgt 2019-05-29 11:34:26 +08:00
关于 2 和 3,可以参考 https://segmentfault.com/a/1190000006718963
原文用了个 js 插件来处理图片兼容性的问题,不过上传和预览的大致原理都有涉及。 |
8
TomVista 2019-05-29 11:44:54 +08:00
4.告诉他 php 是世界上最好的语言.
|
9
ochatokori 2019-05-29 11:49:21 +08:00 via Android
4 支持他把他培养成大煞笔
|
10
ben1024 2019-05-29 12:23:51 +08:00
4. 菜是原罪 (PHP 是世界上最好的语言)
|
11
redbuck 2019-05-29 13:04:04 +08:00 via iPhone
|
12
lbw 2019-05-29 13:29:30 +08:00
3. 将上传的图片转换为 base64, 再用 img 标签直接预览
|
13
alw 2019-05-29 13:52:03 +08:00
4. 是是是,你说得对,Python 语法容易阅读,并且能做大数据,人工智能啥的,js 语法就是个垃圾,性能坑的要死,要不是前端必须要用它,我才不想用呢。 我现在呀,就后悔没学 Python,不然现在月薪应该就有 50K 了吧。
|
14
l1nyanm1ng 2019-05-29 14:30:14 +08:00
@alw 厚葬友军
|
15
jasonlwy 2019-05-29 14:43:28 +08:00
3 , express + ejs 的话,上传本地服务时候,把图片存在 session 中,提交表单时候,delete session.img
|
16
BlackHole1 2019-06-04 22:33:21 +08:00
3.直接走 blob 协议就好
4. js 确实辣鸡 |