Dentro de la tecnología ConveyThis: creación de nuestro rastreador de sitios web

Eche un vistazo detrás de escena al desarrollo del rastreador de sitios web ConveyThis'', un componente tecnológico fundamental para la gestión eficiente de sitios web.
Sin datos de tarjeta Sin compromiso

· Alex B · Blog

Mejorar la experiencia del usuario: ConveyThis Introduce la gestión de URL

Business 1

Numerosos usuarios de ConveyThis prefieren tener todas las URL de sus sitios web traducidas correctamente, lo que puede ser una tarea exigente, especialmente para sitios extensos traducidos a varios idiomas.

Los comentarios de los usuarios han demostrado que algunos clientes encontraron el comienzo de su inicio inicial traducción del sitio web proyectos un tanto desconcertantes. A menudo se preguntaban por qué sólo podían ver la URL de la página de inicio en la lista de traducciones y cómo crear traducciones de su contenido.

Esto indicó un área potencial de mejora. Vimos una oportunidad para facilitar un proceso de incorporación más fluido y una gestión de proyectos más eficiente. Sin embargo, en ese momento nos faltaba una solución concreta.

El resultado, como habrás supuesto, fue la introducción de la función de gestión de URL. Permite a los usuarios escanear las URL de su sitio web y generar su contenido traducido a través del Panel ConveyThis, de forma rápida y eficaz.

Recientemente, esta función se trasladó de la Lista de traducción a una página de gestión de traducción basada en URL nueva, más adaptable y potente. Ahora creemos que es hora de revelar la historia detrás del inicio de esta función.

Adoptando Golang: ConveyThis’ Viaje hacia servicios de traducción mejorados

Office

El inicio del bloqueo de 2020 debido a la pandemia me ofreció la oportunidad de aprender finalmente el lenguaje de programación Golang que había quedado marginado por limitaciones de tiempo.

Desarrollado por Google, Golang o Go ha ido ganando popularidad en los últimos años. Golang, un lenguaje de programación compilado estáticamente, fue diseñado para permitir a los desarrolladores crear código eficiente, confiable y concurrente. Su simplicidad favorece la escritura y el mantenimiento de programas extensos y complicados sin sacrificar la velocidad.

Al pensar en un posible proyecto paralelo para familiarizarme con Golang, me vino a la mente un rastreador web. Cumplió con los criterios mencionados y potencialmente ofreció una solución para los usuarios de ConveyThis. Un rastreador web o ‘bot’ es un programa que visita un sitio web para extraer datos.

Para ConveyThis, nuestro objetivo era desarrollar una herramienta para que los usuarios escanearan su sitio y recuperaran todas las URL. Además, queríamos agilizar el proceso de generación de traducciones. Actualmente, los usuarios deben visitar su sitio web en un idioma traducido para generarlos, una tarea que resulta abrumadora para sitios grandes y multilingües.

Aunque el prototipo inicial era sencillo – un programa que toma una URL como entrada y comienza a rastrear el sitio – era rápido y efectivo. Alex, CTO ConveyThis’, vio el potencial de esta solución y dio luz verde a la investigación y el desarrollo para refinar el concepto y contemplar cómo albergar el futuro servicio de producción.

Easy install

En el proceso de finalizar el bot de rastreo web, nos encontramos lidiando con los matices de diferentes CMS e integraciones. Surgió entonces la pregunta – ¿cómo podemos presentar mejor el bot a nuestros usuarios?

Inicialmente, consideramos el enfoque probado y comprobado de utilizar AWS con una interfaz de servidor web. Sin embargo, surgieron varios problemas potenciales. Teníamos incertidumbre sobre la carga del servidor, el uso simultáneo por parte de múltiples usuarios y nuestra falta de experiencia con el alojamiento de programas Go.

Esto nos llevó a considerar un escenario de alojamiento sin servidor. Esto ofrecía beneficios como la gestión de la infraestructura por parte del proveedor y la escalabilidad inherente, lo que lo convertía en una solución ideal para ConveyThis. Esto significaba que no teníamos que preocuparnos por la capacidad del servidor, ya que cada solicitud operaría en su propio contenedor aislado.

Sin embargo, en 2020, la informática sin servidor venía con un límite de 5 minutos. Esto resultó ser un problema para nuestro bot, que potencialmente podría verse obligado a rastrear grandes sitios de comercio electrónico con numerosas páginas. Afortunadamente, a principios de 2020, AWS amplió el límite a 15 minutos, aunque habilitar esta función resultó ser una tarea desafiante. Finalmente, encontramos la solución activando el código sin servidor con SQS –, el servicio de cola de mensajes de AWS.

El viaje hacia las comunicaciones interactivas de bots en tiempo real con ConveyThis

Translation service

A medida que resolvimos el dilema de ser anfitriones, tuvimos otro obstáculo que superar. Ahora teníamos un bot funcional, alojado de forma eficiente y escalable. La tarea restante era transmitir los datos generados por el bot a nuestros usuarios.

Con el objetivo de lograr la máxima interactividad, me decidí por la comunicación en tiempo real entre el bot y el panel ConveyThis. Si bien el tiempo real no es un requisito para dicha función, quería que nuestros usuarios recibieran comentarios inmediatos tan pronto como el bot comenzara a funcionar.

Para lograr esto, desarrollamos un servidor websocket Node.js simple, alojado en una instancia AWS EC2. Esto requirió algunos ajustes al bot para comunicarse con el servidor websocket y automatizar la implementación. Después de pruebas exhaustivas, estábamos listos para la transición a la producción.

Lo que comenzó como un proyecto paralelo finalmente encontró su lugar en el panel de control. A través de los desafíos, adquirí conocimientos en Go y perfeccioné mis habilidades en el entorno de AWS. Considero que Go es particularmente beneficioso para tareas de redes, programación cooperativa y computación sin servidor, dado su bajo consumo de memoria.

Tenemos planes futuros ya que el bot trae nuevas oportunidades. Nuestro objetivo es reescribir nuestra herramienta de recuento de palabras para lograr una mayor eficiencia y potencialmente usarla para calentar la caché. Espero que hayas disfrutado de este adelanto del mundo tecnológico de ConveyThis’ tanto como yo disfruté compartiéndolo.

Relacionado: Cómo agregar Google Translate a su sitio web de WordPress

Compartir:
G2 High Performer Spring 2023
G2 Easiest Setup Fall 2024
G2 Best Support Spring 2025