Avoid IIS locks/hangs because of static contents, and improve the IIS performances !

The best asp.net programmed web site could be not VERY fast. I mean, you could be dissapointed by the performances of your website if your IIS configuration is not optimized.

The problem

You have a website with the runAllManagedModulesForAllRequests property setted to true in web.config.
What this means ? Every requests will be handled by ASP.net ! So static contents will also be handled by ASP.net !

Real Situation

You published a new page with a big flv (30Mo) and a lot of people try to watch it simultaneously (like 20/30 people) : your IIS will be locked for a good while ! If you look at the process manager, you could see the CPU around 25%, and a lot of Threads in queue !
Because ASP.net is buffering every request in the Thread Pool and it is saturating. As you know the ASP.net Thread Pool max is by default 25 (you can change it) !

Wrong Solution

You could upgrade the Thead Pool max, but it’s the wrong solution, because you will consume so much more memory and ASP.net is delivering files after buffering (you have to wait a lot of time before downloading a huge file).

Good Solution

You have to disable runAllManagedModulesForAllRequests in the sub-directory like this :

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer> 
<modules runAllManagedModulesForAllRequests="false"/>
<staticContent>
<mimeMap fileExtension="." mimeType="application/octet-stream" />
</staticContent> 
</system.webServer> 
</configuration>

This will disable ASP.net for this subapplication.
The only problem is : you have to create a sub application (not a subdirectory) to do that.

So if your directory is /content and you don’t want to update all your ResolveUrl stuff:

– rename /content as /content2
– create a sub-application named “content” with the directory C:\website\content2
– add the web.config file

It should be working. To be sure, upload a huge file (like 2Go) in content2 (the real directory) and try to download it by :
– http://website/content/hugefile.zip
– http://website/content2/hugefile.zip

The first URL /content should deliver the file instantaneously, and the the second should take a huuuge time

Benefits

If all your static contents are not handled by ASP.net, you could feel a very very fast website, a general CPU decrease, even if there is a lot of people connected.

Stephane

Posted in Optimisations, SEO, Web | Leave a comment

Resolve the “‘Microsoft.Advertising.WinRT.UI.winmd’ contains duplicate types names”

Hi everybody,

I recently had an issue with the Microsoft Advertising SDK for WinRT.
I can’t compile without an error  (I found a tip – remove reference/compile/add reference/compile – but I can’t compile for making an app package).

The famous error is :

error APPX1712: The .winmd file ‘Microsoft.Advertising.WinRT.UI.winmd’ contains duplicate type names. Type ‘Microsoft.Advertising.WinRT.UI.AdControl’ is already registered with the in-process server ‘CLRHost.dll’.

1>C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\AppxPackage\Microsoft.AppXPackage.Targets(803,9): error APPX1712: The .winmd file ‘Microsoft.Advertising.WinRT.UI.winmd’ contains duplicate type names. Type ‘Microsoft.Advertising.WinRT.UI.XamlAdControl_XamlTypeInfo.XamlMetaDataProvider’ is already registered with the in-process server ‘CLRHost.dll’.

What the hell is ? It’s just a bogous statment, my project is maybe not typical : I use some library, and it seems the compiler does not like that.

HOW TO RESOLVE ?

I found a lot of posts on The Internet and non solve this issue. I spent a lot of time to find this :

1. Open with notepad the SDKManifest.xml in C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0\ExtensionSDKs\MSAdvertisingXaml\6.1\SDKManifest.xml with administrator rights 
2. Edit this line   <File Reference = “Microsoft.Advertising.WinRT.UI.winmd” >
3 .Modify by <File Reference = “Microsoft.Advertising.WinRT.UI.winmd” Implementation=”Microsoft.Advertising.WinRT.UI.winmd” >
4. Recompile  and enjoy

That’s all, everything works perfect after that 😉

EDIT

Unfortunately, this works but the certification kit fails with that stuff (I mean advertising load in the DLL).

How to do : I referenced the SDK in the EXE, and Loaded in the DLL by Reflection the Type (Microsoft.Advertising.WinRT.UI.AdControl) referenced in the EXE.
Just a crappy stuff because of a bogus SDK : but it works and certification kit is happy !

Stephane

 

Posted in C++ CX, WinRT | 1 Comment

Le temps qu’il faut attendre pour les demande de réexamen de Google ?

Vous avez recu un mail du type :

