因为现在前端是战国时代,angular,react,vue已经各种新式前端框架.
【英雄】吸血鬼(598524699) 9:26:53
有的前端连表单提交 都不知道 是什么情况....
【神兽】游鱼彩虹(258230) 9:27:03
会jquery已经不能叫前端了。。。
【英雄】吸血鬼(598524699) 9:27:12
就知道傻傻的写个form
【英雄】吸血鬼(598524699) 9:28:01
【英雄】什么叫生活(2488057085) 9:28:04
我想知道 那个产品被打成什么样?
【英雄】L新猪(95459910) 9:28:18
我6个月做了2个前端开发项目(一个微信端,一个管理后台)
现在去找工作,都情愿找前端开发。
干了6年的php成为6个月前端的加分项,真是杯具。
【英雄】吸血鬼(598524699) 9:28:18
我家门口开了个这玩意
【神兽】游鱼彩虹(258230) 9:28:47
前端现在比原来复杂多了。。。
【英雄】L新猪(95459910) 9:29:10
vue上手很快
【英雄】什么叫生活(2488057085) 9:29:22
vue也很累
【英雄】吸血鬼(598524699) 9:29:31
VUE能完全取代JQ嘛
【英雄】L新猪(95459910) 9:29:48
我以前就会些html,css和js
看了一下 es6,就用vue上手做项目了。
【英雄】什么叫生活(2488057085) 9:29:50
不能
【英雄】L新猪(95459910) 9:30:15
你要在vue里面用jq也行啊
npm install jquery
【神兽】游鱼彩虹(258230) 9:30:25
不能vue只是个mvvm框架,负责渲染什么的,不带ajax什么的。
【英雄】L新猪(95459910) 9:30:47
vue里面的ajax组件推荐用 axios
npm install --save axios
【英雄】吸血鬼(598524699) 9:31:21
噢噢 一直很好奇。我曾经试图学习VUE 从改造自己的项目开始,把JQ那些事件用VUE写。搜半天 没搜到例子/笑哭、
【英雄】吸血鬼(598524699) 9:31:25
原来是搞错方向了
【骑士】蜗牛也会往上爬(584929707) 9:31:30
干了6年的php比不过干了6个月的前端?
【英雄】L新猪(95459910) 9:31:38
这个可以做 所有请求的拦截,或者header添加token,封装。方便。
强烈建议php开发,都可以研究vue,真的又简单,又强大,又高效。
【英雄】L新猪(95459910) 9:31:56
别断章取义,我说的是 如果找前端的工作。。。。
【神兽】游鱼彩虹(258230) 9:32:07
vue使用之后,最后数据渲染全都由vue接管,php就不负责显示了,只负责提供api.
【英雄】吸血鬼(598524699) 9:32:09
也就是VUE用在渲染数据这块 很方便?
【英雄】L新猪(95459910) 9:32:36
反正,如果是web前端,我觉得vue比 react和angular都要好用。
【英雄】cfeng<
cfengxx@126.com> 9:32:40
任何产品最后落地的都是前端,好的前端产品可以提高几个档次,所以前端很重要啊
【英雄】L新猪(95459910) 9:33:22
还有一点是人员数量,后端开发的太多了,所以不吃香了。
前端现在少,所以价格高。
【英雄】cfeng<
cfengxx@126.com> 9:33:32
是的
【神兽】游鱼彩虹(258230) 9:34:50
现在用户对交互要求更高了,而前端现在又没有统一的框架,新实现不断出现,所以前端吃香。
【英雄】L新猪(95459910) 9:35:39
以后都是 后端只提供api接口,返回json。。。
前端(微信端、移动H5、android、ios……)都无所谓,反正统一调用后端的api接口
【神兽】游鱼彩虹(258230) 9:38:13
差不多吧,所以现在php有点式微了,因为api所有的语言都很容易实现,而且支持异步的语言性能也更出色,php就没这个优势了。
【英雄】每天早晨对着太阳sayhello(317275186) 9:38:34
所以 php再没落
【英雄】L新猪(95459910) 9:38:36
当然这种前端的单页程序,因为是客户端渲染,所以对SEO不友好。
所以传统的PC端web页面,要考虑SEO优化的,还是只有使用 常规的服务端MVC模式。
【英雄】L新猪(95459910) 9:39:11
是的,前端独立出去了,php优势就又少了一些。
【神兽】游鱼彩虹(258230) 9:40:02
就看php能不能早点引入异步或者并行什么的了。否者真的就危险了...
【骑士】蜗牛也会往上爬(584929707) 9:41:36
php不是有yild了吗?
【骑士】蜗牛也会往上爬(584929707) 9:42:20
并发的话php7支持多线程了吧,php5.6也可以用swoole
【神兽】游鱼彩虹(258230) 9:42:38
php-fpm的服务器模型决定了,php不能支持高并发...
【神兽】游鱼彩虹(258230) 9:43:09
你看facebook的hhvm的hack语言,已经都支持async, await之类的语法了。所以facebook放弃对php新版本的兼容了...
【骑士】梦回唐朝(791128314) 10:10:55 比如你登录了 给你积分或者发短信或者发邮件 就可以异步去做 |
【骑士】梦回唐朝(791128314) 10:11:08 等等 |
【骑士】梦回唐朝(791128314) 10:11:15 有时候用处很大 |
【神兽】游鱼彩虹(258230) 10:11:18 不是。异步的具体实现不是线程,线程切换的开销很大,而异步切换开销很小。而且本质上还是单线程的。 |
【骑士】梦回唐朝(791128314) 10:11:26 看业务 看规模 |
【骑士】蜗牛也会往上爬(584929707) 10:11:28 登录送短信或邮件怎么用异步做? |
【骑士】蜗牛也会往上爬(584929707) 10:11:47 你不等它登录先给他发短信? |
【神兽】游鱼彩虹(258230) 10:11:56 具体你们可以看看nodejs,就明白了,有些细节打字很难描述... |
【英雄】L新猪(95459910) 10:12:01 类似今日头条这种,怎么设计数据库呢?特别是 文章表。 每天抓取加发布,数据量增长那么快。 是要按月或者按周分表么?
如果分表了,所有新闻的搜索又怎么做呢? |
【骑士】梦回唐朝(791128314) 10:12:22 你异步只是给发个消息给server端 server端去干这个事 你就可以直接返回 |
【神兽】游鱼彩虹(258230) 10:12:30 就比如发短信,php大概就是Sms->send($phone, $msg); |
【英雄】史文仲远(958186957) 10:12:59 @梦回唐朝 |
【英雄】史文仲远(958186957) 10:13:03 我思路对吗 |
【神兽】游鱼彩虹(258230) 10:13:05 而nodejs则是Sms.send(phone, msg, fuanction(error, data){}) |
【骑士】梦回唐朝(791128314) 10:13:09 如果业务量很少也用不到 |
【骑士】梦回唐朝(791128314) 10:13:23 发短息 不快 |
【骑士】梦回唐朝(791128314) 10:13:38 取决于人家的接口快慢 |
【神兽】游鱼彩虹(258230) 10:13:38 业务量少的时候,看不出任何优势的,顶多就是内存和cpu占用更少点... |
【骑士】蜗牛也会往上爬(584929707) 10:14:17 我一直以为异步是用多线程实现的,所以php搞不起来,因为php没有多线程 |
【神兽】游鱼彩虹(258230) 10:14:23 nodejs因为是异步,就算发短信要用1分钟,他也没问题,反正你可以忽略返回的结果。 |
【骑士】梦回唐朝(791128314) 10:14:46 装扩展有多线程 |
【骑士】梦回唐朝(791128314) 10:15:07 但是还是再排队啊 |
【神兽】游鱼彩虹(258230) 10:16:01 这个排队的过程,就不用担心了,而且是基于谁完成,谁就先得到通知返回,不是先进先出那样的规则。 |
【骑士】蜗牛也会往上爬(584929707) 10:16:49 这个短信来说异步场景不太好,估计还是用js来说好点,比如js我调用api后,api没返回数据,但我js可以先做其他的东西,比如查找dom里的元素类的 |
【骑士】蜗牛也会往上爬(584929707) 10:17:17 说着说着我感觉异步怎么变成了多线程 |
【骑士】蜗牛也会往上爬(584929707) 10:17:38 一个线程去调用api,一个线程去操作dom |
【神兽】游鱼彩虹(258230) 10:17:50 其实数据查询也一样的,比如你同时执行10个查询操作,如果是同步,花的时间就是10个的总和。 |
【骑士】梦回唐朝(791128314) 10:17:59 那不又跑到队列了吗 |
【神兽】游鱼彩虹(258230) 10:18:05 如果是异步,就是最慢的那个查询的时间,你说谁更快... |
【骑士】梦回唐朝(791128314) 10:18:52 说白了就是能很大程度利用CPU |
【神兽】游鱼彩虹(258230) 10:20:40 在这方面nodejs因为v8的引擎限制,只能利用1个cpu,而golang之类的语言做过优化,可以充分利用所有cpu,不过Goroutine比nodejs的异步占用内存多点。 |
【神兽】游鱼彩虹(258230) 10:21:58 Goroutine里把这种可以切换的类似线程的东西叫纤程。 |
【神兽】游鱼彩虹(258230) 10:22:25 如果线程可以开100个的话,那么纤程可以开上万个。 |
【神兽】游鱼彩虹(258230) 10:23:53 甚至golang的fasthttp框架,把纤程做了纤程池,进一步提高了性能。 |
【骑士】梦回唐朝(791128314) 10:39:26 协程 |
【骑士】梦回唐朝(791128314) 10:41:15 golang轻松起上完个协程 |
【骑士】蜗牛也会往上爬(584929707) 10:50:41 单线程可以做异步调用吗? |
【步兵】在哪里?(1458054978) 11:01:18 当然可以 |
【步兵】在哪里?(1458054978) 11:01:26 异步和线程没有关系 |
【神兽】游鱼彩虹(258230) 11:04:14 nodejs就是单线程的... |
【神兽】游鱼彩虹(258230) 11:06:26 所以nodejs如果碰到cpu密集计算型的功能,还是慢... |
【步兵】在哪里?(1458054978) 11:09:12 对的,线程完全可以先不管IO设备,挂起处于等待中的任务。但是对密集计算的就无能为力了 |
【步兵】在哪里?(1458054978) 11:10:05 因此,nodejs写网页是有优势的 |
【神兽】游鱼彩虹(258230) 11:11:44 感觉nodejs写api更有优势,写网站优势不明显... |
【骑士】有色白水(55161861) 11:11:49 node只对前端有优势,其他优势看怎么比了,swoole和node比的话,node就不行了 |
【骑士】有色白水(55161861) 11:12:07 node写api也没有多少优势 |
【神兽】游鱼彩虹(258230) 11:12:16 swoole的问题,主要是缺少生态,很多东西要自己造... |
【骑士】有色白水(55161861) 11:12:28 swoole并不缺少生态 |
【骑士】有色白水(55161861) 11:12:46 swoole的用法极其简单,但是功能强大 |
【骑士】有色白水(55161861) 11:12:59 网上很多开源的组合搭配 |
【神兽】游鱼彩虹(258230) 11:13:18 那你用了稳定不!?看他bug提交修正里那么多内存泄漏的问题,不敢用... |
【骑士】有色白水(55161861) 11:13:32 node最大的缺点,是因为语言太灵活 |
【步兵】在哪里?(1458054978) 11:14:32 挺稳定的啊 |
【神兽】游鱼彩虹(258230) 11:14:48 你用的哪个版本!? |
【步兵】在哪里?(1458054978) 11:16:10 1.8.9 |
【骑士】有色白水(55161861) 11:16:27 npm不能升级,组件不能升级,记得有一个程序员因为仇恨node,导致全球基于node服务的大出错的事件吗?node的npm升级必有惊喜已经是定律了 |
@梦回唐朝
我思路对吗
梦回唐朝(791128314) 10:19:46
不是
史文仲远(958186957) 10:20:10
它不是异步吗
梦回唐朝(791128314) 10:20:14
wait()我觉得就是sleep
史文仲远(958186957) 10:20:33
wait () 就是 sleep
梦回唐朝(791128314) 10:20:46
这个进程 睡眠了 一会 进程没结束
史文仲远(958186957) 10:21:05
那它 与 同步真没区别
也许 只有多个异步的时假 效率才有提高
梦回唐朝(791128314) 10:22:31
没返回 就是非阻塞 效率才会高 阻塞试的基本就是同步了
史文仲远(958186957) 10:22:54
?
梦回唐朝(791128314) 10:23:24
就是说我就是发个命令 给别人执行 立马返回,这个进程没有真正执行任务 让别的去干
史文仲远(958186957) 10:23:28
换句话说 没有
这一句 ,
效率就会高?
梦回唐朝(791128314) 10:24:16
这个我不敢说 应为我没看过这个 代码啥意思 不能乱说
史文仲远(958186957) 10:24:30
哦
梦回唐朝(791128314) 10:32:56
这个wait 就是强制所有请求成功