Dans quel cas le protocole AJP est-il utilisé?

OK, j'ai lu un petit article sur le wiki qui expliquait un peu AJP. Fondamentalement, ce protocole est utilisé pour la communication entre Apache et le serveur D'Application. Mais pourquoi peut-on besoin d'elle en premier lieu? Pourquoi ne pas utiliser simplement http?

32
ajp
demandé sur user1745356 2014-02-13 18:57:32

3 réponses

plus spécifiquement, et pas vraiment couvert dans cet article ehow, il y a quelques frais généraux non-triviaux pour analyser les en-têtes http sur les requêtes et les créer sur les réponses. Si vous faites front à votre serveur d'application avec un serveur proxy web, AJP vous permet de sauter cette parsing supplémentaire et juste passer des représentations binaires efficaces des en-têtes entre le serveur proxy et le serveur d'application. Il y a d'autres avantages avec des choses comme les piscines de connexion simples et l'intégration étroite si vous utilisez apache / mod_jk à tomcat.

Client <- http/S-> Proxy < - http/s - > App

et

Client <- http/S-> Proxy < - AJP - > App

31
répondu Ian McGowan 2014-12-09 05:52:56

AJP (Apache Jserv Protocol) est fondamentalement un protocole binaire cela permet d'inverser les requêtes de mandataire d'un serveur web FE vers un serveur D'Application BE, propageant efficacement toutes les informations nécessaires pour faire le flux Req-Res continue avec succès. Souvent, AJP est utilisé pour charger l'équilibre en utilisant des politiques de session collantes: grâce aux données d'en-tête transférées, le serveur web de FE peut charger l'équilibre sur les homologues de BE en utilisant des modules spécifiques (comme, mod_jk).

AJP est utilisé principalement parce que:

  1. c'est plus performant que n'importe quel HTTP échange,
  2. il est intégré avec des modules de proxy inversés largement utilisés (i.e. mod_jk, mod_proxy),
  3. L'implémentation de Tomcat fournit un riche ensemble D'API qui est le protocole transversal: les données HTTP(s) sont propagées de manière transparente, et peuvent être récupérées avec des appels API simples (canonique getXYX (), très efficace et immédiate), de sorte que c'est comme travailler avec HTTP à un une vitesse plus élevée.

Certainement, je dirais que c'est une solution éprouvée avec presque 20 ans de maturité sur les épaules: elle est utilisée avec succès dans les environnements de production.

14
répondu Paolo Maresca 2015-03-18 21:49:28

Semble que la réponse que je cherchais performance

http://www.ehow.com/facts_7181755_ajp-protocol_.html

6
répondu user1745356 2014-02-16 13:21:21