Cher propriétaire ou webmaster du site http://www.******.com/,
Nous avons détecté que certaines des pages de votre site utilisent des techniques contraires aux Consignes Google aux webmasters.
Nous vous invitons plus particulièrement à vérifier les liens artificiels qui redirigeraient vers votre site dans le but de manipuler le PageRank. Ces liens factices peuvent être ajoutés, par exemple, dans le cadre de l’achat de liens visant à améliorer le PageRank ou de la participation à des systèmes d’échange de liens.

Nous vous encourageons à apporter des modifications à votre site afin de le mettre en conformité avec nos consignes relatives à la qualité. Une fois ces changements effectués, veuillez envoyer une demande de réexamen pour que votre site soit inclus dans les résultats de recherche de Google.
Si vous trouvez des liens factices qui redirigent vers votre site et que vous êtes incapable de contrôler ou de supprimer, veuillez nous fournir des informations détaillées dans votre demande de réexamen.
Pour toute question relative à la résolution de ce problème, veuillez consulter notre Forum d’aide pour les webmasters.
Cordialement,
L’équipe Google chargée de la qualité des recherches

 

Forcément vous avez fait le nécessaire avec l’outil de désaveu de lien puis vous avez envoyé votre demande de réexamen pour que la sanction soit levée.

Pour la première demande la durée de l’attente avant réponse : environ 1 semaine.
Pour les autres demandes, il faudra patienter un peu moins d’un mois.

Si tout se passe mal lors de votre première demande ça donne ça :

 

Cher propriétaire ou webmaster du site http://www.***.com/,
Nous avons reçu un message du propriétaire du site http://www.***.com/ nous demandant de réexaminer ce dernier afin de vérifier s’il est conforme aux consignes Google aux webmasters.
En examinant votre site, nous avons constaté que certains liens ne sont toujours pas conformes à nos Consignes relatives à la qualité.
Nous vous invitons plus particulièrement à vérifier les liens artificiels qui redirigeraient vers votre site dans le but de manipuler le PageRank. Ces liens factices peuvent être ajoutés, par exemple, dans le cadre de l’achat de liens visant à améliorer le PageRank ou de la participation à des systèmes d’échange de liens.
Nous vous invitons à apporter les modifications nécessaires au respect de nos consignes relatives à la qualité. Une fois vos modifications apportées, veuillez demander un nouvel examen de votre site en vue de sa réintégration dans les résultats de recherche Google.
Si vous trouvez des liens factices qui redirigent vers votre site et que vous êtes incapable de contrôler ou de supprimer, veuillez nous fournir des informations détaillées dans votre demande de réexamen.
Si vous avez d’autres questions relatives à la résolution de ce problème, veuillez consulter notre Forum d’aide pour les webmasters.
Cordialement,
L’équipe Google chargée de la qualité des recherches

 

Et si tout se passe bien, vous recevrez ce mail tant attendu :

 

Cher propriétaire ou webmaster du site http://www.***.com/,
Nous avons reçu un message du propriétaire du site http://www.***.com/ nous demandant de vérifier s’il respecte les consignes Google aux webmasters.
Une intervention manuelle sur votre site avait été effectuée, car il ne respectait pas nos Consignes relatives à la qualité. Suite à votre demande de réexamen, nous avons procédé au retrait de cette sanction. Notez qu’il peut s’écouler un certain temps avant que nos systèmes d’indexation et de classement ne reflètent ce changement.
Le classement de votre site dans les résultats de recherche peut toutefois être affecté par d’autres paramètres. Les ordinateurs de Google déterminent l’ordre dans lequel apparaissent les résultats de recherche à l’aide d’une série de formules appelées algorithmes. Chaque année, nous apportons des centaines de modifications à nos algorithmes de recherche. Par ailleurs, nous prenons en compte plus de 200 paramètres différents pour le classement des pages. La mise à jour de nos algorithmes ainsi que l’évolution du Web (votre site inclus) peuvent donc expliquer les fluctuations que vous avez constatées au niveau du classement de votre site. S’il n’apparaît pas en bonne position dans les résultats de recherche, nous vous invitons à consulter cet article pour diagnostiquer le problème.
Merci de nous aider à préserver la qualité de nos résultats de recherche.
Cordialement,
L’équipe Google chargée de la qualité des recherches

 

Bonne levés de sanctions à toutes les sociétés qui ont achetés du mauvais SEO…!

