小编bsp*_*ino的帖子

Laravel Artisan Queues - 高CPU使用率

我在Laravel中为我的处理脚本设置了队列.我正在使用beanstalkd和supervisord.有6种不同的管用于不同类型的加工.

问题在于,对于每个管子,工匠每秒都在不断地产生工人.工作者代码似乎睡了1秒然后工作线程使用7-15%cpu,乘以6管......我想每管多个工人......我的cpu被吃掉了.

我尝试将1秒睡眠改为10秒.这有助于但是当工人们醒来时,每10秒仍有一个巨大的CPU峰值.我现在甚至没有处理任何事情,因为队列完全是空的,只是工人正在寻找要做的事情.

当我在浏览器中刷新页面并且徘徊在10%左右时,我还测试了laravel的cpu使用情况.我现在正处于低端机架空间实例,这样可以解释它但仍然......看起来像每当他们醒来时,工人就会开出一个laravel实例.

有没有办法解决这个问题?我是否只需要将更多的钱投入更昂贵的服务器,以便能够听取工作是否准备就绪?

编辑:

找到一个解决方案...它不是使用工匠队列:监听器或队列:工作我查看了队列代码,似乎没有解决这个问题的方法,它需要laravel加载每次工人检查做更多的工作.

相反,我使用pheanstalk编写了自己的监听器.我仍然使用laravel将事物推入队列,然后我的自定义侦听器正在解析队列数据,然后触发一个artisan命令来运行.

现在我的侦听器的cpu使用率在%0以下,我的cpu现在唯一的时间就是当它实际找到工作然后触发命令时,我很好.

beanstalkd supervisord laravel laravel-4

17
推荐指数
2
解决办法
9489
查看次数

文本溢出 - 防止将字母剪成两半

对于我的情况,我有一个固定的宽度,我可以在其中显示一个名字。如果名称太长,那么我需要剪辑/隐藏名称。

我遇到的问题是最后一个字母被切成两半,而我只想显示最后一个完整的字母。

在下面的“HelloWorld!”示例中,“W”被切成两半。相反,我需要它忽略该部分字母并只显示“你好”。这甚至可能仅使用 CSS 吗?

.test {
  white-space: nowrap;
  width: 44px;
  overflow: hidden;
  text-overflow: clip;
  border: 1px solid #000000;
}
Run Code Online (Sandbox Code Playgroud)
<div class="test">HelloWorld!</div>
Run Code Online (Sandbox Code Playgroud)

css

6
推荐指数
1
解决办法
1563
查看次数

标签 统计

beanstalkd ×1

css ×1

laravel ×1

laravel-4 ×1

supervisord ×1