Як ми створювали новий сайт NIC.UA
Ми давно мріяли про новому сайті з приємним чистим інтерфейсом та покращеним бекендом - і ось мрія збулася! Разом із командою Stfalcon.com ми спростили навігацію сайтом, удосконалили пошук доменів і додали багато нових можливостей для управління замовленнями. Докладніше про новий сайт NIC.UA читайте у цій статті.
Оновлений інтерфейс
Найпомітніша зміна на сайті — новий дизайн:
Проста навігація. На новому сайті три основні розділи з послугами - «Домени», «Хмара» та «Захист». При натисканні на кожен з них у верхньому меню відображаються основні опції. Допоміжну інформацію ми розмістили в розділі «Ще». Таким чином доступ до кожної послуги працює у два кліки. Перемикачі мови та валют ми розмістили у футері, адже вони необхідні користувачеві лише при першому відвідуванні сайту.
Привабливі зовнішній вигляд. Ми вибрали світлу колірну схему. Корпоративний салатовий колір – на логотипі та у кольорах кнопок. Окремо розповімо про логотип: ми позбулися «кругляшка» у вигляді мишки та залишили лише напис “NIC.UA” — логотип став простіше та зрозумілішим. Порівняно зі старою версією сайту, на новому NIC.UA більше світла і простору, він мінімалістичний - у хорошому розумінні цього слова :)
Доброзичливий інтерфейс. Дизайнери Олександр Зайцев та Олександр Колодько подбали про користувача та спростили роботу з сайтом. Інтерфейс не перевантажений, на увазі — лише важлива інформація. Хороший сайт реєстрації доменів та хостингу має бути передбачуваним. Тому розташування кнопок, розділів, меню логічно та інтуїтивно зрозуміле. У разі виникнення помилок ми намагаємося конкретно пояснювати, що сталося і як це виправити.
Зручний особистий кабінет. Перед створенням нового особистого кабінету ми провели опитування серед клієнтів NIC.UA та врахували рекомендації. Наприклад, ми додали архів, де автоматично ховаються неактивні замовлення. Оновлена сторінка зі зведеною інформацією тепер містить повідомлення та дані про неоплачені замовлення. З'явився швидкий пошук та масове продовження замовлень, що важливо для тих, у кого десятки та сотні замовлень в одному кабінеті. У розділах просто створювати нові замовлення завдяки спеціальним кнопкам (наприклад, «Зареєструвати домен»).
Корисні фічі
На новому сайті NIC.UA ми реалізували такі можливості:
- Розумний пошук доменів. Завдяки транслітерації, підбору синонімів та перекладам, які ми використовуємо під час пошуку, ви знайдете придатний для бізнесу домен швидше.
- Трансфер списку доменів на один клік. Тепер можна створювати групові замовлення, переносити одразу список доменів. Для цього в розділі трансферу виберіть опцію «Перенести список доменів».
- Перегляд контактів домену. Раніше, щоб дізнатися дані контактів, які вказані в домені, потрібно звертатися до служби підтримки, тепер вони вказані в особистому кабінеті.
- Налаштування дочірніх серверів імен. Ця можливість сподобається просунутим користувачам, які керують хостами. Дочірні сервери імен прив'язані безпосередньо до вашого основного домену. Наприклад, ns1.yourdomain.com, ns2.yourdomain.com. У новому інтерфейсі можна їх додавати та налаштовувати.
- Архівування непотрібних замовлень та контактів. Усі застарілі замовлення автоматично переносяться до архіву. Також виникла можливість приховувати непотрібні контакти.
- Реєстрація облікового запису на юридичну особу. Раніше обліковий запис можна було реєструвати на представника компанії. Тепер ми уточнюємо назву організації, щоб власником облікового запису була саме юридична особа.
Премудрості бекенда
Обережно! Технічна інформація :)
В основі нашого старого сайту був монолітний сервер. Ми поставили собі завдання розділити систему на фронтенд і бекенд.
Проект складався із трьох частин: бекенд-білінгу, яким займалися розробники NIC.UA, бекенд-системи Symfony2 та фронтенду, яким займалася компанія Stfalcon.com. Symfony2 вибрали, тому що у хлопців є досвід роботи з великими проектами на цій платформі.
Основні завдання, які потрібно вирішити бекенд-розробникам:
- Створити новий сайт NIC.UA, який працюватиме за API з білінг-бекендом.
- Реалізувати горизонтальне масштабування та безперервну інтеграцію.
- Змінити принцип пошуку доменів.
- Зробити адмін-панель управління контентом, що настроюється, на сайті.
Розкажемо докладніше про деякі зміни.
- Розробники реалізували логіку роботи з API та налаштували безперервну інтеграцію (Continuous Integration) за допомогою GitLab. Тепер потрібні зміни вносяться простіше та швидше.
- Програмісти запровадили горизонтальне масштабування проекту. Тепер сайт NIC.UA працює на трьох серверах, один з яких розподіляє навантаження для двох інших, при цьому кількість серверів може змінюватися. У випадку, якщо на одному із серверів трапиться збій, вся робота виконуватиметься на іншому сервері, забезпечуючи стійкість до відмови системи в цілому.
- Нові можливості пошуку доменів:
- Транслітерація (наприклад, пошук "futbolki" також видасть домени зі словом "футболки").
- Пошук синонімів (пошук car також видасть домени зі словом automobile).
- Переклади (пошук книги також видасть домени зі словом books).
- Фільтри доменів (можна вибрати найпопулярніші, міжнародні, українські або регіональні домени).
Щоб прискорити пошук та зменшити кількість запитів до реєстрів, ми використовуємо «розумне» кешування запитів.
- Нам стало набагато зручніше працювати з сайтом завдяки гнучкій адмін-панелі із шаблонами. Тепер ми можемо налаштовувати блоки, які відображатимуться на всіх сторінках сайту, створювати лендинги та вносити налаштування окремо для кожної сторінки.
Надійний білінг та захист даних
Наша білінг-система реалізована на платформі Java 1.8. Вона використовує бази даних PostgreSQL і MongoDB. Усередині системи ведеться історія операцій: у будь-який момент ми можемо подивитися історію всіх заявок, результат операцій, що потрібно нормальної роботи всього сервісу.
Білінг обслуговують п'ять серверів (сервери імен ми до цього числа не включаємо). На них запущені бази даних та підсистеми обробки замовлень із реєстрами доменів, серверами хостингу, серверами імен та хмарою. Ми побудували білінг так, щоб він оптимально взаємодіяв із веб-інтерфейсом API. Завдяки цьому на основі такої системи ми можемо створити новий аналогічний сайт — наприклад, для роботи на ринках США та Європи. Так, ми не збираємося зупинятися на досягнутому :) З NIC.UA ваші дані у безпеці. Обмін даними по мережі між компонентами системи виконується із шифруванням трафіку. Усі сервери знаходяться у дата-центрах високого рівня надійності у різних країнах. Працює міжмережевий екран, що допомагає захистити сервери від небажаного трафіку.
Служба підтримки має доступ до даних клієнтів через окремий інтерфейс. Ми не можемо нічого змінювати в замовленнях клієнтів (наприклад, у налаштуваннях домену). Ручні операції, наприклад, зміна даних клієнта, фінансові та інші операції завжди проводять два співробітники, підтверджуючи кожну операцію цифровим підписом.
Ми пишаємося своєю роботою та вважаємо, що створили найкращий у Східній Європі сайт реєстрації доменів та хостингу. Залишайте свої відгуки про новий сайт у спеціальній формі. Ми прислухаємося до побажань клієнтів та продовжуємо розвивати сайт далі.