Aller au contenu

pmadfm

Actif
  • Compteur de contenus

    11
  • Inscrit(e) le

  • Dernière visite

Réputation sur la communauté

0 Neutre

À propos de pmadfm

  • Date de naissance 21/04/1955

Pour me contacter

  • Mon Site
    http://www.01-depannage-informatique.com

Information du profil

  • Genre
    Homme
  • Localisation
    IDF
  • Société
    Sarl 01ADFM
  1. Bonjour, Le problème avec Debian c'est que c'est le foutoir pour trouver un tutoriel. Je suis à la recherche d'un tutoriel pour installer debian etch en mode serveur avec apache mysql, php4, php5, gestion des mail, rien que çà bonjour ! La majorité des tutos en sont encore à la sarge et lors de recherches je ne trouve rien. C'est dommage, mais j'ai bien peur de devoir me tourner vers ubuntu dont la communauté et les tutos semble beaucoup plus accessible et mieux organisés. Ceci dit c'est une debian based ...
  2. Bonsoir DAN, J'ai le même problème de performance sans pour autant que ma machine ne tombe. Je suis en ovh release 2 ... et en plus n'ayant pas réfléchit lors de l'installation j'avais choisi le mode 64 bits ce qui c.. car je n'ai que 2 Go de ram (PIV 2GO ram et 750 Go) Or j'ai bien lu un peu partout que debian etch serait meilleur que cette rel 2 d'ovh. Dans ton poste tu parle de tutoriels bien fait, en aurais tu quelques uns sous la main. En fait j'ai une quarantaine de sites web et un peu plus de 10 000 000 de requêtes mysql jour. Je tournai avant sur une dédibox que j'avais fini par optimiser et via le cron je relancais apache toute les heures pour éviter les plantages. Aujourd'hui je suis passé sous OVH avec une machine bien plus puissante mais le résultat reste insatisfaisant. Sachant que j'ai besoin impérativement : Mysql >= 4xx phpmyadmin apache 2xx PHP4 et PHP5 Gestion de mails Je m'étais dit que debian etch + plesk serait peut être une bonne solution ? Quel est ton avis ? Pourquoi Plesk, parce que je n'ai pas le temps de modifier tout à la main à chaque fois, mes fichiers de zone(bind), mes users ftp ... Aurais tu des tuto et ou une opinion ? J'avais essayé en local sur une petite machine de test PIV 2.66 784Go HD 120 Go. Debian parfais, mais le PB c'est que les sources ne permettais pas d'accèder à l'apt-get de php4 ... 9à parait bête mais bout à bout ces petites misères font qu'on se retrouve rapidement avec une journée dans le nez et pas de solution au bout à part réinstaller cett coch de rel2 ....
  3. Bonjour, AMHA, l'élastique est effectivement important. Pour le public, je dirais que la plus grande majorité peut tourner en 1024*768, toutefois si ton affichage peut ou doit être lu par des seniors, il vaut mieux envisager le 800*600. Peu me contredirons, vers les 45-50 la vue baisse, alors la résolution doit pouvoir s'adapter. N'est il pas, messieurs les jeunes des années 50 ...
  4. Bonjour, Pour la Crontab mettez plutôt : 0,15 * * * * /etc/init.d/apache2 reload > /dev/null 2>&1 Toutes suggestions pour l'amélioration de ces codes et informations seront les bienvenues. Merci.
  5. Bonjour, Eu égard au tarif que tu paye, je ne vois pas l'intérêt de passer par du serveur que ce soit mutualisé ou dédié. En effet, chez Nexlink.ch, donc en suisse, un hébergement complet coute environ 105 ttc (facile pas de taxe) par an et pour ce tarif tu as : 5 Go hd 20 base mysql mail illimité 100 compte ftp 1 domaine alias illimité trafic théorique 1 To par mois(plus sur vérfier). etc ... Et il sont carrés les suisses c'est du amen ;-) ton fric ... Donc dans ton cas 3 x 105 = 315 TTC et basta. Les performances sont exellente la sécurité au top et le backup gratos, tu n'as qu'à ajouter trois ndd à envion 7.49 ttc par an sur 1&1 tu divise ta facture par tois tu améliore tes performances et tu diminue ta charge de travail et de stress.
  6. Bonjour, Je suis d'accord avec Dan, sans cachier des charges difficile d'estimer le projet et plus encore de te conseiller. Alors pose toi la question de ton besoin, de ta cible, de l'évolution portentielle de tes besoins puis cherche des comparatifs sur les prestataires correspondant à ton besoin. Pour ma part je suis sur la dédibox d'un de mes ancien employé depuis 09/2006 rapport qualité prix rien à dire, petit budget. Et je viens d'en prendre une à mon nom. Toutefois avant de maîtriser la partie serveur et l'installation correcte dudit serbeur plus la sécurité, il y a un peu de taf. Mais tout dépend de l'utilisation que tu veux en faire et de ton niveau de connaissance. Bon courage.
  7. Bonsoir, Merci à tous de vos réponses en fait j'ai gratté et : Eureka ! Jai finis par y arriver. Cela na pas été sans peine et je pense quil pourrait encore y avoir des améliorations mais déjà, le résultat obtenu est plus que satisfaisant pour un début. Donc je vais vous livrer ma petite cuisine, le tout sans prétention, simplement si cela peut aider quelquun ce serait dommage de ne pas vous en faire profiter. Encore une fois je ne me prends pas pour un expert apache, loin sen faut ... Lensemble des modifications tient en peu de lignes et principalement dans apache2.conf. Voici le code modifié : Timeout 300 KeepAlive On MaxKeepAliveRequests 30 KeepAliveTimeout 5 ServerLimit 400 <IfModule prefork.c> MaxClients 400 StartServers 5 MinSpareServers 70 MaxSpareServers 300 </IfModule> <IfModule worker.c> StartServers 5 MaxClients 400 MinSpareThreads 70 MaxSpareThreads 300 ThreadsPerChild 0 MaxRequestsPerChild 4000 </IfModule> <IfModule perchild.c> NumServers 5 StartThreads 5 MinSpareThreads 70 MaxSpareThreads 300 MaxThreadsPerChild 0 MaxRequestsPerChild 0 AcceptMutex fcntl </IfModule> #300 secondes 604800 secondes 2592000 = 30j ExpiresDefault A300 expiresbyType text/html M604800 expiresbyType image/gif A2592000 Positionnez AllowOverride sur none afin déviter quapache tente douvrir le .htaccess dans chaque répertoire quil visite. Pensez à mettre le KeepAlive et KeepAliveTimout (entre 2 et 5), permettent lenvoi de requêtes multipes. Cest very good pour les pages html comportant par exemple plusieurs images, si vous le mettez sur off alors apache va générer de multiple TCP et ainsi créer une surcharge importante pour tous les TCP, un par image .. La directive ServerLimit permet doverrider le par défaut qui vous limite à 256 clients. Mon maxclient correspond à mon besoin et il est bien équilibré aujourdhui pour moi. Attention de bien équilibré le minspare par rapport au maxspare, ces paramètres déterminent le nombre de processus enfants, si le min est trop bas apache génèrera trop denfant et pendant ce temps il ne répondra pas aux requêtes et il consommera plus de ram. Normalement et là, ce nest pas tout à fait le cas ;-) on devrait avoir un ratio de 4 afin de ne pas généré plus de 4 enfants. Ah les sales gosses ;-) MaxRequestsPerChild nhésitez pas à en mettre quelques milliers. Alors maintenant quelques modules pour arranger encore plus la vie de votre serveur. La compression http peut être activée grâce au module deflate. La communication avec le navigateur est automatique et apache de ce fait détermine automatiquement si il peut compresser ou non. (Content-Encoding: utilisation de gzip par apache) Encore un petit truc, mettre en cache chez le client une copie des données et gérer sa conservation : économie de BP, ce contrôle du cache est exécuté par les modules mod_epires et mod_headers, en local coté serveur cela peut être effectué avec le mod_cache. Ensuite codez les Expires defaut et type. Dernier point pour les PROS qui veulent vraiment affiner leur serveur. En fait il y à deux type de pages, les pages statiques et les pages dynamiques, or si apaches sait gérer les deux il ne le fait pas de manière identique. En effet 3mo suffisent pour les statiques et de 3 à 20 mo de ram pour les dynamiques. Or notre ami apache ne libère pas la ram et ce jusquà ce que le processus meurt, aussi vous vous retrouver rapidement avec une taille de ram importante voir lutilisation du swap = accès HD. Deux solutions, 1 propre et un peu complexe et une débrouillardise que jai mise en uvre pour linstant. Propre : Montez un Apache léger (minimum de modules statiquement compilés) comme serveur frontal pour les pages statiques. Les pages requêtes dynamique doivent être envoyés au serveur Apache puissant (compilé avec les modules utiles). Un serveur frontal léger offre l'avantage d'une prise en charge rapide du contenu statique sans consommer trop de ram, et le dynamique est transféré vers le gros serveur. Vous pouvez filtrer le transfert des requêtes via les modules mod_proxy et mod_rewrite. Vous en mettez un sur le port 80 et lautre sur le 8092 par exemple. Code : ProxyPassReverse / http://%{HTTP_HOST}:8092/ RewriteEngine on RewriteCond %{REQUEST_URI} !.*\.(gif|png|jpg)$ RewriteRule ^/(.*) http://%{HTTP_HOST}:8092/$1 [P] Et hop, bon il faut le tester et le mettre au point mais cest lidée. Votre client ne verra rien et votre ram sera heureuse. La débrouillardise : Crontab e (mode root) Puis : */60 10-19 * * mon,tue,wed,thu,fri,sat /etc/init.d/apache2 reload Cela revient à dire toute les 60 minutes de 10 heures à 19 heures du lundi au samedi, pépère soit gentil de reload apache afin de virer les processus inutiles et de libérer ma RAM, non de dieu ! ;-) Voilà jespère que ce petit tuto pourra vous aider, enfin moi jai pas mal galéré et même si cela nest pas encore pointu, mon serveur tourne et les temps de réponses sont passé de 10 minutes à 1 à 3 secondes avec au redémarrage dapache (reload) une conso de 350 mo de ram ce qui est plus que satisfaisant sachant que jai configuré un mysql de ouf avec par exemple 384mo de keysbuffers etc ... enfin en gros la config que lon trouve dans huge.ini de easyphp 2.0. Je vous rappelle le contexte, Sur une dédibox, jai une quinzaine de sites web dont 4 annuaires et mon fameux Topsites qui à lui seul reçoit environ 600 000 requêtes chaque jour pour laffichage de notre bouton statistiques sur les sites web des inscrits sur notre TopSites. Et bien sur une table qui montent jusquà 180 000 lignes le soir, avec lIP, le User, le referer, une variable rate, unique_visite, totale_visite et sortie. Chaque requête daffichage du bouton de stats génère environ 8 requêtes de lecture et de maj en mysql. Dernier point que lon néglige souvent et qui est pourtant évident le calcul des stats, en effet jai diminué mon bouton de 7.65Ko à 1.20 et je suis passé sur le domaine TopSites de 5Go à 1.5go par jour en BP. Eh oui 600 000 * de 6.45 ko = trop lourd ... J'allais oublié, je suis heureux de n'avoir pas du investir dans un bi-néon au fait sur mon httpperf je ne perds plus de clients tout le monde à sa réponse et mon cpu monte maintenant de manière significative, ah le feignant. Cordialement Pascal
  8. Bonjour en complément, voici deux stats éloquentent sur mon serveur et sur celui de webmaster hub qui lui ne perd rien et qui décoiffe, bravo à l'équipe. httperf --timeout=1 --client=0/1 --server=01-topsites.com --port=80 --uri=/ --rate=10 --send-buffer=4096 --recv-buffer=16384 --num-conns=100 --num-calls=1 Maximum connect burst length: 12 Total: connections 100 requests 55 replies 3 test-duration 12.383 s Connection rate: 8.1 conn/s (123.8 ms/conn, <=23 concurrent connections) Connection time [ms]: min 1704.6 avg 1770.8 max 1903.0 median 1704.5 stddev 114.4 Connection time [ms]: connect 438.2 Connection length [replies/conn]: 1.000 Request rate: 4.4 req/s (225.2 ms/req) Request size [B]: 66.0 Reply rate [replies/s]: min 0.0 avg 0.0 max 0.0 stddev 0.0 (2 samples) Reply time [ms]: response 1035.2 transfer 6.7 Reply size [B]: header 212.0 content 117531.0 footer 2.0 (total 117745.0) Reply status: 1xx=0 2xx=3 3xx=0 4xx=0 5xx=0 CPU time [s]: user 0.03 system 0.11 (user 0.3% system 0.9% total 1.1%) Net I/O: 28.1 KB/s (0.2*10^6 bps) Errors: total 97 client-timo 97 socket-timo 0 connrefused 0 connreset 0 Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0 Perte de request et lenteur MasterHub httperf --timeout=1 --client=0/1 --server=webmaster-hub.com --port=80 --uri=/ --rate=10 --send-buffer=4096 --recv-buffer=16384 --num-conns=100 --num-calls=1 Maximum connect burst length: 1 Total: connections 100 requests 100 replies 100 test-duration 9.983 s Connection rate: 10.0 conn/s (99.8 ms/conn, <=6 concurrent connections) Connection time [ms]: min 75.3 avg 174.7 max 577.6 median 85.5 stddev 159.1 Connection time [ms]: connect 5.4 Connection length [replies/conn]: 1.000 Request rate: 10.0 req/s (99.8 ms/req) Request size [B]: 68.0 Reply rate [replies/s]: min 10.0 avg 10.0 max 10.0 stddev 0.0 (1 samples) Reply time [ms]: response 150.2 transfer 19.2 Reply size [B]: header 421.0 content 44134.0 footer 2.0 (total 44557.0) Reply status: 1xx=0 2xx=100 3xx=0 4xx=0 5xx=0 CPU time [s]: user 1.92 system 7.11 (user 19.2% system 71.3% total 90.5%) Net I/O: 436.5 KB/s (3.6*10^6 bps) Errors: total 0 client-timo 0 socket-timo 0 connrefused 0 connreset 0 Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0 Excellent 0 pertes ! Et là on voit bien que le CPU est sollicité ! Cdt Pascal
  9. Bonjour, Grand merci pour vos réponses. En fait tous jours vers les 17 heures on ne peut plus accéder à mes sites tout devient hyper lent et les réponses n'arrivent pas aux clients. Quand je fais un top en ssh le cpu se repose la ram est chargée et le résultat plus d'accès http posssible . J'ai du trop chargé mysql et pas assez apache, mais mes connaissance dans le domaine sont très légères et c'est pourquoi je sollicite votre aide. Entre temps j'ai installé APC, dommage ce n'était pas le meilleur et les load module pour charger un peu les machines clients, dont voici les changements opérés et j'ai peur que cela ne change pas grand chose : Timeout 300 KeepAlive On MaxKeepAliveRequests 30 <IfModule prefork.c> MaxClients 150 StartServers 5 MinSpareServers 5 MaxSpareServers 20 </IfModule> <IfModule worker.c> StartServers 5 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 50 </IfModule> <IfModule perchild.c> NumServers 5 StartThreads 5 MinSpareThreads 5 MaxSpareThreads 10 MaxThreadsPerChild 20 MaxRequestsPerChild 0 AcceptMutex fcntl </IfModule> # PM Ajout par la creation des liens symbolique pour : LoadModule expires_module modules/mod_expires.so LoadModule headers_module modules/mod_headers.so # Afin de Stocker les data headers ... chez le client # M604800 = 7j A2592000 30j ExpiresDefault A300 expiresbyType text/html M604800 #Expires A2592000 expiresbyType image/gif A2592000 <IfModule mod_negotiation.c> <IfModule mod_include.c> Alias /error/ "/usr/share/apache2/error/" <Directory "/usr/share/apache2/error"> AllowOverride None Options IncludesNoExec AddOutputFilter Includes html AddHandler type-map var Order allow,deny Allow from all LanguagePriority fr en es de ForceLanguagePriority Prefer Fallback </Directory> ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var ErrorDocument 410 /error/HTTP_GONE.html.var ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var ErrorDocument 415 /error/HTTP_SERVICE_UNAVAILABLE.html.var ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var </IfModule> </IfModule> *** MYSQL *** port = 3306 socket = /var/run/mysqld/mysqld.sock # Here follows entries for some specific programs # The MySQL server [mysqld] port = 3306 socket = /var/run/mysqld/mysqld.sock skip-locking bind-address = 127.0.0.1 key_buffer = 384M max_allowed_packet = 2M table_cache = 1024 sort_buffer_size = 16M read_buffer_size = 16M read_rnd_buffer_size = 16M myisam_sort_buffer_size = 64M thread_cache = 16 query_cache_size = 32M # Try number of CPU's*2 for thread_concurrency thread_concurrency = 32 long_query_time=30 join_buffer_size = 256K language = /usr/share/mysql/french/ max_connections = 150 max_tmp_tables = 512 myisam_data_pointer_size = 32K table_cache = 1024 # Replication Master Server (default) # binary logging is required for replication log-bin # required unique id between 1 and 2^32 - 1 # defaults to 1 if master-host is not set # but will not function as a master if omitted server-id = 1 max_tmp_tables = 512 myisam_data_pointer_size = 32K table_cache = 1024 [mysqldump] quick max_allowed_packet = 16M [mysql] no-auto-rehash # Remove the next comment character if you are not familiar with SQL #safe-updates [isamchk] key_buffer = 128M sort_buffer_size = 128M read_buffer = 8M write_buffer = 8M [myisamchk] key_buffer = 256M sort_buffer_size = 256M read_buffer = 16M write_buffer = 16M [mysqlhotcopy] interactive-timeout Si cela vous cause, n'hésitez pas à conversez ;-) Merci d'avance et bonne journée.
  10. Bonjour, J'ai reçu depuis quelques semaine un PR de 5 sur mon Topsites et depuis c'est la galère je n'arrive à trouver de l'information sur l'optimisation de ce tuple mysql et apache. Pourriez-vous m'aider SVP: Dédibox Ubunto DD 160 GO Ram 1 Go boot 40 Mo swap 2048 / le reste J'allais oublier environ 5 000 000 de requêtes par jour et des pics à plus de 100 la seconde. Le CPU vit tranquille sa petite vie et ne fait pas grand chose, et tous les sites (15) sur la boite dédié rament le soir vers 17h00 heure de pointe. Voici mes fichiers de config top - 18:26:49 up 9 days, 4:11, 1 user, load average: 0.04, 0.13, 0.18 Tasks: 219 total, 1 running, 217 sleeping, 0 stopped, 1 zombie Cpu(s): 6.3% us, 1.0% sy, 0.0% ni, 92.7% id, 0.0% wa, 0.0% hi, 0.0% si Mem: 1018456k total, 496264k used, 522192k free, 37956k buffers Swap: 2096472k total, 11720k used, 2084752k free, 163172k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 8993 mysql 15 0 509m 101m 4236 S 1.3 10.2 1:19.69 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid 10863 www-data 16 0 22680 10m 2988 S 0.0 1.1 0:00.52 /usr/sbin/apache2 -k start -DSSL 10974 www-data 16 0 21736 10m 3352 S 0.0 1.0 0:00.43 /usr/sbin/apache2 -k start -DSSL 10894 www-data 15 0 22088 10m 2928 S 0.0 1.0 0:00.90 /usr/sbin/apache2 -k start -DSSL 10879 www-data 16 0 21408 9604 2944 S 0.0 0.9 0:00.27 /usr/sbin/apache2 -k start -DSSL 10918 www-data 15 0 20496 8516 2844 S 0.0 0.8 0:00.19 /usr/sbin/apache2 -k start -DSSL 10954 www-data 16 0 19300 7632 3088 S 0.0 0.7 0:00.24 /usr/sbin/apache2 -k start -DSSL 10864 www-data 16 0 18936 7096 3288 S 0.0 0.7 0:00.24 /usr/sbin/apache2 -k start -DSSL 10956 www-data 16 0 18924 7084 3264 S 0.0 0.7 0:00.20 /usr/sbin/apache2 -k start -DSSL 10892 www-data 15 0 18340 6872 3392 S 0.3 0.7 0:00.12 /usr/sbin/apache2 -k start -DSSL 10897 www-data 16 0 18592 6780 3268 S 0.0 0.7 0:00.08 /usr/sbin/apache2 -k start -DSSL 10937 www-data 15 0 17996 5900 2776 S 0.0 0.6 0:00.08 /usr/sbin/apache2 -k start -DSSL 10842 root 16 0 17320 5556 3148 S 0.0 0.5 0:00.06 /usr/sbin/apache2 -k start -DSSL 10908 www-data 15 0 17596 5500 2712 S 0.0 0.5 0:00.08 /usr/sbin/apache2 -k start -DSSL /* Apache 2 */ Timeout 300 # KeepAlive: Whether or not to allow persistent connections (more than # one request per connection). Set to "Off" to deactivate. KeepAlive On # MaxKeepAliveRequests: The maximum number of requests to allow # during a persistent connection. Set to 0 to allow an unlimited amount. # We recommend you leave this number high, for maximum performance. MaxKeepAliveRequests 150 ******************************** <IfModule prefork.c> MaxClients 150 StartServers 5 MinSpareServers 5 MaxSpareServers 25 </IfModule> <IfModule worker.c> StartServers 5 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 150 ThreadsPerChild 5 MaxRequestsPerChild 60 ********************************* /* MySQL */ [mysqld] port = 3306 socket = /var/run/mysqld/mysqld.sock skip-locking bind-address = 127.0.0.1 key_buffer = 384M max_allowed_packet = 2M table_cache = 1024 sort_buffer_size = 16M read_buffer_size = 16M read_rnd_buffer_size = 16M myisam_sort_buffer_size = 64M thread_cache = 16 query_cache_size = 32M # Try number of CPU's*2 for thread_concurrency thread_concurrency = 32 long_query_time=30 join_buffer_size = 256K language = /usr/share/mysql/french/ max_connections = 150 max_tmp_tables = 512 myisam_data_pointer_size = 32K table_cache = 1024 ~~~~~~ [isamchk] key_buffer = 128M sort_buffer_size = 128M read_buffer = 8M write_buffer = 8M [myisamchk] key_buffer = 256M sort_buffer_size = 256M read_buffer = 16M write_buffer = 16M [mysqlhotcopy] interactive-timeout J'ai une grande expérience de l'informatique mais très peu d'unix et des serveurs Web, aussi toute aide sera la bienvenue. Par avance merci.
  11. Bonjour, Ta farm of pub est épuisante. Toutefois la réponse à ta question technique est la suivante : $from = $_SERVER['HTTP_REFERER']; $ip = getenv("REMOTE_ADDR"); etc .... Mais en fait, c'est de la fausse pub, juste affichage intensif par des web master cherchant en retour des point pour avoir des visites, toutes aussi fictives ne pouvant servir qu'a faire monter les compteur de stats sur des top sites ou annuaires. Et à moins de vouloir devnir aveugle, ils lancent peut être cette visionneuse mais se sauvent rapidement regarder la télé pendant que ça tourne. Bon courage.
×
×
  • Créer...