La réponse d'Olin touche à peu près toutes les raisons pour lesquelles j'ai utilisé un serveur Web intégré. Je travaille au développement de commandes industrielles et presque tous les produits que nous fabriquons ont un serveur Web intégré.
La plupart des clients auront déjà tout leur équipement sur leur réseau pour diverses raisons. Il est donc hautement souhaitable de pouvoir le configurer et / ou le contrôler via un navigateur Web au lieu d'installer des dizaines de programmes personnalisés.
Même s'ils utilisent un protocole industriel comme PROFINET , la couche physique est la même que le reste de leur Ethernet et ils n'ont alors besoin que d'un seul logiciel (un superviseur PROFINET IO) pour contrôler des dizaines de machines. D'après mon expérience, cette configuration est assez standard dans de nombreuses industries.
En ce qui concerne les ressources (puissance de traitement, RAM, ROM), une fois réduit à l'essentiel de l'ours, un matériel incroyablement minimal est nécessaire pour servir avec succès une page Web. Je pense que webACE détient le record du plus petit serveur web. C'est dommage que vous ne puissiez plus visiter la page qu'il a hébergée.
Les logiciels
Quelques statistiques de code pour le logiciel d'origine. J'avais initialement oublié d'inclure le "eeprom de données" de 64 octets sur puce dans les totaux, ce qui a conduit au chiffre de 1010 octets cité sur TBTF.
Startup 36 bytes
Serial 179
SLIP 91
IP 144
ICMP 47
TCP 188
Checksum 132
Application 257
Total 1074 bytes
Comprising:
454 instructions
912 instruction bytes
162 data bytes
2.01 bytes/instruction average
Quant aux autres compétences nécessaires, une compréhension approfondie du réseautage n'est pas vraiment nécessaire. Je n'ai jamais écrit de pile pour aucun protocole car il existe une pléthore de bibliothèques disponibles pour être liées et utilisées pour toutes les architectures imaginables. La connaissance d'un HTML brut de base est utile pour concevoir et écrire la page réelle.
En plus de cela, être capable de lire et de comprendre un journal de Wireshark ou Fiddler (analyseurs de réseau) sera probablement la compétence la plus utile car cela aidera grandement à déboguer tous les problèmes que vous rencontrez. Une petite lecture sur la structure des paquets de n'importe quel protocole que vous utilisez (TCP, IP, HTTP, UDP, PROFINET, etc.) vous dira où chercher dans le paquet les informations dont vous avez besoin. Vous pouvez même lancer l'un de ces analyseurs en ce moment et regarder le trafic entrant et sortant sur votre ordinateur pour en avoir une idée.