服务器滞后 – Django mongodb cronjob
发布时间:2020-12-20 13:06:09 所属栏目:Python 来源:网络整理
导读:我正在部署一个Django应用程序,我正在使用apache进行部署,模块为WGSI,mongodb为数据库. 我每隔10分钟就会收到多个cronjob来收集许多API的数据(使用django-kronos). 当服务器启动时,每件事情都很棒,但几个小时后服务器开始滞后,现在他已经失败了.使用了100%
我正在部署一个Django应用程序,我正在使用apache进行部署,模块为WGSI,mongodb为数据库.
我每隔10分钟就会收到多个cronjob来收集许多API的数据(使用django-kronos). 当服务器启动时,每件事情都很棒,但几个小时后服务器开始滞后,现在他已经失败了.使用了100%的cpu. 这是我的一个crontask: @kronos.register('*/10+2 * * * *') def update_mongo(): # init the instagram api api = InstagramAPI(client_id = 'SOCIAL_AUTH_INSTAGRAM_KEY',client_secret = 'SOCIAL_AUTH_INSTAGRAM_SECRET') # Get Last post added in database try: last_id = Post.objects(keywords = 'news').order_by('-created_at').limit(1)[0].insta_id except: last_id = 0 # Get the last Media tagged news if last_id != 0: results = api.tag_recent_media(tag_name = 'news',min_tag_id = last_id) else: results = api.tag_recent_media(tag_name = 'news') for result in results: # if post doesn't exist,we create a new one try: post = Post.objects.get(insta_id = result.id) except: post = InstaPost() # Init the post and save it in database post.save(result) 问题现在,如果我不知道究竟是哪里的问题,是apache django?或者这行post = Post.objects.get(insta_id = result.id)? 编辑 我删除了cronjob并得到了同样的问题,经过一段时间物理内存和CPU刚刚开始,服务器开始非常困难. 服务器是一个非常糟糕的升级服务器:1核,992 MB RAM 解决方法
您的图表显示了应用程序减速时的内存,磁盘和CPU活动.这可能是因为应用程序内部消耗了内存.当应用程序达到其内存限制时,它将开始交换到磁盘.你还可以发布交换文件使用情况的图表吗?
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |