Задача для PHP специалиста
500 UAHКраткая суть задачи: необходимо на чистом php без frameworks сделать импорт данных из csv файла в созданную под это таблицу mysql. А также сделать несколько endpoints по выводу данных.
Специфика задачи в том - что файл csv может быть большим и необходимо наилучшим образом реализовать импорт с возможностью использования нескольких серверов.
Пример данных https://docs.google.com/spreadsheets/d/10cFTucqK1ZQ0CGy3CQL6DszhMen67go0zCQhvGsVMUs/edit?usp=drivesdk
Данные в формате csv предоставлю выбранному исполнителю.
Подробное описание задачи:
Импорт в базу данных MySQL.
● Сохраните дату и время в одном часовом поясе, но позвольте нам запросить местную дату и время
транзакции клиента, если мы захотим.
● Убедитесь, что домен адреса электронной почты действителен и укажите IP-адрес этого домена
в другой столбец.
● Создайте «карточку контакта» для каждой записи. Карточка контакта представляет собой изображение в формате JPEG с именем и
фамилией, а также адресом электронной почты.
● После импорта данные должны быть отправлены на удаленный URL (например, example.org), включая
сгенерированное изображение (необработанный post, json).
● Создайте JSON API с двумя endpoints: «контакты» и «часовые пояса».
○ endpoint «GET /contacts.php» должна включать все записи с разбивкой на страницы.
endpoint GET /timezones.php?timezone={timezone} должна отображать поле часовой пояс, поле total_contacts и специальное поле «Контакты», которое будет включать такую же
информацию в соответствии с endpoint «контактов», отфильтрованную по соответствующему часовому поясу.
● Задокументируйте свою программу. Объясните, что он делает, почему и какие технические нюансы, вы
думаете, требуют объяснения.
● Что мы ищем в вашем приложении:
○ Скорость
○ Читаемость
○ Тестируемость
○ Масштабируемость
● Скрипт импорта должен исключать создание дублей записей.
● Никакие frameforks не должны использоваться.
● Можно использовать любой пакет composer.
● Можно использовать любое программное обеспечение с открытым исходным кодом.
● По возможности придерживайтесь принципов SOLID.
● Файл CSV может содержать очень большой объем данных, поэтому скрипт должен иметь возможность использования нескольких серверов - импорт
и обработка должна быть хорошо оптимизирована для работы в многосерверной среде, т.е.
по возможности делегируйте работу скрипта где это возможно.
● Вам не нужно беспокоиться о HTTP-маршрутах и т.д. для обработки запросов API - запросы
могут обслуживаться непосредственно в файлах PHP, но по возможности повторно использовать код, где это возможно.
● Убедитесь, что весь ваш код работает в среде Docker и "and is accompanied by a
docker-compose file as well as a makefile/run-script in order to run the relevant commands to test
the application".
Бюджет проекта обсуждаем.
Чтобы я смог выбрать Вас исполнителем на данные задачи необходимо в ставке либо в личной переписке убедить меня(человека который разбирается в php - но у которого сложности с пунктом о множественных серверах - что Ваше решение будет лучшим, а также что Вы знаете Docker и понимаете о чём речь в последнем пункте.
Актуальні фриланс-проєкти в категорії PHP
Модулі для сайта на Laravel
4000 UAH
Модуль доставки та оплати для сайтуhttps://novabook.top/ (Botble CMS / Laravel) Додати в checkout зручні способи доставки та оплати (включаючи розстрочку), за схожим стилем і зручністю подібно до сайту mirson ua.Доставка (обов’язково) Нова Пошта Відділення Поштомат Кур’єр на… Javascript та Typescript, PHP ∙ 9 годин 23 хвилини тому ∙ 18 ставок |
Потрібна інтеграція KeyCRM → ПРРО Кашалот |
Розробка 2 SEO-орієнтованих сайтів з продажу запчастин (квадроцикли та спецтехніка)Розробка двох спеціалізованих сайтів з продажу запчастинЗагальна інформація Потрібно розробити два спеціалізовані сайти: Запчастини для квадроциклів, UTV, SSV та іншої подібної техніки. Запчастини для спеціальної техніки. Існуючий сайт компанії: https://kiaparts.com.ua/ Нові… PHP, Веб-програмування ∙ 4 дні 15 годин тому ∙ 77 ставок |
Розробка веб-сайту WordPress
1002 UAH
|
Парсер expireddomains.net
5000 UAH
Потрібен парсер expireddomains.net на сайті потрібно спочатку залогінитись, проблема в тому що блочить ІР при намаганні парсити дані, потрібно парсити тематичні домени по списку ключових слів, хто не впевнений в своїх силах не пишіть PHP, Веб-програмування ∙ 9 днів 15 годин тому ∙ 53 ставки |