Bonjour !
Ceci étant mon premier message ici, j'en profite pour saluer tout le monde.
Sur un site, on m'a signalé le message "Trop de connexions. Réessayez ultérieurement", qui empêche des internautes d'accéder aux pages, et dont je n'arrive pas à trouver la cause.
Je plante le décor :
- Site évènementiel, unique sur le serveur.
- Le site reçoit peu de visiteurs (2000 / mois ; maxi 50 par jour).
- Hébergé chez moi, avec accès via une liaison ADSL OrangePro (800 kBd effectif dans le sens montant/envoi).
- Il s'agit d'un volet technique d'un site hébergé ailleurs.
- Très peu d'images (4 en fait, de moins de 20 ko).
- HTML volontaire simple.
- CSS très petit.
- Très peu de javascript (uniquement pour rafraichir certains formulaires en AJAX).
- Requêtes HTTP toutes indépendantes.
- Pas de cookies ; les variables éventuelles sont codées en tant que paramètres des requêtes HTTP.
- Le site est construit en Python, avec Cherrypy comme serveur.
- Cherrypy est configuré pour accepter 100 "threads de connexions" simultanés.
- Le module SGBD est CHATA. La base est ouverte en permanence. CHATA ne gère pas la notion de connexion, et c'est ultrarapide (genre : extraction de 10 000 enregistrements dans une base de 100 000 en 0,04 s ; et les écritures sont gérées par une file multithreadée). Les volumes de données du site sont faibles : la plus grosse table a 35 000 enregistrements, les autres moins de 5000, et il n'y a que 6 tables.
- Test de perfs : 90 % des pages sont servies en moins de 0,1 s.
- Il y a un module de paiement par Paypal, mais il s'agit simplement d'un lien envoyé et oublié, le retour se faisant par une requête HTTP indépendante.
Le souci.
Par moment, certains visiteurs reçoivent le message "Trop de connexions. Veuillez réessayer ultérieurement."
Ce message, en français, apparait au moment où ils veulent accéder au site.
Pourtant, j'ai fait des tests, en me connectant plusieurs fois simultanément, de l'extérieur, via des adresses IP différentes (et avec plusieurs machines), sans problème.
Questions.
- Finalement, qu'est-ce qu'une "connexion" ? Mon site gère les requêtes HTTP, les unes après les autres.
Elles sont considérées comme isolées. La notion de connexion n'existe donc pas à son niveau.
Comme il n'y a qu'un seul socket entre le serveur et le routeur, je conçois mal cette notion
de "connexion".
- Quelles sont l'origine et la cause de ce message ? Avec les éléments suivants :
+ Cherrypy est en anglais, alors que le message est en français.
+ Se pourrait-il que ce soit Orange ? Mais j'ai des clients, qui avec le même genre de connexion ont plusieurs dizaines de PC connectés en permanence à Internet.
+ Mon site ne renvoie jamais ce message.
+ Dans les journaux (logs), j'ai vu jusqu'à plus de 10 personnes travaillant en même temps sur le site ; or, j'ai eu, au téléphone, un internaute qui voyait le message alors qu'il n'y avait que deux utilisateurs en cours...
Si quelqu'un avait une idée de l'origine du problème, je pourrais enfin chercher une solution.
Merci d'avance.
Ceci étant mon premier message ici, j'en profite pour saluer tout le monde.
Sur un site, on m'a signalé le message "Trop de connexions. Réessayez ultérieurement", qui empêche des internautes d'accéder aux pages, et dont je n'arrive pas à trouver la cause.
Je plante le décor :
- Site évènementiel, unique sur le serveur.
- Le site reçoit peu de visiteurs (2000 / mois ; maxi 50 par jour).
- Hébergé chez moi, avec accès via une liaison ADSL OrangePro (800 kBd effectif dans le sens montant/envoi).
- Il s'agit d'un volet technique d'un site hébergé ailleurs.
- Très peu d'images (4 en fait, de moins de 20 ko).
- HTML volontaire simple.
- CSS très petit.
- Très peu de javascript (uniquement pour rafraichir certains formulaires en AJAX).
- Requêtes HTTP toutes indépendantes.
- Pas de cookies ; les variables éventuelles sont codées en tant que paramètres des requêtes HTTP.
- Le site est construit en Python, avec Cherrypy comme serveur.
- Cherrypy est configuré pour accepter 100 "threads de connexions" simultanés.
- Le module SGBD est CHATA. La base est ouverte en permanence. CHATA ne gère pas la notion de connexion, et c'est ultrarapide (genre : extraction de 10 000 enregistrements dans une base de 100 000 en 0,04 s ; et les écritures sont gérées par une file multithreadée). Les volumes de données du site sont faibles : la plus grosse table a 35 000 enregistrements, les autres moins de 5000, et il n'y a que 6 tables.
- Test de perfs : 90 % des pages sont servies en moins de 0,1 s.
- Il y a un module de paiement par Paypal, mais il s'agit simplement d'un lien envoyé et oublié, le retour se faisant par une requête HTTP indépendante.
Le souci.
Par moment, certains visiteurs reçoivent le message "Trop de connexions. Veuillez réessayer ultérieurement."
Ce message, en français, apparait au moment où ils veulent accéder au site.
Pourtant, j'ai fait des tests, en me connectant plusieurs fois simultanément, de l'extérieur, via des adresses IP différentes (et avec plusieurs machines), sans problème.
Questions.
- Finalement, qu'est-ce qu'une "connexion" ? Mon site gère les requêtes HTTP, les unes après les autres.
Elles sont considérées comme isolées. La notion de connexion n'existe donc pas à son niveau.
Comme il n'y a qu'un seul socket entre le serveur et le routeur, je conçois mal cette notion
de "connexion".
- Quelles sont l'origine et la cause de ce message ? Avec les éléments suivants :
+ Cherrypy est en anglais, alors que le message est en français.
+ Se pourrait-il que ce soit Orange ? Mais j'ai des clients, qui avec le même genre de connexion ont plusieurs dizaines de PC connectés en permanence à Internet.
+ Mon site ne renvoie jamais ce message.
+ Dans les journaux (logs), j'ai vu jusqu'à plus de 10 personnes travaillant en même temps sur le site ; or, j'ai eu, au téléphone, un internaute qui voyait le message alors qu'il n'y avait que deux utilisateurs en cours...
Si quelqu'un avait une idée de l'origine du problème, je pourrais enfin chercher une solution.
Merci d'avance.