In short, you need NOT worry about scaling with JWT
Detailed explanation:
First, consider the difference in implementation between the default token authentication provided by Django-Rest-Framework (DRF) and the token provided by DRF-JWT
Token provided by DRF
rest_framework.authentication.TokenAuthentication
Token creation:
1) Create a token
Token.objects.create (user = user)
2) Store the token created in step 1 in the database
3) Return the token to the client
Token Identification:
1) Check if the token exists in the client in the database
2) If a token exists, it means that the user is authenticated
Token provided by DRF-JWT
rest_framework_jwt.authentication.JSONWebTokenAuthentication
Token creation:
1) Create a token
body = base64encode (header) + "." + base64encode (payload)
signature = HMACSHA256_encode (body, 'secret_key') #secret key is usually specified in your .py settings
token = body + "." + signature
2) Return the token to the client
Token Identification:
1) Decode a token
token_segment = token.split ('.')
body = token_segment [0] + "." + token_segment [1]
signature = token_segment [2]
decode_body = HMACSHA256_decode (signature, 'secret_key')
2) If decode_body is equal to the body, the user is authenticated
Conclusion
From the above mechanism, we can safely conclude that the JWT approach is more scalable, since it depends solely on secret_key, and each web server should have a secret_key in settings.py
To answer your question, you do not need to worry about scaling it :)