Posted in SEO | Leave a comment

Je veux être premier sur Google, comment faire ?

Si vous travaillez dans le SEO, vous connaissez bien cette demande des clients. Qui a envie de payer pour être 2ième sur Google ? Bof pas grand monde à priori. En analysant un peu les nouveaux comportements liés à la pratique du Web, la 1ère place est bien entendue la plus convoitée mais ce n’est pas une solution miracle non plus. Si votre site est, pardonnez-moi l’expression, un vieux site mal fait, moche, lent, sans conversions : être premier ne vous aidera point.

La vieille technique des backlinks, CASE PORTE-MONNAIE

Oh qu’il est bon mon vendeur de backlinks, grâce à lui je suis premier depuis 1 an sur Google. Ah mince Google a mis à jour son algorithme aujourd’hui et je me suis fais pincer avec une pénalité de -50 places, que faire ? Bein pleurer pardi ! Finalement c’était pas si pire de s’inscrire dans des annuaires, au moins on gagnait quelques places !

Google est un moteur de recherche comme qui dirait “social”, essayer-de transposer le marketing des produits qui buzzent dans la vie réel sur le web et vous serez en première page.

La première page quand même

Soyons honnête, seuls les recherches tordues nous emmènent à cliquer sur la deuxième page, c’est un peu le clic de la dernière chance. Après tout on fait confiance à Google pour trier de manière pertinente, et il nous donne 10 possibilités, on ne va pas non plus visionner 30 résultats non ? Ne visez donc pas forcément la pôle position mais les 10 premières places est un bon créneau.

la logique de référencement : eurequa

Imaginez, vous êtes boulanger, tout le monde parle de votre superbe boulangerie, des milliers de gens viennent voir votre boulangerie, et vous même vous ne communiquez que sur votre splendide boulangerie, vachement belle… par contre vous ne dîtes pas grand chose sur votre pain, et puis finalement personne n’en parle.

C’est ce que j’appelle le syndrome de la page d’accueil, et le référencement basé sur cette fichue page. Allez hop on met un lien vers la page d’accueil, on échange des liens toujours vers cette même page et on en fait des tartines, annuaires etc.

Vous aimez bien les pages d’accueil des sites ?? C’est probablement l’endroit le plus merdique de la plupart des sites, autant se tirer une balle dans le pied que de tout miser dessus. Je fais partis des nombreux internautes qui ferment le plus de pages d’accueil tant on n’y trouve rien rapidement.

Mais au fond qu’est ce que j’essaye de vous dire ?

Vous voulez vendre vos produit ? Référencez au mieux vos pages internes (débrouillez vous pour trouver des backlinks, il y a toujours des moyens normaux, faut juste comprendre le terme patience !). Et la prochaine fois que vous aurez la possibilité de glisser un lien interne, sautez dessus !

Conclusion : alors faut être premier ou pas ?

Il vaut mieux avoir ses pages produit dans le TOP des réponses qu’une page d’accueil dans le top. Bien sûr avoir les deux c’est encore mieux, mais optimiser son SEO pour ses pages internes c’est la première chose à aborder.

Faite preuve de bon sens, le SEO black hat/grey hat c’est de la m**** vous n’avez pas que ça à faire de générer du SPAM sur Internet. Pensez votre site comme un magasin physique et vous trouverez comment faire votre SEO intelligemment et sans risque de vous faire pincer. Pour celles et ceux qui sont pressés et qui ont un peu de cash, le SEO black hat marche encore mais l’étau se resserre…

Bon référencement !
PS : Ce blog n’est absolument pas optimisé pour le SEO, pas de meta description, nada,   après tout c’est le contenu qui prime non ?

Posted in Optimisations, SEO | 1 Comment

iOS l’enfer de la soumission d’application iPhone et iPad

Mon précédent post n’était pas très élogieux pour l’environnement de développement de chez Apple XCode… ça n’ira pas dans le bon sens encore une fois concernant le processus tant attendu d’envoi d’application.
Après avoir signé des contrats, cochés des dizaines de cases, rempli des formulaires, s’être loggés sur plusieurs sites se renvoyant la balle entre eux, générés des clés privé, provisioning files, certificats, téléchargé le dernier Application Loader…mon Dieu, il faut une journée complète pour envoyer une application chez Apple ? chez Google ça prend 20 secondes !

