Inside ConveyThis Tech: Изграждане на нашия робот за обхождане на уебсайтове

Направете уебсайта си многоезичен за 5 минути
Предайте тази демонстрация
Предайте тази демонстрация
My Khanh Pham

My Khanh Pham

Подобряване на потребителското изживяване: ConveyThis въвежда URL управление

Много потребители на ConveyThis предпочитат правилно преведени URL адреси на уебсайтовете им, което може да бъде трудна задача, особено за обширни сайтове, преведени на няколко езика.

Отзивите на потребителите показват, че някои клиенти намират началото на първоначалните си проекти за превод на уебсайтове за малко объркващо. Те често се питаха защо могат да видят само URL адреса на началната страница в списъка с преводи и как да създадат преводи на тяхното съдържание.

Това показва потенциална област за подобрение. Видяхме възможност да улесним по-гладък процес на включване и по-ефективно управление на проекти. В този момент обаче липсваше конкретно решение.

Резултатът, както може би сте предположили, беше въвеждането на функцията за управление на URL адреси. Той позволява на потребителите да сканират URL адресите на своя уебсайт и да генерират своето преведено съдържание чрез таблото за управление на ConveyThis , бързо и ефективно.

Наскоро тази функция беше преместена от списъка с преводи към нова, по-адаптивна и мощна страница за управление на преводи, базирана на URL. Сега вярваме, че е време да разкрием историята зад създаването на тази функция.

921

Възприемане на Golang: ConveyThis' Пътуване към подобрени услуги за превод

922

Началото на блокирането през 2020 г. поради пандемията ми предложи шанс най-накрая да науча езика за програмиране Golang, който беше изоставен поради ограничения във времето.

Разработен от Google, Golang или Go набира популярност през последните години. Статично компилиран език за програмиране, Golang е проектиран да позволи на разработчиците да създават ефективен, надежден и паралелен код. Неговата простота поддържа писането и поддържането на обширни и сложни програми, без да се жертва скоростта.

Докато обмислях потенциален страничен проект, за да се запозная с Golang, ми хрумна уеб робот. Той отговаря на споменатите критерии и потенциално предлага решение за потребителите на ConveyThis. Уеб робот или „бот“ е програма, която посещава уебсайт, за да извлече данни.

За ConveyThis нашата цел беше да разработим инструмент, чрез който потребителите да сканират сайта си и да извличат всички URL адреси. Освен това искахме да рационализираме процеса на генериране на преводи. Понастоящем потребителите трябва да посещават уебсайта си на преведен език, за да ги генерират, задача, която става плашеща за големи, многоезични сайтове.

Въпреки че първоначалният прототип беше ясен – програма, която приема URL като вход и започва да обхожда сайта – беше бърз и ефективен. Алекс, технически директор на ConveyThis, видя потенциала на това решение и даде зелена светлина за научноизследователска и развойна дейност, за да се усъвършенства концепцията и да се обмисли как да бъде домакин на бъдещата производствена услуга.

Навигиране в тенденцията без сървър с Go and ConveyThis

В процеса на финализиране на бота за обхождане на мрежата се оказахме борещи се с нюансите на различни CMS и интеграции. Тогава възникна въпросът – как можем най-добре да представим нашите потребители с бота?

Първоначално разгледахме изпитания подход за използване на AWS с интерфейс на уеб сървър. Въпреки това се появиха няколко потенциални проблема. Имахме несигурност относно натоварването на сървъра, едновременното използване от множество потребители и липсата ни на опит с хостинг на програмата Go.

Това ни накара да разгледаме сценарий за хостинг без сървър. Това предлага предимства като управление на инфраструктурата от доставчика и присъща мащабируемост, което го прави идеално решение за ConveyThis. Това означаваше, че не трябва да се тревожим за капацитета на сървъра, тъй като всяка заявка ще работи в свой собствен изолиран контейнер.

Обаче още през 2020 г. изчисленията без сървър идват с 5-минутно ограничение. Това се оказа проблем за нашия бот, който потенциално може да се наложи да обхожда големи сайтове за електронна търговия с множество страници. За щастие, в началото на 2020 г. AWS разшири ограничението до 15 минути, въпреки че активирането на тази функция се оказа трудна задача. В крайна сметка намерихме решението, като задействахме кода без сървър със SQS – услугата за опашка за съобщения на AWS.

923

Пътуването към интерактивни бот комуникации в реално време с ConveyThis

924

Докато разрешавахме дилемата с хостинга, трябваше да преодолеем още едно препятствие. Вече имахме функционален бот, хостван по ефективен, мащабируем начин. Останалата задача беше да предадем генерираните от бот данни на нашите потребители.

Стремейки се към максимална интерактивност, реших комуникацията в реално време между бота и таблото за управление на ConveyThis. Въпреки че реално време не е изискване за такава функция, исках нашите потребители да получат незабавна обратна връзка веднага щом ботът започне да работи.

За да постигнем това, ние разработихме прост Node.js уебсокет сървър, хостван на екземпляр на AWS EC2. Това изискваше някои настройки на бота за комуникация с websocket сървъра и автоматизиране на внедряването. След задълбочено тестване бяхме готови да преминем към производство.

Това, което започна като страничен проект, в крайна сметка намери своето място в таблото за управление. Чрез предизвикателствата придобих знания в Go и усъвършенствах уменията си в средата на AWS. Намерих Go особено полезен за мрежови задачи, кооперативно програмиране и изчисления без сървър, като се има предвид неговият нисък отпечатък на паметта.

Имаме бъдещи планове, тъй като ботът носи нови възможности. Имаме за цел да пренапишем нашия инструмент за броене на думи за по-добра ефективност и потенциално да го използваме за затопляне на кеша. Надявам се, че този кратък поглед в технологичния свят на ConveyThis ви хареса толкова, колкото на мен ми хареса да го споделям.

Готови ли сте да започнете?

Преводът, много повече от просто владеене на езици, е сложен процес.

Следвайки нашите съвети и използвайки ConveyThis , вашите преведени страници ще резонират с аудиторията ви, чувствайки се родни на целевия език.

Въпреки че изисква усилия, резултатът е възнаграждаващ. Ако превеждате уебсайт, ConveyThis може да ви спести часове с автоматичен машинен превод.

Изпробвайте ConveyThis безплатно за 7 дни!

градиент 2