【发布时间】:2019-01-13 08:35:17
【问题描述】:
我有一个应用程序每秒发送请求以查看,我从 API 获取数据并从客户端返回响应
- Ajax(发送请求)->
- 查看(发送请求)->
- Api(视图返回响应)->
- 查看(客户端返回响应)
我看到这会占用大量 CPU。
为什么会占用大量 CPU?
如何优化它? - 我必须按我下载货币的点,我需要每秒下载数据
我应该使用 WebSocket 吗?
Ajax 代码:
var ajaxFn = function () {
$.ajax({
url: '{% url "coinbase_currency_ajax" %}',
success: function (response) {
if(response) {
for(var elem in response) {
$("#"+elem).text(response[elem]+"$");
}
setTimeout(ajaxFn, 1000);
}
}
});
};
ajaxFn();
查看代码:
def currency_price_list(request):
client=CoinbaseService().client
btc = client.get_buy_price(currency_pair='BTC-USD') #API COINBASE
ltc = client.get_buy_price(currency_pair='LTC-USD')
eth = client.get_buy_price(currency_pair='ETH-USD')
bch = client.get_buy_price(currency_pair='BCH-USD')
return JsonResponse({
"btc": btc['amount'],
"ltc": ltc['amount'],
"eth": eth['amount'],
"bch": bch['amount']
}, safe=False)
【问题讨论】:
-
给我们看一些代码
标签: javascript ajax django web websocket