【问题标题】:How to save websockets data to DB如何将 websockets 数据保存到数据库
【发布时间】:2021-02-18 14:38:09
【问题描述】:

我想阅读这个流:wss://stream.binance.com:9443/ws/btcusdt@trade 并将数据保存到数据库以便我以后可以使用它。

我不知道如何或在哪里调用该函数,因为它是连续的数据流,我不知道如何处理它。

我正在使用这个 php 库:

https://github.com/jaggedsoft/php-binance-api

更具体的代码:

$api->trades(["BNBBTC"], function($api, $symbol, $trades) {
    echo "{$symbol} trades update".PHP_EOL;
    print_r($trades);
});

我知道如何将数据保存到db,但我不知道如何调用函数。

public function x(){
$api = new API("api", "secret";
$api->trades(["BTCUSDT"], function($api, $symbol, $trades) {
            $data = new BinanceData();
            $data->symbol = $symbol;
            $data->price = $trades['price'];
            $data->binance_timestamps = $trades['timestamp'];
            $data->maker = $trades['maker'];
            $data->quantity = $trades['quantity'];
            $data->save();
        });
}

我访问/x路由的时候直接调用这个函数:

Route::get('/x', [BinanceController::class, 'x']);

问题是如何在 Laravel 的后台调用这个函数,这样我就不必访问任何路由或任何东西。

谢谢

【问题讨论】:

    标签: laravel websocket stream binance


    【解决方案1】:

    创建一个 laravel artisan 命令,在内核中注册。然后使用 linux 上的 supervisor 或任何进程管理器来不断调用它来创建一个守护进程

    https://laravel.com/docs/8.x/artisan

    【讨论】:

    • 您应该共享解决方案(示例、代码)而不是 URL,您还应该共享 URL,但要根据参考。
    • 好的。让我更新答案。这是我在这里的第一个答案。谢谢
    猜你喜欢
    • 2020-12-12
    • 2019-11-22
    • 2011-10-26
    • 2013-05-08
    • 1970-01-01
    • 2012-04-05
    • 2019-12-06
    • 2013-04-24
    • 1970-01-01
    相关资源
    最近更新 更多