L'éditeur PHP Xinyi vous présente l'architecture du serveur Spring utilisant SSL et WebSockets. Dans l'environnement Internet actuel, la sécurité et le temps réel sont des considérations importantes pour les applications serveur. L'utilisation de SSL (Secure Sockets Layer) peut garantir la sécurité de la transmission des données, tandis que la technologie WebSockets offre des capacités de communication bidirectionnelle en temps réel. Le framework Spring est un framework de développement Java puissant et flexible qui fournit un ensemble complet de solutions pour créer une architecture de serveur évolutive. En combinant SSL et WebSockets, l'architecture de serveur Spring peut fournir des services de communication en temps réel sécurisés et fiables pour répondre aux besoins des applications modernes.
J'ai écrit un backend de serveur pour une application que j'ai créée. L'application se connecte au backend via le protocole https et ouvre également un websocket à l'aide du protocole wss. L'application effectuera des requêtes via http et recevra des notifications push via websocket. Une chose que je voudrais ajouter est que mon serveur est derrière haproxy pour permettre une mise à l'échelle horizontale. J'ai acheté un certificat fourni par un serveur Web. Je n'utilise pas de certificat auto-signé.
Les Websockets continuent de se déconnecter, après quelques expérimentations, il semble que la désactivation de SSL sur le serveur Spring Boot résout ce problème. D'après ce que j'ai compris, il est fortement recommandé aux applications d'utiliser SSL et https pour se connecter au backend, mais cette approche ne semble pas fonctionner avec les websockets. Quelle est la meilleure façon de résoudre ce problème ? Idéalement, j'aimerais que l'application fasse des requêtes en utilisant https et établisse une connexion Websocket sans utiliser SSL, à moins qu'il n'existe une sorte de solution au problème de déconnexion. Est-ce que le printemps va bien ?
Si je ne parviens pas à résoudre le problème de déconnexion du websocket, ma prochaine idée est de créer un autre serveur Spring Boot dédié à la gestion des websockets, mais il serait préférable que je puisse utiliser un seul serveur pour gérer les requêtes https et les websockets. Quelle est la meilleure architecture pour résoudre ce problème ?
J'ai enfin trouvé la solution. Il exécute un autre connecteur Tomcat sur le port 8080 et utilise http(ws) au lieu de https(wss) lors de la connexion à websocket et https lors des requêtes du serveur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!