尝试在AWS lambda上为Python中的Pusher服务部署包.
当我运行像这样的简单代码
from pusher import Pusher
def pusherTest(context, event):
mypusher = Pusher(app_id=u'***', key=u'***', secret=u'***')
mypusher.trigger('testchannel', 'testevent', {u'some': u'data'})
Run Code Online (Sandbox Code Playgroud)
我得到了这个堆栈跟踪.
libssl.so.1.0.0: cannot open shared object file: No such file or directory: ImportError
Traceback (most recent call last):
File "/var/task/Lambda.py", line 3, in pusherTest
mypusher = Pusher(app_id=u'***', key=u'***', secret='***')
File "/var/task/pusher/pusher.py", line 42, in __init__
from pusher.requests import RequestsBackend
File "/var/task/pusher/requests.py", line 12, in <module>
import urllib3.contrib.pyopenssl
File "/var/task/urllib3/contrib/pyopenssl.py", line 54, in <module>
import OpenSSL.SSL
File "/var/task/OpenSSL/__init__.py", line 8, in <module> …Run Code Online (Sandbox Code Playgroud) 模特歌曲和作家
而且我想查询歌曲,这样我只会收到所有作家都有某个字段的歌曲,我的解决方案是什么?
Laravel whereHas功能将获得所有至少有一个具有该字段的作者的歌曲,就像这样.
Song::whereHas('writers', function($query){
$query->where('writerField', '=', true);
});
Run Code Online (Sandbox Code Playgroud)
但是,确保所有与一首歌有关的作家都将'writerField'设置为true 是纯粹的雄辩方式?
使用Laravel和Supervisord保持php artisan队列:监听运行。由于某种原因,它已经运行了很长时间,现在突然出现此错误,然后作业重新启动
[2016-02-19 14:49:23] production.ERROR: exception 'Illuminate\Database\QueryException' with message 'SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction (SQL: update占set的updated_at = 2016-02-19 14:49:23,ReceivableBalance = 11968.1419330000,RecoupableIncomeTotal = 0,RecoupableExpenseTotal = 0 whereID= 74)' in /home/ec2-user/MPWLaravel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:555
...
我读了几句话说我要去死机了,因为正在运行过多的队列工作者,但我只能拥有一个。
当我跑步时,ps aux | grep artisan我得到...
c2-user 12838 0.2 0.6 348288 26200 ? S 19:42 0:01 php artisan queue:listen --timeout=600
ec2-user 12920 76.3 2.0 484132 78212 ? R 19:49 3:47 php …