{"action":"closed","issue":{"url":"https://api.github.com/repos/django-tastypie/django-tastypie/issues/371","labels_url":"https://api.github.com/repos/django-tastypie/django-tastypie/issues/371/labels{/name}","comments_url":"https://api.github.com/repos/django-tastypie/django-tastypie/issues/371/comments","events_url":"https://api.github.com/repos/django-tastypie/django-tastypie/issues/371/events","html_url":"https://github.com/django-tastypie/django-tastypie/issues/371","id":3200914,"number":371,"title":"Improving unacceptable performance?","user":{"login":"nisc","id":141336,"avatar_url":"https://avatars.githubusercontent.com/u/141336?v=3","gravatar_id":"","url":"https://api.github.com/users/nisc","html_url":"https://github.com/nisc","followers_url":"https://api.github.com/users/nisc/followers","following_url":"https://api.github.com/users/nisc/following{/other_user}","gists_url":"https://api.github.com/users/nisc/gists{/gist_id}","starred_url":"https://api.github.com/users/nisc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nisc/subscriptions","organizations_url":"https://api.github.com/users/nisc/orgs","repos_url":"https://api.github.com/users/nisc/repos","events_url":"https://api.github.com/users/nisc/events{/privacy}","received_events_url":"https://api.github.com/users/nisc/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/django-tastypie/django-tastypie/labels/bug","name":"bug","color":"d12727"},{"url":"https://api.github.com/repos/django-tastypie/django-tastypie/labels/needunittest","name":"needunittest","color":"02d7e1"},{"url":"https://api.github.com/repos/django-tastypie/django-tastypie/labels/unconfirmed","name":"unconfirmed","color":"c4ae21"}],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/django-tastypie/django-tastypie/milestones/3","html_url":"https://github.com/django-tastypie/django-tastypie/milestones/v1.0.0","labels_url":"https://api.github.com/repos/django-tastypie/django-tastypie/milestones/3/labels","id":4724,"number":3,"title":"v1.0.0","description":"","creator":{"login":"toastdriven","id":2449,"avatar_url":"https://avatars.githubusercontent.com/u/2449?v=3","gravatar_id":"","url":"https://api.github.com/users/toastdriven","html_url":"https://github.com/toastdriven","followers_url":"https://api.github.com/users/toastdriven/followers","following_url":"https://api.github.com/users/toastdriven/following{/other_user}","gists_url":"https://api.github.com/users/toastdriven/gists{/gist_id}","starred_url":"https://api.github.com/users/toastdriven/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/toastdriven/subscriptions","organizations_url":"https://api.github.com/users/toastdriven/orgs","repos_url":"https://api.github.com/users/toastdriven/repos","events_url":"https://api.github.com/users/toastdriven/events{/privacy}","received_events_url":"https://api.github.com/users/toastdriven/received_events","type":"User","site_admin":false},"open_issues":58,"closed_issues":84,"state":"open","created_at":"2011-04-20T20:58:36Z","updated_at":"2015-10-12T06:28:01Z","due_on":null,"closed_at":null},"comments":14,"created_at":"2012-02-13T14:03:09Z","updated_at":"2015-10-12T06:28:01Z","closed_at":"2015-10-12T06:28:01Z","body":"Hello,\r\n\r\nare there any strategies to increase the performance of a TastyPie API? I'm experiencing bad performance (factor 15 compared to a similar API implemented in a faster language) and wonder if I can do anything about it.\r\n\r\nA few facts:\r\nMain resource: 3 `TextField`s, 4 `ToOneField`s, 3 `ToManyField`s. (The referenced resources don't have any other outside relations themselves.)\r\nDatabase: SQLite\r\n(De-)Serializer: JSON\r\n\r\nWhat's the problem:\r\nIf I query the main resource with ?limit=600, the CPU is busy for about 9 seconds (2GHz). \r\n\r\nWhat I have tried:\r\n1) Removing `full=True` (resource inlining) from the fields in my main resource does not help much.\r\n2) Removing the relations to the foreign resources from the main resource does help a lot (e.g., removing some of the  `ToOneField`s), but obviously this is not an option.\r\n3) Enabling the `SimpleCache` and configuring the `CACHES` in `settings.py` did not seem to help at all. How would I confirm that it's actually doing anything?\r\n4) Using the XML (de-)serializer instead of JSON adds 3 additional seconds.\r\n5) `DEBUG=True` only accounts for about 500ms.\r\n\r\nWhat I'm thinking about:\r\n1) Merging my models and reducing the number of resources.\r\n2) Node.js?? Java??\r\n\r\nAny ideas?"}}