Inside ConveyThis Tech: costruire il nostro crawler del sito web

Rendi multilingue il tuo sito web in 5 minuti
Trasmetti questa demo
Trasmetti questa demo
My Khanh Pham

My Khanh Pham

Migliorare l'esperienza dell'utente: ConveyThis introduce la gestione degli URL

Numerosi utenti di ConveyThis preferiscono che tutti gli URL del loro sito web vengano tradotti correttamente, il che può essere un compito impegnativo, soprattutto per i siti estesi tradotti in diverse lingue.

Il feedback degli utenti ha dimostrato che alcuni clienti hanno trovato piuttosto sconcertante l'inizio dei loro progetti iniziali di traduzione di siti web. Spesso si sono chiesti perché potevano visualizzare solo l'URL della home page nell'elenco delle traduzioni e come creare traduzioni dei loro contenuti.

Ciò indicava una potenziale area di miglioramento. Abbiamo visto un'opportunità per facilitare un processo di onboarding più agevole e una gestione del progetto più efficiente. Tuttavia, in quel momento mancava una soluzione concreta.

Il risultato, come avrai intuito, è stata l'introduzione della funzione di gestione degli URL. Consente agli utenti di scansionare gli URL del proprio sito Web e generare i contenuti tradotti tramite ConveyThis Dashboard, in modo rapido ed efficace.

Di recente, questa funzione è stata spostata dall'elenco delle traduzioni a una nuova pagina di gestione delle traduzioni basata su URL, più adattabile e potente. Ora, crediamo sia giunto il momento di rivelare la storia dietro l'inizio di questa funzione.

921

Abbracciando Golang: il viaggio di ConveyThis verso servizi di traduzione avanzati

922

L'inizio del blocco del 2020 dovuto alla pandemia mi ha offerto la possibilità di imparare finalmente il linguaggio di programmazione Golang che era stato messo da parte per mancanza di tempo.

Sviluppato da Google, Golang o Go ha guadagnato popolarità negli ultimi anni. Un linguaggio di programmazione compilato staticamente, Golang è stato progettato per consentire agli sviluppatori di creare codice efficiente, affidabile e simultaneo. La sua semplicità supporta la scrittura e la manutenzione di programmi estesi e complicati senza sacrificare la velocità.

Riflettendo su un potenziale progetto parallelo per familiarizzare con Golang, mi è venuto in mente un web crawler. Ha soddisfatto i criteri menzionati e potenzialmente ha offerto una soluzione per gli utenti di ConveyThis. Un web crawler o "bot" è un programma che visita un sito Web per estrarre dati.

Per ConveyThis, il nostro obiettivo era sviluppare uno strumento che consentisse agli utenti di scansionare il proprio sito e recuperare tutti gli URL. Inoltre, volevamo semplificare il processo di generazione delle traduzioni. Attualmente, gli utenti devono visitare il loro sito Web in una lingua tradotta per generarli, un'attività che diventa scoraggiante per siti di grandi dimensioni e multilingue.

Sebbene il prototipo iniziale fosse semplice (un programma che accetta un URL come input e avvia la scansione del sito), è stato rapido ed efficace. Alex, CTO di ConveyThis, ha visto il potenziale di questa soluzione e ha dato il via libera alla ricerca e allo sviluppo per perfezionare il concetto e contemplare come ospitare il futuro servizio di produzione.

Navigare nella tendenza serverless con Go e ConveyThis

Nel processo di finalizzazione del bot web crawler, ci siamo trovati alle prese con le sfumature di diversi CMS e integrazioni. Quindi è sorta la domanda: come possiamo presentare al meglio ai nostri utenti il bot?

Inizialmente, abbiamo considerato l'approccio collaudato dell'utilizzo di AWS con un'interfaccia del server Web. Tuttavia, sono emersi diversi potenziali problemi. Avevamo incertezza sul carico del server, sull'utilizzo simultaneo da parte di più utenti e sulla nostra mancanza di esperienza con l'hosting del programma Go.

Questo ci ha portato a considerare uno scenario di hosting senza server. Ciò offriva vantaggi come la gestione dell'infrastruttura da parte del provider e la scalabilità intrinseca, rendendola una soluzione ideale per ConveyThis. Significava che non dovevamo preoccuparci della capacità del server poiché ogni richiesta avrebbe operato nel proprio contenitore isolato.

Tuttavia, nel 2020, l'elaborazione senza server prevedeva un limite di 5 minuti. Ciò si è rivelato un problema per il nostro bot che potrebbe essere potenzialmente richiesto per eseguire la scansione di grandi siti di e-commerce con numerose pagine. Fortunatamente, all'inizio del 2020, AWS ha esteso il limite a 15 minuti, sebbene l'abilitazione di questa funzione si sia rivelata un'attività impegnativa. Alla fine, abbiamo trovato la soluzione attivando il codice serverless con SQS, il servizio di accodamento dei messaggi di AWS.

923

Il viaggio verso comunicazioni bot interattive in tempo reale con ConveyThis

924

Quando abbiamo risolto il dilemma dell'hosting, abbiamo dovuto superare un altro ostacolo. Ora avevamo un bot funzionale, ospitato in modo efficiente e scalabile. Il compito rimanente era trasmettere i dati generati dal bot ai nostri utenti.

Puntando alla massima interattività, ho deciso di comunicare in tempo reale tra il bot e la dashboard di ConveyThis. Sebbene il tempo reale non sia un requisito per tale funzionalità, volevo che i nostri utenti ricevessero un feedback immediato non appena il bot ha iniziato a funzionare.

Per raggiungere questo obiettivo, abbiamo sviluppato un semplice server websocket Node.js, ospitato su un'istanza AWS EC2. Ciò ha richiesto alcune modifiche al bot per la comunicazione con il server websocket e l'automazione della distribuzione. Dopo test approfonditi, eravamo pronti per passare alla produzione.

Quello che era iniziato come un progetto secondario alla fine ha trovato il suo posto nella dashboard. Attraverso le sfide, ho acquisito conoscenze in Go e affinato le mie capacità nell'ambiente AWS. Ho trovato Go particolarmente vantaggioso per le attività di rete, la programmazione cooperativa e l'elaborazione senza server, dato il suo ridotto ingombro di memoria.

Abbiamo piani per il futuro poiché il bot offre nuove opportunità. Miriamo a riscrivere il nostro strumento di conteggio delle parole per una migliore efficienza e potenzialmente utilizzarlo per il riscaldamento della cache. Spero che questa sbirciatina nel mondo tecnologico di ConveyThis ti sia piaciuta tanto quanto mi è piaciuto condividerla.

Pronto per iniziare?

La traduzione, molto più che conoscere le lingue, è un processo complesso.

Seguendo i nostri suggerimenti e utilizzando ConveyThis , le tue pagine tradotte risuoneranno con il tuo pubblico, sentendosi native della lingua di destinazione.

Sebbene richieda uno sforzo, il risultato è gratificante. Se stai traducendo un sito web, ConveyThis può farti risparmiare ore con la traduzione automatica automatica.

Prova ConveyThis gratis per 7 giorni!

gradiente 2