est le travail cron qui va chercher les données de cette « base de données » sur le même serveur? Est-ce que vous récupérez des données pour un utilisateur à partir d'un serveur distant en utilisant le raclage d'écran ou quelque chose?
Si c'est le cas, vous pouvez configurer quelques tâches cron différentes et le faire par lots. De cette façon, vous réduisez la quantité de charge sur le serveur distant et vous réduisez les chances d'obtenir vos données, bloquant ainsi votre accès.
Modifier
Ok, donc si vous ne l'avez pas obtenu la permission de faire gratter, évidemment vous allez vouloir do it responsibly (peu importe le site). Essayez de rassembler autant de données que vous le pouvez à partir de demandes aussi petites que possible, et étalez-les au cours de la journée entière, ou même pendant les périodes susceptibles d'être à faible charge. Je ne voudrais pas essayer d'utiliser un proxy, cela n'aiderait pas vraiment le serveur distant, mais ce serait une douleur dans le cul pour vous.
Je ne suis pas un programmeur iPhone, et cela pourrait ne pas être possible, mais vous pouvez essayer d'avoir les iPhones individuels saisir les données de sorte que tout le trafic source ne provient pas de la même adresse IP. Juste une idée, sinon essayez d'être un peu discret.
Voici quelques conseils de Jeff concernant le raclage de Stack Overflow, mais j'imagine que les règles sont similaires pour n'importe quel site.
Utilisez demande GZIP. C'est important! Par exemple, un grattoir a utilisé 120 mégaoctets de bande passante pour seulement 3 310 occurrences, ce qui est substantiel. Avec le support gzip de base (cuit dans HTTP depuis les années 90, et supporté universellement) il aurait été de 20 mégaoctets ou moins.
Identifiez-vous. Ajoutez quelque chose d'utile à l'agent utilisateur (idéalement, un lien vers une URL, ou quelque chose d'informatif) afin que nous puissions voir votre bot comme quelque chose d'autre que "un grattoir anonyme générique inconnu".
Utilisez les bons formats. N'enlève pas le HTML quand il y a un flux JSON ou RSS que tu pourrais utiliser à la place. Heck, pourquoi gratter du tout quand vous pouvez download our cc-wiki data dump ??
Soyez prévenant. Tirer des données plus de toutes les 15 minutes est discutable. Si vous avez besoin de quelque chose de plus opportun que cela ... pourquoi ne pas demander la permission d'abord, et expliquer pourquoi c'est un avantage pour la communauté SO et devrait être autorisé? Notre courriel est lié au bas de chaque page sur chaque site de la famille SO. Nous ne mordons pas ... dur.
Oui, vous voulez une API. Nous avons compris. Ne faites pas rage contre la machine en faisant des choses vilaines jusqu'à ce que nous la construisions. C'est dans la file d'attente.
J'ai créé une application iPhone qui surveille les données des comptes utilisateurs. Par conséquent, il doit se connecter au site de suppression et obtenir les nouvelles données. Actuellement, je n'ai pas d'approbation du site distant. – embedded
Mon problème vient du côté serveur. Ma base de données doit être mise à jour une fois en 4 heures, ce qui signifie que certains travaux CRON devront mettre à jour des utilisateurs entiers et ce, à partir de la même adresse IP, à savoir l'adresse IP du serveur. Je voudrais savoir comment d'autres services font ce genre de tâche. – embedded