apache - Server lagging - Django + mongodb + cronjob -
i'm deploying django application, i'm using apache deployement module wgsi , mongodb database.
i got multiple cronjob called every 10min collect data many api (using django-kronos).
when server launch every thing great after few hours server start lagging , down. 100% of cpu used. here:
this 1 of crontask:
@kronos.register('*/10+2 * * * *') def update_mongo(): # init instagram api api = instagramapi(client_id = 'social_auth_instagram_key', client_secret = 'social_auth_instagram_secret') # 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 # 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') result in results: # if post doesn't exist, create new 1 try: post = post.objects.get(insta_id = result.id) except: post = instapost() # init post , save in database post.save(result)
the problem if don't know problem, apache + django ? or line post = post.objects.get(insta_id = result.id)
?
edit
i removed cronjob , same problem, after while physical memory , cpu explosed , server start lagging hard.
the server staging 1 bad 1 : 1 core, 992 mb ram
your charts show memory, disk , cpu activity around time application slows down. because of memory consumption inside application. when application hits memory limit start swapping disk. post chart of swapfile usage?
Comments
Post a Comment