Inside ConveyThis Tech: Bou ons webwerf-kruiper

Maak jou webwerf meertalig in 5 minute
Dra hierdie demo oor
Dra hierdie demo oor
My Khanh Pham

My Khanh Pham

Die verbetering van die gebruikerservaring: ConveyThis stel URL-bestuur bekend

Talle ConveyThis klante verkies dat al hul webwerf se URL's behoorlik vertaal word, wat 'n veeleisende taak kan wees, veral vir uitgebreide webwerwe wat in verskeie tale vertaal word.

Gebruikerterugvoer het getoon dat sommige kliënte die aanvang van hul aanvanklike webwerfvertalingsprojekte ietwat verwarrend gevind het. Hulle het dikwels bevraagteken hoekom hulle net die tuisblad-URL in die vertaallys kon sien, en hoe om vertalings van hul inhoud te skep.

Dit het 'n potensiële gebied vir verbetering aangedui. Ons het 'n geleentheid gesien om 'n gladder aanboordproses en doeltreffender projekbestuur te fasiliteer. Ons het egter op daardie oomblik nie 'n konkrete oplossing gehad nie.

Die resultaat, soos u dalk kon vermoed, was die bekendstelling van die URL-bestuurfunksie. Dit stel gebruikers in staat om hul webwerf se URL's te skandeer en hul vertaalde inhoud via die ConveyThis Dashboard vinnig en effektief te genereer.

Onlangs is hierdie kenmerk verskuif van die vertaallys na 'n nuwe, meer aanpasbare en kragtige URL-gebaseerde vertalingbestuurbladsy. Nou glo ons dit is tyd om die storie agter die ontstaan van hierdie funksie te openbaar.

921

Omhels Golang: Dra hierdie reis oor na verbeterde vertaaldienste

922

Die aanvang van die 2020-sluiting weens die pandemie het my die kans gebied om uiteindelik die programmeertaal Golang te leer wat weens tydsbeperkings opsy gesit is.

Ontwikkel deur Google, Golang of Go het die afgelope paar jaar gewild geword. Golang, 'n staties saamgestelde programmeertaal, is ontwerp om ontwikkelaars in staat te stel om doeltreffende, betroubare en gelyktydige kode te skep. Die eenvoud daarvan ondersteun die skryf en instandhouding van uitgebreide en ingewikkelde programme sonder om spoed in te boet.

Deur 'n moontlike byprojek te oorweeg om myself met Golang vertroud te maak, het 'n webkruiper by my opgekom. Dit het aan die genoemde kriteria voldoen en het moontlik 'n oplossing vir ConveyThis-gebruikers gebied. 'n Webkruiper of 'bot' is 'n program wat 'n webwerf besoek om data te onttrek.

Vir ConveyThis was ons doel om 'n instrument te ontwikkel vir gebruikers om hul werf te skandeer en al die URL's op te haal. Daarbenewens wou ons die proses om vertalings te genereer stroomlyn. Tans moet gebruikers hul webwerf in 'n vertaalde taal besoek om dit te genereer, 'n taak wat uitdagend word vir groot, veeltalige werwe.

Alhoewel die aanvanklike prototipe eenvoudig was - 'n program wat 'n URL as invoer neem en die werf begin deurkruip - was dit vinnig en effektief. Alex, ConveyThis se CTO, het die potensiaal van hierdie oplossing raakgesien en die trekpas gegee vir navorsing en ontwikkeling om die konsep te verfyn en te besin hoe om die toekomstige produksiediens te huisves.

Navigeer deur die bedienerlose neiging met Go and ConveyThis

In die proses om die webkruiper-bot te finaliseer, het ons gevind dat ons met die nuanses van verskillende CMS en integrasies worstel. Die vraag het toe ontstaan - hoe kan ons die bot aan ons gebruikers die beste aanbied?

Aanvanklik het ons die beproefde benadering oorweeg om AWS met 'n webbediener-koppelvlak te gebruik. Verskeie potensiële probleme het egter na vore gekom. Ons het onsekerheid gehad oor die bedienerlading, die gelyktydige gebruik deur veelvuldige gebruikers, en ons gebrek aan ervaring met Go-programhosting.

Dit het daartoe gelei dat ons 'n bedienerlose hosting-scenario oorweeg het. Dit bied voordele soos infrastruktuurbestuur deur die verskaffer en inherente skaalbaarheid, wat dit 'n ideale oplossing vir ConveyThis maak. Dit het beteken dat ons nie bekommerd hoef te wees oor bedienerkapasiteit nie, aangesien elke versoek in sy eie geïsoleerde houer sou werk.

In 2020 het bedienerlose rekenaars egter 'n limiet van 5 minute gehad. Dit was 'n probleem vir ons bot wat moontlik vereis kan word om groot e-handelwebwerwe met talle bladsye te deurkruip. Gelukkig, vroeg in 2020, het AWS die limiet tot 15 minute verleng, hoewel dit 'n uitdagende taak was om hierdie kenmerk te aktiveer. Uiteindelik het ons die oplossing gevind deur die bedienerlose kode te aktiveer met SQS – die AWS-boodskapwagdiens.

923

Die reis na interaktiewe intydse botkommunikasie met ConveyThis

924

Terwyl ons die gasheerdilemma opgelos het, het ons nog 'n hindernis gehad om te oorkom. Ons het nou 'n funksionele bot gehad wat op 'n doeltreffende, skaalbare manier aangebied is. Die oorblywende taak was om die bot-gegenereerde data aan ons gebruikers oor te dra.

Met die oog op maksimum interaktiwiteit, het ek besluit op intydse kommunikasie tussen die bot en die ConveyThis-dashboard. Alhoewel intyds nie 'n vereiste vir so 'n kenmerk is nie, wou ek hê ons gebruikers moet onmiddellik terugvoer kry sodra die bot begin werk het.

Om dit te bereik, het ons 'n eenvoudige Node.js-websocket-bediener ontwikkel, gehuisves op 'n AWS EC2-instansie. Dit het 'n paar aanpassings aan die bot vereis vir kommunikasie met die websocket-bediener en die outomatisering van ontplooiing. Na deeglike toetsing was ons gereed om na produksie oor te gaan.

Wat as 'n syprojek begin het, het uiteindelik sy plek in die paneelbord gekry. Deur die uitdagings het ek kennis in Go opgedoen en my vaardighede in die AWS-omgewing geslyp. Ek het Go veral voordelig gevind vir netwerktake, samewerkende programmering en bedienerlose rekenaars, gegewe sy lae geheue-voetspoor.

Ons het toekomsplanne aangesien die bot nuwe geleenthede bring. Ons poog om ons woordtelling-instrument te herskryf vir beter doeltreffendheid, en dit moontlik vir kasverhitting te gebruik. Ek hoop jy het hierdie voorsmakie in ConveyThis se tegnologiewêreld net so geniet as wat ek dit geniet het om dit te deel.

Klaar om te begin?

Vertaling, veel meer as om net tale te ken, is 'n komplekse proses.

Deur ons wenke te volg en ConveyThis te gebruik, sal jou vertaalde bladsye aanklank vind by jou gehoor, en voel inheems aan die teikentaal.

Alhoewel dit moeite verg, is die resultaat lonend. As jy 'n webwerf vertaal, kan ConveyThis jou ure bespaar met outomatiese masjienvertaling.

Probeer ConveyThis gratis vir 7 dae!

gradiënt 2