On se croirait en plein épisode de SouthPark le Human Centipad… Apple sait faire des excellentes machines, on ne pourra pas le contredire, mais niveau développement, du début en fin de chaîne, c’est très lourd, et un climat de non compréhension s’installe peu à peu à force de trouver de nouvelles pages à remplir, quand est-ce qu’on va bien pouvoir télécharger ce satané package.

Les adeptes crieront que c’est normal, que c’est bien ficelé, les autres sauront de quoi je parle une fois la tête dedans.

Finalement je m’interroge pas mal sur le produit lui même, iOS c’est plutôt génial non ? Mais une API compliquée, un environnement de dev pas top et un backoffice développeur cauchemardesque, est-ce vraiment sérieux pour “le plus simple des iPhone” ?

Posted in Uncategorized | Leave a comment

Android, iOS, WP : l’antiweb !

Hello tout le monde !

Ca fait quelques mois que je traîne dans le monde des iDevices, j’ai eu l’occasion de développer pour les 3 têtes de gondoles…petit retour d’experience

CASSONS UN PEU DU SUCRE !

iOS est la pire plateforme à programmer, ObjectiveC, XCode, malgré mes très bonnes bases et nombreuses années en C/C++, j’ai vraiment peiné à apprécier ObjectiveC, et pour cause, je trouve ces technos vieillottes. Et comble du problème, COCOA est tout simplement très mal documenté et bourré d’effets de bords (et non Apple n’est pas meilleur que les autres, de la poudre aux yeux… fallait s’en douter). Je déconseille fortement cette plateforme pour les novices, vous allez vous casser les dents !

Android est un peu difficile à prendre en main, du moins pour ceux qui ne connaissent pas Eclipse il faut se faire à l’environnement, et le souci c’est surtout les émulateurs qui rament quand même pas mal (je n’ai pas une machine de course mais je m’étais laissé pensé que mon PC allait plus vite que mon téléphone…erreur !). Le framework est assez complet, mais plutôt pauvre en documentation (comme pour iOS, on passe son temps à chercher sur les blogs!). Je trouve la gestion de rotation plutôt désastreuse et soulève de nombreux problèmes quand on commence à avoir des empilements de fenêtres.

WindowsPhone est le vilain petit canard tout trouvé. Microsoft c’est nul non ? Bein en fait non ! Faute de succès les développeurs se tournent vers iOS et Android mais WP est incontestablement le plus simple à programmer et à mettre en oeuvre. L’éditeur est époustouflant, Microsoft a vraiment une longueur d’avance sur les autres, on fait tout via le designer, on double clic on a un évènement tout préparé, quelques lignes de .net (avec la base gigantesque de doc sur le web+blogs), on appuie sur Démarrer et hop c’est plié ! Certaines fonctionnalités avancées ne sont pas implantées et peuvent mettre en péril une idée. Pour ceux qui connaissant .net, c’est presque trop facile : à essayer d’urgence !

LA réalité

Ces 3 mastodontes dominent le marché de l’application et tiennent les reines avec leur supers Frameworks. Bon, et le HTML dans tout ça ? Et bien c’est pas très au point….! Sencha a créé un impressionnant Framework HTML5 pour simuler des applications dans un navigateur Web. C’est bien joli mais il y a toujours ce petit truc qui fait qu’on n’y croit pas, un petit manque de réactivé crucial.
Les utilisateurs ne jurent que par des applications qui vont vite, qui se lancent rapidement et avec des animations.
Il va falloir encore attendre quelques années avant que le HTML devienne la coqueluche des programmeurs comme ça s’est passé dans le monde du logiciel.
Si vous vous lancez dans le marché du mobile, n’oubliez pas que tout le monde n’a pas le dernier Smartphone dernier cri et que bien souvent HTML rime avec lenteurs… Faites des tests avant de vous lancer !

Posted in Smartphone, Web | 1 Comment

Quelle couleur pour les liens HyperText ? Le Dilemme !

Hello !

Vous vous êtes probablement déjà posés la question un paquet de fois lors de l’élaboration d’un site, comment vais-je faire mes liens ? de quelle couleur ? souligné ? gras ? italique ?

Il n’y a pas de réponse juste ou fausse, mais du bon sens et quelques incontournables.

Le bon sens

A quoi sert un lien hypertext ? Et bien à être vu et cliqué. En partant de ce principe vous devez donc faire en sorte que les liens ressortent par rapport au texte sans liens, il faut donc impérativement appliquer un style sur les liens.

