je suis stress test 2 projets différents: l'un est proxsmtpd - proxy smtp écrit en C Et l'autre, smtp_proxy.py, que j'ai développé sous 1 heure, avec l'utilisation d'asyncore et smtpd modules python.Python asyncore vs plaine vieux C
I ont souligné les deux projets sous une lourde charge, et a découvert que proxsmtpd est capable de tenir 400 séances de smtp/sec, alors que mon programme python, est capable de faire seulement 160 sessions smtp/s. Donc, ma question est, est-ce parce qu'il y a des limitations de performance en asyncore, ou les programmes en C sont juste plus rapides? Ou peut-être c'est moi, en utilisant asyncore de manière inefficace?
Si vous êtes plutôt novice avec Python, il est assez sûr que vous faites des choses de manière inefficace. Les nouveaux venus sur Python écrivent souvent des choses de style C, en répétant les caractères individuels dans les chaînes, sans utiliser efficacement les primitives Python, travaillant généralement à un niveau trop bas. Sauf si vous êtes sûr que votre approche est "Pythonique" et efficace, la suggestion de Noufal de profiler est bonne: faites-le et si vous ne savez pas pourquoi le code le plus lent est si lent, postez une mise à jour avec du code. –