Számos ConveyThis felhasználó azt szeretné, ha webhelyének összes URL-címe megfelelően le lenne fordítva, ami nehéz feladat lehet, különösen a több nyelvre lefordított, nagy kiterjedésű webhelyek esetében.
A felhasználói visszajelzések azt mutatták, hogy néhány ügyfél kissé zavarba ejtette az első weboldal fordítási projektjeik kezdetét. Gyakran kérdőjelezték meg, miért csak a fordítási listában tekinthetik meg a kezdőoldal URL-jét, és hogyan hozhatnak létre fordításokat a tartalomból.
Ez jelezte a fejlesztés lehetséges területét. Lehetőséget láttunk a zökkenőmentesebb belépési folyamat és a hatékonyabb projektmenedzsment elősegítésére. Abban a pillanatban azonban hiányzott a konkrét megoldás.
Az eredmény, ahogy sejthetitek, az URL-kezelési funkció bevezetése volt. Ez lehetővé teszi a felhasználók számára, hogy beolvassák webhelyük URL-jeit, és gyorsan és hatékonyan generálják lefordított tartalmaikat a ConveyThis irányítópulton keresztül.
A közelmúltban ezt a funkciót áthelyezték a Fordítási listáról egy új, jobban alkalmazkodó és hatékonyabb URL-alapú fordításkezelő oldalra. Úgy gondoljuk, itt az ideje, hogy felfedjük a funkció létrejöttének történetét.
A járvány miatti 2020-as bezárás lehetőséget biztosított számomra, hogy végre megtanuljam a Golang programozási nyelvet, amely az idő szűke miatt elmaradt.
A Google által fejlesztett Golang vagy Go az elmúlt években egyre népszerűbb. A Golang egy statikusan összeállított programozási nyelv, amelyet arra terveztek, hogy lehetővé tegye a fejlesztők számára hatékony, megbízható és párhuzamos kódok készítését. Egyszerűsége támogatja kiterjedt és bonyolult programok írását és karbantartását a sebesség feláldozása nélkül.
Miközben azon gondolkodtam, hogy egy lehetséges mellékprojekten ismerkedjek meg a Golanggal, egy web crawler jutott eszembe. Megfelelt a fent említett kritériumoknak, és potenciálisan megoldást kínált a ConveyThis felhasználók számára. A web crawler vagy „bot” egy olyan program, amely felkeres egy webhelyet, hogy adatokat nyerjen ki.
A ConveyThis esetében a célunk egy olyan eszköz kifejlesztése volt, amellyel a felhasználók átvizsgálhatják webhelyüket, és lekérhetik az összes URL-t. Emellett egyszerűsíteni szerettük volna a fordítások generálásának folyamatát. Jelenleg a felhasználóknak meg kell látogatniuk a webhelyüket egy lefordított nyelven ahhoz, hogy létrehozzák a fordításokat, ami ijesztő feladattá válhat a nagy, többnyelvű webhelyek esetében.
Although the initial prototype was straightforward – a program that takes a URL as input and starts crawling the site – it was quick and effective. Alex, ConveyThis’ CTO, saw the potential of this solution and gave the go-ahead for research and development to refine the concept and contemplate how to host the future production service.
A webrobot bot véglegesítése során azon kaptuk magunkat, hogy a különböző CMS-ek és integrációk árnyalataival küszködünk. Felmerült a kérdés – hogyan tudjuk a legjobban bemutatni felhasználóinknak a botot?
Kezdetben az AWS webszerver felülettel való használatának kipróbált és bevált megközelítését vettük fontolóra. Azonban több lehetséges probléma is felmerült. Bizonytalanságunk volt a szerverterheléssel, a több felhasználó egyidejű használatával, valamint a Go programhosztingtal kapcsolatos tapasztalatok hiányával kapcsolatban.
Ez arra késztetett minket, hogy egy szerver nélküli tárhelyszolgáltatást fontolgassunk. Ez olyan előnyöket kínált, mint a szolgáltató általi infrastruktúra-kezelés és a benne rejlő skálázhatóság, így ideális megoldást jelentett a ConveyThis számára. Ez azt jelentette, hogy nem kellett aggódnunk a szerverkapacitás miatt, mivel minden kérés a saját, elszigetelt konténerében működött.
2020-ban azonban a kiszolgáló nélküli számítástechnika 5 perces korláttal rendelkezett. Ez problémának bizonyult a robotunk számára, amelyre szükség lehet nagy, sok oldalt tartalmazó e-kereskedelmi webhelyek feltérképezésére. Szerencsére 2020 elején az AWS 15 percre meghosszabbította a korlátot, bár ennek a funkciónak az engedélyezése nehéz feladatnak bizonyult. Végül úgy találtuk meg a megoldást, hogy a szerver nélküli kódot SQS-sel – az AWS üzenetsoroló szolgáltatással – elindítottuk.
Ahogy megoldottuk a házigazda dilemmáját, újabb akadályt kellett leküzdenünk. Mostantól rendelkezünk egy működőképes robottal, amelyet hatékonyan és méretezhetően tároltak. A hátralévő feladat az volt, hogy a bot által generált adatokat továbbítsuk felhasználóinknak.
Aiming for maximum interactivity, I decided on real-time communication between the bot and the ConveyThis dashboard. While real-time isn’t a requirement for such a feature, I wanted our users to get immediate feedback as soon as the bot started working.
Ennek elérése érdekében kifejlesztettünk egy egyszerű Node.js websocket szervert, amely egy AWS EC2 példányon található. Ehhez néhány módosításra volt szükség a roboton a websocket szerverrel való kommunikációhoz és a telepítés automatizálásához. Alapos tesztelés után készen álltunk a gyártásra való átállásra.
Ami mellékprojektnek indult, végül megtalálta a helyét a műszerfalon. A kihívások során tudást szereztem a Go-ban, és az AWS környezetben csiszoltam tudásomat. A Go-t különösen hasznosnak találtam a hálózati feladatokhoz, a kooperatív programozáshoz és a kiszolgáló nélküli számítástechnikához, tekintettel alacsony memóriaigényére.
Vannak jövőbeli terveink, mivel a bot új lehetőségeket teremt. Célunk, hogy átírjuk a szószámláló eszközünket a jobb hatékonyság érdekében, és potenciálisan a gyorsítótár-melegítésre is használjuk. Remélem, hogy nektek is annyira tetszett ez a betekintés a ConveyThis tech világába, mint amennyire én élveztem a megosztását.
A fordítás sokkal több, mint a nyelvek ismerete, összetett folyamat.
By following our tips and using ConveyThis , your translated pages will resonate with your audience, feeling native to the target language.
While it demands effort, the result is rewarding. If you’re translating a website, ConveyThis can save you hours with automated machine translation.
Próbáld ki a ConveyThis szolgáltatást 3 napig ingyen!