Vous ne pouvez pas uniquement mettre en gras les liens, car ils seraient confondus avec un simple texte mis en gras, et même en rajoutant un souligné, l’Internaute ne peut pas détecter qu’il s’agit d’un lien. Une seule solution : La couleur !

L’INCONTOURABLE

A l’aube du web un lien était bleu et souligné.
Si votre charte graphique est bien faite, vos liens de contenus doivent être tous de la même couleur (à ne pas confondre avec les liens des menus autour du contenus qui peuvent varier).

Sommes-nous condamnés à rester autour du bleu ?
Bien que la réponse soit une question de goût, on sait que la majorité des sites ont des liens bleus et donc… que les Internautes identifient les liens en bleu ! Suivant le contexte, on se dirigera vers la solution de facilité ! On trouve aussi de nombreux liens rouges dans les sites des professionnels : le rouge est une couleur plutôt agressive, prenez-en conscience avant de le sélectionner.

GRAS, SOULIGNé ?

Ne soyons pas avare, un lien important (dans le corps du texte) peut non honteusement être en gras et souligné ! On peut trouver ça peu esthétique, mais on ne peut absolument pas râter votre lien : c’est le but recherché (on ne fait pas des liens pour le plaisir !)

NE PAS OUBLIER

A l’aube du web encore, les liens précédemment visités changeaient en couleur violette. Tout les Internautes ont déjà été confrontés à ces liens. Ne croyez pas qu’il n’y ai que les imbéciles qui surfent, de nombreux chevronés du web apprécieront votre site si les liens visités changent de couleur. Par contre, ne tentez pas une autre couleur que le violet, c’est trop ancré dans les esprits !

MOCHE, VISIBLE OU UTILE, LE DILEMME

Les web-designers ont tendance à tout vouloir faire beau, que tout soit en harmonie. Mon seul dilemme actuellement après avoir visité de nombreux site, c’est de trouver ce que je recherche ou de consommer rapidement sur une information qui m’intéresse.
Le lien HyperText est la clé du Web, mettez-le en avant !

Posted in Ergonomie, Web | Leave a comment

Comment faire un bon lien HyperText ?

Hello !

Ca a l’air limpide pour tout le monde, mais on croise encore des contributeurs qui ne savent pas faire de bons liens et des néophytes qui ne demandent qu’à apprendre. Le lien HyperTexte est la base du Web, il faut faire l’effort de les faire correctement pour simplifier et améliorer l’expérience utilisateur.

Voilà l’exemple typique du mauvais lien :

“Rendez-vous sur notre page de contact http://www.site.fr/contact

Erreurs accumulées :

  1. Le texte http://www.site.fr/contact n’a aucun poids dans les moteurs de recherches
  2. Le lecteur doit lire le texte qui précède pour voir ou ça va le mener, impossible de faire une lecture rapide d’un texte. On rappellera aux contributeurs que la majorité des articles sont lus en diagonales et que la concision est d’ordre dans le rédactionnel web !
  3. Plus l’URL est longue, moins le texte est compréhensible et moins on a envie de cliquer (manque de confiance dans un lien “bizarre”)

Comment faire un bon lien :

“Rendez-vous sur notre page de contact

  1. La page de destination est associé à “page de contact” dans les moteurs de recherche
  2. Le texte choisi pour le lien est concis et utile (cliquez ici n’est pas un texte utile!). Ne soyez pas radin ni trop gourmand au risque de faire perdre le sens simple de la page de destination :
    “Rendez-vous sur notre page de contact”  (difficile à voir en lecture rapide)
    Rendez-vous sur notre page de contact” (texte inutilement associé à la page et long à lire)
  3. Pas de souci avec des URL longues puisque l’Internaute ne les voit pas.
La prochaine fois que vous publierez quelque chose, vérifiez bien vos liens !
Posted in Ergonomie, SEO, Web | Tagged | Leave a comment

Hello world!

Salut tout le monde,

Bienvenue dans mon blog pour les techos web/dev ! Ca faisait un moment que j’envisageais de sauter le pas, c’est chose faite ! Vous trouverez ici des astuces techniques pour tous les niveaux suivant mes problèmes journaliers ou envies de partages.

Je vous souhaite une agréable lecture, et à bientôt via les commentaires !
Poppyto

Posted in Uncategorized | Leave a comment