¿Cuál tiene mejor rendimiento, el hielo o el ahorro?
Dos fotogramas:
1. Idioma cruzado
Ambos marcos hacen esto muy bien y los principales lenguajes de desarrollo C, Java, Python, Ruby, etc. pueden admitirlo.
2. Generación de código
Ambos marcos tienen su propio IDL (Interface Define Lanaguage), que se denomina archivo de segmento en ICE y archivo Thrift. Se utiliza para describir la interfaz de servicio que se implementará. luego, a través de herramientas, el programa genera automáticamente un código esqueleto, como un código auxiliar para el cliente y el servidor. El código generado por Thrift está todo en un solo archivo, mientras que ICE es mucho más detallado y puede distinguir fácilmente qué parte es para el lado del servidor y qué parte. es para el lado del cliente.
3. Codificación y decodificación de transmisión de red
Durante el proceso de transmisión de objetos, el extremo emisor necesita codificar el objeto en un flujo de bytes al enviarlo, y el extremo receptor decodifica estos flujos de bytes en el objeto correspondiente después de recibirlo. Desde la perspectiva de la implementación de cada marco, la codificación de ICE es mucho más compacta y económica que Thrift. Cuando Thrift codifica un objeto, incluye el tipo y el número del campo del objeto (a cada campo de objeto definido por Thrift se le asignará un número). ) y cada uno Los tipos de parámetros y números de cada función están codificados, mientras que ICE es mucho más económico y solo codifica el valor del Campo.
4. El marco en sí
Todo el código del marco Thrift es muy conciso. En comparación con ICE, ICE es mucho más completo y maduro que Thrift. Esto se refleja principalmente en la alta disponibilidad y escalabilidad de los servicios.
Los servicios proporcionados por ICE se pueden distribuir, con un marco completo y un entorno operativo maduro para ejecutar servicios. Estos entornos proporcionan muchos buenos mecanismos para garantizar la escalabilidad y alta disponibilidad de los servicios, como
.El mecanismo de registro, a través de Registro, permite al cliente agregar una capa adicional de mecanismo de direccionamiento al conectarse al servicio. Al igual que DNS, puede cambiar fácilmente un servicio a otras máquinas y realizar la rotación de IP con consultas similares a DNS, ICE. puede equilibrar la carga de los servicios a través de Registrarse
Esto también se debe a que los entornos proporcionados por ICE pueden hacer que los servicios escritos por ICE sean fáciles de implementar y publicar.