wokerman的worker在什么时候连接数据库

wokerman的worker在什么时候连接数据库,第1张

使用单例,用的时候创建连接即可。

不用在onStart时创建。

在workerman中使用单例模式(在类静态成员中保存对象/数据),在当前进程生命周期内所有请求中都是共享可用的。比如数据库单例,当使用数据库时发现数据库对象还没创建,就立即创建一个,然后保存在数据库类的静态成员中,下次再次使用数据库对象时,直接使用数据库静态成员那个数据库对象即可,这样当前进程内的所有请求就都可以复用这个数据库对象,也就是真正意义上的长连接,没有频繁的数据库连接、权限验证、断开连接等开销,非常高效。

workerman中自带mysql类,也是使用的单例模式,只有在第一次 调用Db::instance(‘db_name’)->query(sql)时才创建一个数据库连接对象,才会去连接数据库。后面再调用Db::instance(‘db_name’)就直接复用了第一次创建的数据库对象,不会在创建。

安装

npm install [email protected]

示例

var mysql = require('mysql')

var connection = mysql.createConnection({

host : 'localhost',

user : 'me',

password : 'secret',

})

connection.connect()

connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {

if (err) throw err

console.log('The solution is: ', rows[0].solution)

})

connection.end()


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10072111.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存