@Throttle 在 关于 Django 中的 Async 和 Sync 中发帖
去年尝试把一些项目改为了 Async View,使用到了 Django Channels 和 ADRF,但是测试下来发现,并没有任何性能提升,甚至还会出现一些奇奇怪怪的问题
启动服务使用的是 Gunicorn + Uvicorn Worker,从 WSGI 切换到了 ASGI,其他的代码改造大致如下
改造前:
class SystemPresetSerializer(serializers.ModelSerializer):
...
class SystemPresetViewSet(GenericViewSet):
def list(self, request, *args, **kwargs):
queryset = SystemPreset.get_queryset().filter(Q(Q(is_public=True) | Q(user=r...