你好我制作一个管理员面板来控制我的vps,专用服务器,所以我有很多数据fe cpu使用,内存使用,磁盘存储使用,负载等,我用这个进度条如下:
<li class="content"> <span>Cpu usage </span>
<div class="progress progress-mini progress-danger active progress-striped">
<div style="width: 99%;" class="bar"></div>
</div>
<span class="percent">87%</span>
<div class="stat">Cores: 100</div>
</li>
我希望用ajax加载它(我知道该怎么做) 但是
Route::get('/ajax/cpuUsage',function(){
//mysql query here
return response()->json('MyData');
});
但是当我在我的页面上有10个观众时,这条路线将被调用十次,而且每个f.e我有十个请求.5秒是一个很小的安装但是当我有1k观众时可能会被杀死。所以我想缓存数据但是laravel cache min为1分钟,我该怎么办?我的英语是sory,但我认为你不能说我说的话:)
答案 0 :(得分:0)
您可以像这样使用ajax:
subprocess.DEVNULL
您可能应该移动逻辑以将CPU使用率数据提取到控制器:
$(function () {
$.ajax({
url: '/ajax/cpuUsage',
type: "GET",
success: function (data) {
console.log(data);
// do some logic here...
}
});
});
然后让您的routes / web.php路由如下所示:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class UsageController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
// logic here
return response()->json($mydata);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}