Численні користувачі ConveyThis надають перевагу належному перекладу URL-адрес усіх своїх веб-сайтів, що може бути складним завданням, особливо для великих сайтів, перекладених кількома мовами.
Відгуки користувачів показали, що деякі клієнти вважали початок своїх початкових проектів перекладу веб-сайтів дещо здивованим. Вони часто запитували, чому вони можуть переглядати лише URL-адресу домашньої сторінки в списку перекладів і як створювати переклади свого вмісту.
Це вказує на потенційну область для покращення. Ми побачили можливість полегшити процес адаптації та ефективніше керувати проектами. Однак на той момент нам бракувало конкретного рішення.
Результатом, як ви могли здогадатися, стало впровадження функції керування URL-адресами. Вона дозволяє користувачам швидко та ефективно сканувати URL-адреси своїх веб-сайтів і створювати перекладений контент через панель інструментів ConveyThis .
Нещодавно цю функцію було перенесено зі списку перекладів на нову, більш адаптовану та потужну сторінку керування перекладами на основі URL-адрес. Тепер ми вважаємо, що настав час розкрити історію появи цієї функції.
Початок карантину у 2020 році через пандемію дав мені можливість нарешті вивчити мову програмування Golang, яка була відсторонена через обмеження часу.
Розроблений Google, Golang або Go набирає популярності в останні роки. Статично скомпільована мова програмування Golang була розроблена, щоб дозволити розробникам створювати ефективний, надійний і паралельний код. Його простота підтримує написання та підтримку великих і складних програм без шкоди для швидкості.
Розмірковуючи над потенційним побічним проектом для ознайомлення з Golang, мені спав на думку веб-краулер. Він відповідав згаданим критеріям і потенційно пропонував рішення для користувачів ConveyThis. Веб-краулер або «бот» — це програма, яка відвідує веб-сайт для вилучення даних.
Для ConveyThis нашою метою було розробити інструмент, за допомогою якого користувачі могли б сканувати свій сайт та отримувати всі URL-адреси. Крім того, ми хотіли спростити процес створення перекладів. Наразі користувачі повинні відвідувати свій веб-сайт перекладеною мовою, щоб створити їх, що стає складним завданням для великих багатомовних сайтів.
Хоча початковий прототип був простим – програма, яка приймає URL-адресу як вхідні дані та починає сканувати сайт – він був швидким та ефективним. Алекс, технічний директор ConveyThis', побачив потенціал цього рішення та дав дозвіл на дослідження та розробки для вдосконалення концепції та обмірковування того, як розмістити майбутній продакшн-сервіс.
У процесі доопрацювання бота веб-сканера ми зіткнулися з нюансами різних CMS та інтеграцій. Тоді виникло питання – як ми можемо найкраще представити нашим користувачам бота?
Спочатку ми розглянули випробуваний підхід використання AWS з інтерфейсом веб-сервера. Однак виникло кілька потенційних проблем. У нас була невизначеність щодо завантаження сервера, одночасного використання декількома користувачами та браку досвіду розміщення програми Go.
Це спонукало нас розглянути сценарій безсерверного хостингу. Він пропонував такі переваги, як управління інфраструктурою провайдером та власна масштабованість, що робило його ідеальним рішенням для ConveyThis. Це означало, що нам не потрібно було турбуватися про потужність сервера, оскільки кожен запит оброблявся б у власному ізольованому контейнері.
Однак у 2020 році для безсерверних обчислень було встановлено 5-хвилинний ліміт. Це виявилося проблемою для нашого бота, якому потенційно може знадобитися сканувати великі сайти електронної комерції з великою кількістю сторінок. На щастя, на початку 2020 року AWS збільшила ліміт до 15 хвилин, хоча ввімкнення цієї функції виявилося складним завданням. Зрештою ми знайшли рішення, запустивши безсерверний код за допомогою SQS – служби черги повідомлень AWS.
Коли ми вирішували дилему хостингу, нам довелося подолати ще одну перешкоду. Тепер у нас є функціональний бот, розміщений ефективним і масштабованим способом. Залишилося завдання передати нашим користувачам дані, згенеровані ботом.
Прагнучи максимальної інтерактивності, я вирішив встановити зв'язок у режимі реального часу між ботом та панеллю керування ConveyThis. Хоча реальний час не є обов'язковою вимогою для такої функції, я хотів, щоб наші користувачі отримували негайний зворотний зв'язок, щойно бот починав працювати.
Щоб досягти цього, ми розробили простий веб-сервер Node.js, розміщений на примірнику AWS EC2. Це вимагало деяких налаштувань бота для зв’язку з сервером websocket і автоматизації розгортання. Після ретельного тестування ми були готові до переходу до виробництва.
Те, що починалося як побічний проект, зрештою знайшло своє місце на інформаційній панелі. Завдяки викликам я здобув знання про Go та відточив свої навички в середовищі AWS. Я знайшов Go особливо корисним для мережевих завдань, кооперативного програмування та безсерверних обчислень, враховуючи його низький обсяг пам’яті.
У нас є плани на майбутнє, оскільки бот відкриває нові можливості. Ми прагнемо переписати наш інструмент підрахунку слів для кращої ефективності та потенційно використовувати його для розігріву кешу. Сподіваюся, вам сподобався цей короткий огляд світу технологій ConveyThis так само, як і мені сподобалося ним поділитися.
Переклад, набагато більше, ніж просто знання мов, це складний процес.
Дотримуючись наших порад та використовуючи ConveyThis , ваші перекладені сторінки знайдуть відгук у вашої аудиторії, відчуваючи себе рідними для цільової мови.
Хоча це й вимагає зусиль, результат винагороджує. Якщо ви перекладаєте вебсайт, ConveyThis може заощадити вам години завдяки автоматичному машинному перекладу.
Спробуйте ConveyThis безкоштовно протягом 3 днів!