我是事件/回调样式编程和NodeJS的新手。我正在尝试实现一个小的http服务器,它使用node-mysql模块来提供ddbb数据。

我的问题来自查询结构。由于经常有一些查询需要运行先前查询的结果,因此我无法同时(异步)运行所有查询,因此不得不等待一些结果。

我的第一种方法是同时运行所有非依赖性查询,然后循环运行,直到所有非依赖性查询都设置了一个标志,说我已经完成,这样我就可以继续处理非依赖性(同步)查询,但是我不这样做知道这是否是正确的方法。

像这样:

function x(){

var result_for_asynch_query_1 = null

var result_for_asynch_query_2 = null

mainLoop(){

// call non-dependant query 1

// call non-dependant query 2

// loop until vars are != null

// continue with queries that require data from the first ones

}

}

//for each browser request

httpServer{

call_to_x();

}.listen();

这样,我可以节省一些时间来获得最终结果,因为我不需要以串行方式等待所有响应,而只是等待最长的响应。

有一种通用的方法吗?我不遵循的任何设计模式?

node mysql 多个_使用Node.js处理多个MySQL查询相关推荐

  1. node开启子线程_真Node多线程

    本文测试使用环境: 系统:macOS Mojave 10.14.2 CPU:4 核 2.3 GHz Node: 10.15.1 从 Node 线程说起 一般人理解 Node 是单线程的,所以 Node ...

  2. mysql kingshard 扩容_如何用Go打造一个高性能mysql proxy

    kingshard架构设计和功能实现 kingshard(https://github.com/flike/kingshard)开源有一段时间了,有些热心的用户发邮件来咨询kingshard的设计和实 ...

  3. mysql序列号生成_值得一看!数据库及Mysql入门,附详细安装教程

    #什么是数据 用来描述事物的符号记录.可以是数字.文字.图形等,有多种形式,经过数字化之后存入计算机 #什么是数据库 数据库(Database)就是一个用来存放数据库的仓库,是按照一定的数据结构来组织 ...

  4. mysql心得笔记_【原创】学习{我的mysql学习心得}的笔记

    标签: 万丈高楼平地起. 从最基础的做起,从最简单的做起. ---------------------------------------------------------------------- ...

  5. mysql 存储过程无效_用VC通过DLL包连接MySQL,执行存储过程后,再执行其他查询无效?解决方法...

    用VC通过DLL包连接mysql,执行存储过程后,再执行其他查询无效? MYSQL mysql; mysql_init(&mysql); mysql_real_connect(&mys ...

  6. mysql zrm 配置_利用MySQL-zrm来备份和恢复MySQL数据库方法详解

    MySQL ZRM 工具是用PERL写的可以全部和增量备份MySQL数据库的一个强大工具. 还可以做快照,不过我现在没有条件做.等以后有可以做了再补上. 其实具体要说的也没啥,我只是做了点测试. 这里 ...

  7. mysql+数据库连接标识_新人必看!连接到MySQL数据库的两种方法

    原标题:新人必看!连接到MySQL数据库的两种方法 使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库. 实例 以下是从命令行中连接mysq ...

  8. 删除电脑中的mysql数据库吗_【数据库】怎么彻底删除mysql服务?

    彻底删除mysql服务的步骤: 1.关闭mysql服务 在cmd命令行输入以下命令 net stop mysql 或者 我的电脑右键->管理->服务,进入后手动关闭. 2.删除MySQL服 ...

  9. JAVA跟MYSQL数据库交互_【编写Java程序实现与Mysql数据库的连接,并交互性的实现简单查询,删除,修改,排序,显示等操作】...

    目前博主只实现了查询和插入,而且还不太会在面板对数据库语句进行更新,写完再看感觉语言有些冗杂,往后再更,大半夜写这个也是醉了呢. import javax.swing.*; import java.a ...

  10. mysql客户库_你应该知道的10个MySQL客户启动选项

    大部分服务器管理员知道MySQL数据库管理系统(RDBMS)是高度灵活的软件块,带有范围广阔的启动选项,可以用来修改相关行为.然而,大部分人却不清楚,标准MySQL客户端带有同等大量的启动选项,其中一 ...

最新文章

  1. 关于笔记本电脑玩一些游戏不能全屏的注册表修改法
  2. 【C 语言】文件操作 ( 配置文件读写 | 框架搭建 | 头文件定义 | 头文件导入限制 | 兼容 C++ 语言 | 函数形参输入输出属性注释)
  3. Android 图形驱动初始化
  4. Linux内核逻辑结构
  5. 工作145:vue里面取消console和debugger
  6. CCNET自动构建之路
  7. Visual Studio-运行库的设置
  8. 最新短视频去水印小程序源码/带流量主/外卖CPS系统/批量解析/修改MD5
  9. 【20211208】【Python】UCI数据集的简单介绍和使用Python保存UCI数据集为.mat文件
  10. 简简单单汇率换算HTML代码
  11. 霍普金斯计算机专业研究生如何,约翰霍普金斯大学计算机科学研究生项目详情!_托普仕留学...
  12. 大数据常用非关系型数据库汇总(NoSQL)
  13. 界面色彩渐变效果的实现
  14. 《HikariCP数据库连接池实战》学习笔记(二):获取连接原理
  15. html5待办事项模板,待办事项列表模板
  16. ChatGPT官方API可以抢先体验了
  17. 从零入门云计算(1):云计算究竟是个啥?
  18. 【python量化】python通过新浪财经获取金融衍生品历史数据
  19. 计算机网络 直连网,计算机网络基础及局域网构建 静态路由和直连路由 静态路由和直连路由.doc...
  20. MySQL5.7自带分词搜索使用

热门文章

  1. C++编程模拟生产者消费者模型
  2. Flask实战1-轻博客
  3. 基于机器学习的捡球机器人设计与实现(探索)第6篇——另一种高效追踪网球思路
  4. java break在switch_java中switch case语句需要加入break的原因解析
  5. uart接口_UART串行总线舵机转接板规格、接线说明 amp; 驱动安装
  6. java r$_基于javacv的人脸检测Demo
  7. Hack Knowledges
  8. 树莓派GPIO的两种模式区别
  9. 40种Lightbox效果收集
  10. Java--基础总结