Popush End
coconut: (咳咳)作为一名后台开发者,我觉得自己在这次作业完成中最大的收获就是跟node.js的异步模型打交道。首先我得出了一个这样的结论:异步模型能够提高服务器的高性能并发请求,但是却加大了程序猿的编程难度,同步模型给我们的编程带来了方便,却牺牲了服务器的性能。当有的小组提到,他们要将后台的socket的改成同步请求时,我想很多同学也感受到异步给前端带来的麻烦——我需要全局变量来记住我上一步的操作,但是如果我们真的把后台的socket改成了同步触发,node.js的优势还存在么?我在实现我的功能的时候不得不考虑异步所带来的麻烦,如果你要读取数据库的一个文件夹的内容,数据库访问是异步的,你需要通过回调函数来达到同步的效果;你要在tmp中创建project的文件夹,那么你就要同步的将每一个文件写进去。就算你是上传一个文件夹,你也要考虑到异步的问题,因为在实验中我发现,如果我连续向服务器emit一个创建文件或者文件夹的指令,服务器无法正确处理我的请求,我只能把整个文件夹准备好之后才全部发送到后台,在进行处理写入数据库。
Popush End的更多相关文章
- 撰写POPUSH需求文档
不当家不知柴米贵,撰写了正规的软件需求文档才知道软件工程的复杂性 感谢@洪宇@王需@江林楠下午的加班加点,五个人正闷在406B奋斗中,加油!
- Theory And Practice
实践出真知,建议不要一味地看Backbone源码和网上解析,自己动手实践吧少年们! 我是一个简单的简直无可救药的小栗子~ ——Silun Wang 我的几个小问题: 1. Rocket介绍没有Todo ...
随机推荐
- iOS-单选cell的实现
一.思路 先设置一个chooseCelltag标记(类型为NSIndexPath),然后在点击cell触发的时候,如果tag设置有值,就设置 UITableViewCell *selectedCell ...
- [方法提炼] 获取Android设备序列号方法
通过这个方法可以检测设备是否连接成功,如果有一台或者多台设备,可以将所有设备序列号全部输出 # -*- coding:utf-8 -*- import os def attachDeviceList( ...
- Address already in use: JVM_Bind问题的解决
tomcat一般出现Address already in use: JVM_Bind的问题,可能是端口冲突,也就是端口被占用了. 这个可能是其他应用程序使用了同一个端口(默认是8080),也可能是你启 ...
- 指令计数器--Program counter
别名:指令指针.指令地址寄存器.程序计数器: 操作:顺序操作(计数器加一).分支操作(计数器修改): The program counter (PC), commonly called the ins ...
- sysctl命令
sysctl命令作用: 被用于在内核运行时动态地修改内核的运行参数,可用的内核参数在目录/proc/sys中,它包含一些TCP/ip堆栈和虚拟内存系统的高级选项,用sysctl可以读取设置超过五百个系 ...
- centos7下安装docker(3.2创建镜像build)
通过Dockerfile创建镜像 注:这个Dockerfile一开始真的不知道是在哪来的,还以为是在官网下载下来得(当然网上也有很多dockerfile的模板,参考:https://hub.docke ...
- mysql索引优化-order/group
为排序使用索引 KEY a_b_c (a,b,c) order by 能使用索引最左前缀 -order by a -order by a,b -order by a,b,c -order by a d ...
- C# 委托知识总结
原文地址:http://www.cnblogs.com/qingyuan/archive/2010/05/11/1732415.html 1.什么是委托,为什么要使用委托 我正在埋头苦写程序,突然想喝 ...
- 马哥Python视频
链接:https://pan.baidu.com/s/1KMXqdXlaIjZ3OaZ-PUwE9A 密码私聊我
- Objective-C 禁用NSMenu中的系统services菜单项
当用NSMenu创建一个右键菜单时,mac系统会默认插入一些服务(services)菜单项,如下图,xlsx文件的右键菜单中,除了自定义的菜单项:“转发”和“收藏”等等,还有“在 Finder中显示简 ...