Всем привет! В этой статье я хотел бы рассказать о двух вещах: с какими трудностями я столкнулся в ходе работы над Прайс Архивом и что из этого вышло. Мой рассказ я построю, может быть, не совсем обычно. Я почти не буду давать ответы на возникшие вопросы. Я только озвучу те вопросы и проблемы, которые возникали и возникают, которые решил или которые находятся в процессе решения. Инсайд чистой воды, можно сказать.

Как говорится — все от земли, из первых уст. Предполагаю, что Вы устанете просто от прочтения того, что нужно было сделать.

Честно говоря, если бы мне показали подобный список проблем, которые нужно будет решить и рассказали с каким трудностями я столкнусь — возможно я бы оставил эту затею и не разрабатывал бы Прайс Архив с нуля. Но я решил проверить себя, что ли.

Если Вас интересует информация по ценам на товары AliExpress.com, то прошу сразу ко второй части. Там я расскажу все самое интересное, что было мной замечено.

Для кого эта статья?

Наверное, для еще студентов или людей, собирающихся с мыслями по поводу открытия своего проекта. Мне такая статья год назад не помешала бы.

Год назад?

Да, именно 11.11.2016 я решил сделать что-то полезное для людей. Я понимаю, что для одних это оказалось полезно, для других не очень, у третьих будет вообще своя особенная точка зрения. Но цель была такая. И сейчас я по-прежнему призываю придумывать только что-то
полезное, иначе ваша работа обречена на провал. Но сразу оговорюсь — даже что-то полезное с легкостью может провалиться.

Что-то из этого сделано, что-то нет, что-то я забыл и об этом тут не написано. Но я старался написать обо всем, что было.

Извините за винегрет, я вставляю сюда среди прочего и куски из своего to do листа, который я вел некоторое время. В общем как оно было на самом деле, так тут местами и вставлено. Итак, вот такой список дел у меня получился.

1. Найти проблему, которая волнует многих людей.

2. Изучить предметную область. Найти похожие сервисы и конкурентов.

3. Убедить себя в том, что проект нужен людям и он имеет шансы взлететь.

4. Убедить себя в том, что хватит денег, сил и желания все сделать до наступления самоокупаемости.

5. Составить список инструментов сервиса, которые должны быть реализованы в будущем.

6. Продумать дизайн сайта, какой функционал у него будет. Первоначальный выбор был сделан в пользу сайта, а не приложения.

7. Составить подробнейшее техническое задание по дизайну. Заказать и следить за разработкой. Это единственное, что я заказывал. Дизайн — это очень сложно даже с хорошими дизайнерами и верстальщиками. Надо все проверять и перепроверять тысячу раз, если хочешь добиться прилично сделанного дизайна и верстки.

8. Централизованно освежить в памяти или научиться некоторым командам в Linux.
Когда-то в университете изучали, но это было давно и не правда. Монтирование-размонтирование диска, ntpdate, tune2fs, screen, man, mkfs, df -i, lsof, ps aux, top, du -sh *, date, blkid /dev/sda1, fdisk -l и еще подобных два-три десятка.

9. Изучить теорию по теме скорости записи и чтения данных на диски. Тесты дисков разных производителей, моделей и т.п.

10. Изучить теорию по файловым системам. ext-семейство, xfs, reiser, brtfs, zfs, другие.
Въехать во все это при условии, что действительно всеобъемлющей информации вот так, что бы для своего случая — такого я не нашел. Все нужно было перепроверять и в итоге по некоторым вещам Google показывал только 3 страницы с обсуждением действительно важных моментов, которые оказывались краеугольными. Остановиться на такой файловой системе, которая может легко справляться с десятками миллионов файлов и при этом быть очень легко масштабируемой. Изучить различные моменты по тюнингу файловых систем, типа отключить directory index и проверить скорость чтения и записи, директива noatime, и еще несколько подобных.

11. Написать скрипты для тестов диска по скорости записи, чтения, перезаписи: все последовательно и все в разнобой. Изначально десятки тестов проводились на обычных дисках со всеми возможными размерами блока и количеством inodes. Нужно было разработать подходящие тесты, что бы они моделировали все возможные ситуации, включая очень сильную фрагментированность.

12. Оказалось, что обычные диски по умолчанию не справляются по времени с большим количеством данных. Надо было искать выход. Он нашелся в хороших SSD дисках. Да, они дороже, но без них оказалось никак.

13. Провести снова все тесты диска по скорости записи, чтения, перезаписи: все последовательно и все в разнобой.

14. Подобрать под ожидаемые данные размер блока файловой системы, количество inodes так, что бы процент их использования увеличивался синхронно. Иначе будет перекос или по месту или по количеству inodes, что приведет к более быстрому расходованию потенциала диска по вместимости. А это лишние деньги из-за недоработанной архитектуры вначале. Не очень хотелось.

15. Изучить технологию виртуализации данных RAID или придумать свой вариант на случай выхода дисков из строя.

16. Разработать свою собственную схему на будущее по поводу расширения сервиса в N раз и хранения данных при форс-мажорах.

17. Выбрать надежного хостера с более-менее вменяемой технической поддержкой. Рассчитать размеры необходимой оперативной памяти, количество и размер дисков, чтобы не переплачивать долгое время. Ждать приезда дисков и настройки сервера. Проблема была еще в том, что SSD диски были в дефиците. Но повезло, ждал не долго. Сервер заказывать с возможностью увеличения, как памяти, так и дисков.

18. При получении сервера провести все возможные и нужные тесты — все ли работает, все ли правильно настроено. Проверить диски на ошибки, был случай даже с новым диском. Поменять порт ssh на свой. Настроить большое количество одновременно открытых соединений.
Увеличить предел открытых файлов для пользователей admin и apache. Проверить, что бы стояли последние версии bash и т.п. – надо, что бы стояли с патчами от атак, которые уже известны, типа heartbleed. maxclients у apache — надо поднять с 256 до (не скажу). Поставить directamin-y simple_disk_usage=1. Проверить, что бы были подключены оба IP адреса сервера и при перезагрузке не отваливались из-за того, что они сохранены только в памяти. Проверить подключение putty. Удалить FTP сервер. Закрыть все ненужные порты В iptables внести разрешающие правила для портов: * Все остальные под запрет. Найти полезные команды для сервера и разобраться в их синтаксисе: iptables -I INPUT -s 1.1.1.1 -j DROP, iptables -nvL INPUT.
Установить ntpdate. Установить UTC время для всего: для сервера, для php. hwclock — тоже UTC. Часовой пояс как для hwclock так и для php — надо поменять на Europe/London. Установить screen, man, и другие нужные вещи. Удалить phpmyadmin.

19. Много времени было потеряно при работе с CentOS 6.
CentOS 6 не ставить — в ней иногда есть проблемы с сетевой картой, если через нее идет много трафика — около 15-20 Gb в час.

20. Найти — как решаются проблемы с масштабируемостью, высокой производительностью и надежность сейчас. Найдена Cassandra. Изучить Cassandra и применимость в своей ситуации.

21. Решить — как будут храниться данные на основании проведенных тестов и имеющейся информации по базам данных.

22. Поставить все нужные для безопасности сайта и CEO заголовки, убрать ненужные, раскрывающие — что именно установлено на сервере. Vary User-Agent, X-Accel-Version, X-Frame-Options и другие.

23. Приступить к разработке сайта. Определиться на чем будет вестись разработка и почему. Разработать архитектуру, которая позволит безболезненно добавлять неучтенные вещи.
Что бы в то же самое время быть легкой, быстро доступной и предельно понятной как в коде, так и в том, что где лежит на сервере и почему именно тут.

24. Определиться с количеством языков, на которые будет переведен сайт исходя из финансовых возможностей и расценок на переводы. Найти переводчиков для каждого языка или агентство переводов, где будут делать свою работу так, чтобы не нужно было перепроверять каждый раз. Тут я столкнулся с разными случаями. Некоторые люди настолько своеобразны, что не могли принять email с заданием для перевода — им нужен был личный приезд и объяснение на пальцах. Причем все подавалось в таком виде, что они мне делают одолжение. Пишу тут про социальные моменты, что бы дальше не останавливаться на них. А они были. Понял только одно. Если нет уже проверенных людей в какой-либо области, то найти тех, с кем можно работать — довольно не быстрое занятие.

25. Досконально изучить правила работы с AliExpress.com в качестве аффилиата.

26. Изучить API AliExpress. Понять, что оно не очень то и информативное. Искать выход. Потратить часы общения с саппортом и всеми теми сторонами, которые могут помочь AliExpress сделать API лучше.

27. Собрать все названия категорий и подкатегорий в каталоге AliExpress на английском языке. Сохранить с пометками какой подраздел относится к какому разделу. Написать для этого скрипт.

28. Написать скрипт для сбора базы данных для английского языка. Исходя из получаемых данных провести тесты по месту, количеству занимаемых блоков, inodes.
Прикинуть — на какое время хватит диска. Что делать потом, когда диск заполнится?

29. Разработать правильную структуру хранения данных для быстрой записи, поиска, чтения и удаления. Время полной отдачи страницы не должно быть больше 0.8 секунды при десятках миллионах записей на диске.

30. Провести мониторинг пропадающих товаров на AliExpress. Если товар пропадает из продажи — это на время или навсегда? Было еще много особенностей, с которыми нужно было разобраться.

31. Написать скрипты посуточного анализа всех товаров. При разработке учесть все возможные и необходимые статистические данные.

32. Собрать названия категорий и подкатегорий для русского языка + для всех остальных, кроме английского. Он уже собран.

33. Написать скрипт сбора названий товаров на всех языках и собрать с его помощью нужные товары из сформированной при первом проходе базы. Учитывать лимиты на количество запросов к API.

34. Написать код сайта. Сделать весь функционал, включая поиск товаров, отображение категорий, подписки, личный кабинет, блог, регистрация, отслеживание, email оповещения и т.д. и т.д.

35. Составить список всех фраз и слов, которые используются для сайта на русском языке.

36. Связаться с переводчиками и отдать им списки фраз и слов для перевода.

37. Обработать полученные списки на разных языках и настроить код сайта на отображение соответствующего языка.

38. Оказалось, что надо писать один скрипт для первоначального сбора. Но надо писать еще один скрипт для всех последующих сборов-обходов составленной базы, потому что первый скрипт будет работать медленнее, а надо быстрее.

39. Все это время была связь с дизайнерами. Доработать полученный дизайн, потому что это быстрее, чем просить исправить еще вон тот момент.
При этом получше разобраться в css.

40. Написать скрипт сбора браузеров пользователей. Исходя из них смотреть верстку — правильно или нет работает под всеми популярными браузерами. Провести тестирование на всех возможных браузерах. Для этого можно просто пойти в салон apple или samsung, у них там куча устройств с разными диагоналями. Тестируй — не хочу + тестировать через сервис, делающий скриншоты экранов для десятков операционных систем. Локализовать css файлы для каждого языка. Это оказался лучший вариант при условии, что в разных языках одни и те же фразы занимают место на экране по-разному.

41. Из html страниц доработанного дизайна сделать шаблоны с макросами. Продумать синтаксис макросов, потому что будут использоваться два подхода по формированию страницы. Второй подход связан с внутренними макросами при локализации языковых файлов.

42. Настроить домен у регистратора и на сервере + все сабдомены.

43. Разобраться с графиками. Как формируются, как должны изменяться. Выбрать подходящие графики и настроить их.

44. Постоянно при чтении новостей, статей и т.п. думать о возможности создания подобных статей на сайте, для того, что бы различные медиа источники ссылались на сайт. Это важный момент, но на него совсем не хватает сил.

45. Разработать шаблон для анализа статистических показателей. Перевести его на все языки, отдав переводчикам.

46. Разработать структуру анализа, хранения данных анализа, хранений статей и т.п.

47. Написать скрипты для сбора названий товаров на нужных языках.

48. Поставить ограничения, например, на количество товаров, которые пользователь может трэкать.

49. Не совсем правильно работает на телефонах tipsy — потом разобраться почему и починить.

50. Разобраться и настроить записи SPF, DKIM, DMARK. Не знаю почему, но этот момент дался очень сложно. Может из-за того, что толкового руководства для впервые видящего это человека я так и не нашел.

51. Подумать над подачей не графиков, а таблиц в каких-то случаях.

52. Изучить графики highcharts.

53. Разобраться в сертификатах и настроить https соединение.

54. Разобраться и настроить htaccess.

55. Разобраться и настроить ptr записи.

56. Сделать еще буквально пару сотен улучшений в функционале, дизайне и работе сайта. У меня сейчас еще 80 пунктов просто по улучшению того, что есть, сохранено в файлике.
И этот список каждый день пополняется пожеланиями пользователей и своими собственными соображениями.

57. Поработать по СЕО теме. Настроить все необходимые заголовки на всех страницах: canonical, dns-prefetch, preconnect, og:*,
product:*, twitter:*, alternate, и так далее. До сих пор не все настроено, еще парочка важных осталась.

58. Сделать каждый день обновляемые карты сайта и карты карт.

59. Запостить несколько статей на форумы, тем самым рассказать о сервисе. Тут я скажу «спасибо» некоторым владельцам форумов. Нет, дело конечно Ваше и правила Ваши на Ваших порталах. Но из-за того, что были удалены мои хорошие статьи — молодой сайт без ссылочного пессимизировал Google. И никак его не сдвинуть с места. В топах сотни сайтов-дорвеев, лома — все цветет и пахнет на первых позициях. А вот Прайс Архив какашка, потому что ссылки на него удалили. Хочу тут сказать пару добрых слов Яндексу. Он тоже ссылок не видит особо, но хоть каких то пользователей приводит на сайт. Они конечно мало влияют на окупаемость в принципе, потому что их очень мало. Я говорю сейчас об алгоритме поисковых систем. Яндекс дает шанс, хоть призрачный молодым проектам, а Google же – чуть-чуть бонус новичка и давай до свидания. А вот на ломе и дорвеи — это да, все в топе. Ребята из поисковых систем, вот есть проект, он полезен людям. Вот не хочу я его продвигать, я хочу работать над его улучшением. А приходится то за одно хвататься, то за другое. Я довольно неплохо понимаю в СЕО и мог бы его с определенным риском попытаться все-таки поднять в топы не очень белыми методами. Но разве так должно быть? Ладно, как есть. А, нет, еще добавлю. Я в это не верил, но у нас в СНГ владельцы форумов готовы удавиться за подробный рассказ даже о не конкурирующем проекте на своем ресурсе. Все подчищается быстренько. Хотят денег за рекламу.

Дело, как говорил, Ваше конечно. Но сразу бросается в глаза разница в подходе СНГ владельцев и забугорных, не важно каких. К ним можно прийти и без постов и кармы рассказать о себе и почти все воспринимают это нормально. Что делать? Быть добрее и не жадными.

60. Бороться с прокрастинацией и выгоранием при условии, что хватает дел и в офлайне.

61. Разослать 100 писем по новостным сайтам и 10 писем топовым блоггерам. С предложением рассказать о сервисе бесплатно и с предложением рассказать о сервисе с пост оплатой в виде фиксированного процента. Знаете, какой был ответ? Никакого. Ну как, не совсем никакого.

Штук 5 самых крупных сайтов ответили предложением обычной рекламы. За что им спасибо. Не зря они крупные. Остальные промолчали.

Я хотел для себя узнать что будет — я узнал. И теперь могу с Вами поделиться. Если у вас нету денег за рекламу — писать кому-то — пустое дело. Еще очень многим писать бесполезно, даже если деньги есть. Не знаю почему, это не мое дело — что у них на уме. Просто сам факт — вот такой. В общем, тут нужен другой подход. Писать на контактный email, как показывает практика — бесполезно. Возможно, потому что проект неизвестный.

62. Создать страницы проекта в социальных сетях. Оформить их и вести.

63. Ошибка, которую совершают многие, и которую совершил я — не рассчитал количество имеющихся денег для жизни, разработки сайта и его продвижения. На продвижение денег совсем не осталось. А ведь продвижение — это, возможно, еще более важная часть,
чем вся проделанная работа. Финансовый момент нужно очень хорошо взвесить.

Некоторые пункты — это работа не на одну неделю. Проектом должно было заниматься несколько человек, если по-хорошему. Каждый своим делом. Но мне было интересно сделать все самому от начала и до конца, окунуться в работу каждого. Еще очень много надо сделать, что бы довести проект до нормального состояния согласно моим задумкам. Самоокупаемости сейчас нет — значит история не заканчивается. Вот как то так.

PS. Само собой я не претендую на какое-то хорошее мнение о всем написанном или обо мне. Я не вообще для этого все это написал. Я хорошо понимаю, что мнения у всех разные и очень разные. Для меня цель данной статьи — рассказать как есть о проделанной работе, рассказать людям, что можно покупать и при этом точно знать, что покупаешь по минимальной цене, а не по завышенной сегодня. Прайс Архив предоставляет бесплатное отслеживание цен и уведомление о снижении цены посредством email.

Ну и наконец, моя позиция — информацией нужно делиться друг с другом — надеюсь, кому-нибудь она будет полезной, может в качестве какого-никакого начального черновика.

Теперь вторая часть.

Что интересного я могу сказать о распродаже и в целом о товарах на AliExpress.com.

Каждый день Прайс Архив собирает данные примерно о 12 миллионах товаров. На данный момент количество товаров, о которых есть информация — более 37 миллионов. Примерно о 5% самых популярных товарах получить информацию нельзя. Потому ее пока нет на сайте,
но в этом вопросе уже есть подвижки.

Смотрим сюда. Оставляем активными только два кружочка — «Подешевело» и «Подорожало». 1 ноября 2.2 миллиона товаров из почти 12 миллионов проанализированных подорожало. 2 ноября примерно столько же подешевело. А вот 4 ноября уже более 4 миллионов из почти 12 миллионов проанализированных товаров подорожало. И до сих пор они не дешевели так массово. Отсюда ответ на интересующий вопрос — товары дорожали массово именно 4 ноября, за одну неделю до распродажи, а не перед самой распродажей 10 числа. Так что, если и покупать до распродажи — то во многих случаях это надо было делать до 4 ноября и не первого ноября.

Есть еще такая вот интересная страница. Каждый день собирается информация о товарах на AliExpress.com. На этой странице представлены товары, которые вчера продавались без скидки, а сегодня продаются со скидкой от 5 до 99%. Так же тут находятся товары со скидками, информацию о которых мы получили сегодня в первый раз. Страница справляется со своим предназначением, но находится в первой стадии разработки, если так можно сказать. Позднее будут добавлены некоторые фильтры и функционал, что сделает эту страницу хорошим инструментом для поиска товаров с большими скидками.

Зачем вообще смотреть эти Ваши графики изменения цен? Лучше примеров быть ничего не может. Посмотрите на графики и на какую сумму меняются цены. Раз, два, три. Цены меняются очень часто и у очень многих товаров. Причины могут быть разными: пора года, близость распродажи, конкуренция и т.д. Если Вы не хотите переплачивать, то просто смотрите график изменения цены и делайте выводы: когда лучше купить — сегодня сейчас или стоит подождать. По графикам все сразу становится понятным.

Хотел бы рассказать еще об одной функции сайта. На странице каждого товара есть форма для оповещений. Вводите свой email и желаемую цену, опираясь на информацию на графике. Когда цена упадет до указанной Вами, мы вышлем Вам email оповещение об этом на Вашу почту.
Вам не нужно каждый день смотреть подешевело или подорожало или сохранять данные в эксэлевский файл, как некоторые делают. Все просто и удобно можно смотреть в своем кабинете, в который можно попасть после регистрации.

Спасибо за внимание!

Комментарии (78)


  1. holy_desman
    11.11.2017 19:23

    Молодец, чо. Раскрутка действительно стоит бабла, а порой и БАБЛИЩА. Про ютюбень с инстаграммом что думаешь? Партизанский маркетинг, всё такое.


    1. VitaliPA Автор
      11.11.2017 20:53

      Youtube — однозначно да. Я анализировал эффективность Youtube по некоторым доступным признакам и могу сказать, что эффект есть. Intagram — не анализировал. Если считать эту статью вариантом партизанского маркетинга, то да. Но только что бы статья несла хоть какую-то пользу окружающим, кроме рассказа о самом проекте.


      1. Monty
        15.11.2017 11:36

        На основе данных вашего сервиса можно бесконечно генерить контент для ютуб-канала, ВК-паблика или телеграм-чата. Аудитория сама придет.


        1. Tomasina
          15.11.2017 13:29

          Непонятно.


  1. SbWereWolf
    11.11.2017 22:30

    автору респект и уважуха


  1. mSnus
    11.11.2017 22:50

    Интересная штука. А как насчёт возможности добавлять события на временной шкале, типа "тогда-то вышел новый айфон"?


    У меня бы на этот план из 60+ пунктов уже ушёл год)


    1. VitaliPA Автор
      11.11.2017 23:35

      Если не сложно, напишите, пожалуйста, подробнее о вашей идее тут в Диалоги.


  1. cyber_ua
    11.11.2017 22:58

    VitaliPA А какие способы монетизации у подобных сервисов как ваш?


    1. VitaliPA Автор
      11.11.2017 23:42

      Способов монетизации может быть несколько:
      1. Продажа сервиса.
      2. Размещение рекламы Яндекс.Директ, Google Adsense или других платформ.
      3. Прямая продажа рекламы.
      4. Аффилиатные ссылки. Подробнее можно прочитать в часто задаваемых вопросах на Прайс Архиве тут. Вопрос номер 16.
      5. Общение напрямую с продавцами на AliExpress и размещение рекламы их товаров на страницах в подходящих местах или выше в результатах поиска.

      Наверное, это основные способы.


      1. dolbnya
        13.11.2017 16:28

        А как насчет премиум-подписки? Выделить ряд функций и засунуть их под премиум-подписку. Основную функциональность оставить.


        1. VitaliPA Автор
          13.11.2017 18:38

          Да, забыл про этот вариант, когда писал ответ. В личных сообщениях тоже уже подсказали. Но пока это только вариант. Рано вводить подписки.


          1. Ezhyg
            14.11.2017 02:05

            Можно начать с создания странички со списком спонсоров, в дальнейшем изменить на (или добавить) что-то более существенное. В общем собирать деньги никогда не рано :D.


  1. and7ey
    11.11.2017 23:04

    Какое-то у вас очень сложное MVP. Почему-то не начать мониторить для начала, например, 5% товара?

    Кстати, кэшбэк-сервисы начали внедрять историю стоимости товаров (см. letyshops). Может, попробовать им продать ваше решение или историю цен?


    1. VitaliPA Автор
      11.11.2017 23:55

      Если строить систему без первоначального расчета на большие объемы, то нужно будет сделать, по сути, две работы.
      Иметь данные по 5% товаров — это очень мало. Пользователи и сейчас получают сообщение, что данных по некоторым товарам нет. А получали бы почти всегда. Такой сервис никому не нужен был бы.

      Кэшбэк сервисами пользуются далеко не все. Что делать пользователям, которые не пользуются кэшбэком по своим каким-то причинам? На сайт можно просто зайти из разных мест, с тех устройств, на которых не установлены плагины и получить нужную информацию. По поводу продажи — вопрос не рассматривался. Да и им незачем покупать базу, потому что сами в состоянии ее собрать.


      1. AllexIn
        12.11.2017 12:43

        Так заключите партнерку и станьте сами кэщбэк сервисом. С блэкджеком и мониторингом цен.


        1. VitaliPA Автор
          12.11.2017 13:10

          Кэшбэк сервис сделать — это не так просто и не так быстро. Нужен штат сотрудников хотя бы для общения со своими пользователями, выяснять почему кэшбэк не засчитался и много других нюансов. Я немного общался и иногда общаюсь с людьми в руководстве и с поддержкой одного кэшбэк сервиса. Могу сказать, что люди очень адекватные и делают отличный сервис. Тратят на это много времени, проводят конференции т.п. С этой точки зрения у них получается делать действительно хороший сервис и помогать людям. Я же изначально видел и сейчас вижу развитие Прайс Архива совсем в другом направлении, которое мало пересекается с кэшбэк сервисами, но делает процесс покупки намного более удобным, чем есть сейчас у кого бы то ни было. Но, если придет время и нужна будет необходимость для подключения кэшбэк сервиса, то я, возможно, предпочту сотрудничество вместо конкуренции. Считаю, что в некоторых ситуацих сотрудничество может быть более эффективным, чем конкуренция.


  1. iamsens
    11.11.2017 23:51

    А зачем мониторить все товары? нужно мониторить что люди хотят купить, т.е. сделать простой мониторинг изминения цен, на небольшое количество товаров, купить трафика(рекламы) и посмотрить, стоит ли вообще на это время тратить.
    п.с. судя по трафику (simillarweb), не стоит :(


    1. VitaliPA Автор
      12.11.2017 00:01

      Как узнать что именно люди хотят купить? На Алиэкспрессе покупаются миллионы товаров. Задача стоит собрать информацию о максимально возможном числе товаров, что бы не так часто показывать людям сообщение, что по их товару сейчас нет информации.
      Третий пункт из статьи — «3. Убедить себя в том, что проект нужен людям». Я себя убедил на основании второго пункта.


      1. iamsens
        12.11.2017 00:46

        Как узнать что именно люди хотят купить?

        На основании того что они будут добавлять на «мониторинг цен», очевидно же)


        1. VitaliPA Автор
          12.11.2017 01:00

          Это возможно и начинать мониторить те товары, о которых нет информации, да, нужно. Но представьте, Вы захотели сегодня купить чехол для телефона. Разве Вы захотите ждать неделю-две пока появится хоть сколько-нибудь данных о ценах? Думаю, нет. Вам нужно знать уже сейчас что было с ценой ранее. Вот поэтому и нужно мониторить как можно больше товаров заранее, до прихода человека, который хочет узнать какая была цена ранее.


          1. AllexIn
            12.11.2017 12:46

            Не просто две недели ждать…
            Я планировал купить дешевый проектор для статьи на ГТ, но сейчас вроде как есть другие дела и подумал отложить покупку.
            Вышла ваша статья и я ради интереса глянул цены. И оказалось, что вот именно сейчас самая вкусная цена. И за всё время мониторинга такой цены еще никогда не было. Купил, естественно.
            Плюс вполне очевидно, что интерес к сервису подогревают акции типа 11.11. Ну пришел челоек 11 ноября на ваш сервис, увидел что информации нет… И ушел. Потому что смысл ему ждать две недели, когда инфа нужна прямо сейчас, когда акция идет, чтобы увидеть, что цена не обман.

            Вобщем сервис отличный. Сам буду пользоваться, друзьям рекоменду и желаю вам успешного развития.


            1. VitaliPA Автор
              12.11.2017 13:26

              Спасибо за Ваш отзыв, пример и пожелания.


              1. HiMem-74
                14.11.2017 12:28

                Прочитал статью, спасибо за хорошее, нужное дело!
                Под впечатлением зарегистрировался и вызвало недоумение вот такое поведение сервиса:
                Вот я хочу, например, отслеживать товар "SeaKnight AXE 2000H 3000H 4000H Spinning Reel 6.2:1 Full Metal Body WaterProof Design Anti-Corrosion Real 10+1BB Fishing Reel", а мне сервис отвечает "Сейчас у нас нет информации по этому товару. Попробуйте еще раз позже."
                Ну что за дела, думаю я, давай, железяка, ты запиши мою хотелку и сама попробуй позже, а мне извещение пришли, когда у тебя получится )))
                Ну правда, если я интересуюсь какой-то вещью и на нее нет статистики, записать мою хотелку же несложно!? И начать отслеживать, а я извещения получать буду.
                Ну и еще — где поставить галочку «написать мне, когда цена упадет на хх % или больше»?


                1. VitaliPA Автор
                  14.11.2017 14:09

                  Вы знаете, «Ну что за дела, думаю я, давай, железяка, ты запиши мою хотелку и сама попробуй позже, а мне извещение пришли, когда у тебя получится )))» — это отличная идея! Спасибо. Добавлю ее в список на реализацию.

                  «где поставить галочку «написать мне, когда цена упадет на хх % или больше»?» — если для товара есть статистика, то на странице товара в первой форме под картинкой можно указать желаемую цену и Ваш email. И начать отслеживать. Когда цена упадет до нужной Вам или станет еще меньше, то Вы получите оповещение об этом на указанный email.
                  Укзать в процентах нужное падение пока нельзя.


                  1. Ezhyg
                    14.11.2017 17:56

                    Укзать в процентах нужное падение пока нельзя.

                    А если формулу пересчёта вбить в мозг сервису (да чтобы в обе стороны работала)? Вбивает пользователь хоть «на сколько», хоть «в процентах», за всё остальное отвечает несложная формула (нечто похожее делал в локальной сети для показа ограничений на хранение файлов). И текущий подсчёт менять не надо, он остаётся как есть, а дальше рулит простая арифметика.


                    1. VitaliPA Автор
                      14.11.2017 19:07

                      Нужно сделать все понятно по интерфейсу для посетителей. То есть не должно быть неоднозначности. Но то, что кому-то удобнее указывать проценты — понимаю и согласен. Это добавлено в список на реализацию.


                      1. Ezhyg
                        14.11.2017 20:49

                        Да, точно. Постоянно забываю, что прочитать подсказку в строке или рядом с ней, что уж говорить о всплывающей, это выше сил, возможностей и вообще понимания, слишком многих пользователей :( (хотя и подсказки-то делать нынче «не модно»)


                  1. HiMem-74
                    15.11.2017 16:57

                    это отличная идея! Спасибо. Добавлю ее в список на реализацию.
                    Чуть выше уже высказывали подобную идею, просто другими словами, процитирую iamsens:
                    А зачем мониторить все товары? нужно мониторить что люди хотят купить


                    1. VitaliPA Автор
                      15.11.2017 19:06

                      Нет. Это совсем разные вещи. Во втором случае автор не предлагает отслеживать только те товары, о которых нет информации. Он предлагает по тем товарам, о которых все же нет информации добавить форму оповещения — когда начнется отслеживание, что бы получить оповещение об этом. В первом же случае «А зачем мониторить все товары? нужно мониторить что люди хотят купить» — разговор шел именно про то, что бы начинать мониторить только то, что нужно без покрытия большого количества товаров ДО первого запроса пользователя. И прямого предложения об отправке оповещения при появлении товара не было высказано.


  1. iamsens
    12.11.2017 00:25

    2. Изучить предметную область. Найти похожие сервисы и конкурентов.

    Когда видишь сервис конкурента и у него «всё хорошо», кажется, что можешь откусить кусок его пирога, но это не так, это ошибка выжившего. Вашему сайту уже более полугода, больше миллиона страниц в индексе, а трафика нет, вы ждете что он завтра появится? такой сервис нужно рекламировать и делать упор на UX. Кассандра и т.д. это дело тут третьестепенное. Кроме того что себя убедили, нужно проверить на пользователях, купить рекламы на адвордсе(к примеру) и сделать выводы, кстати такого пункта я у вас не видел.
    .


    1. VitaliPA Автор
      12.11.2017 01:12

      По сути добротного и тем более раскрученного сайта-конкурента не было во время начала работы. И сейчас не могу сказать, что он есть. Особенно, если учитывать тот факт, что на Алиэкспресс покупают во многих странах. Похожий функционал в приложениях кэшбэк сервисов появился уже позже. И они не совсем конкуренты. Так что от кого-то откусывать не приходилось и не приходится. Можете посмотреть хотя бы сколько раз в месяц набирают фразу «Прайс трэкер» в СНГ. Ответ: нисколько. Нету еще пирога, нету от чего откусывать.
      Появится или нет трафик — я не буду гадать. Что будет, то будет. Нужно рекламировать? Да, нужно. Дадите денег или подскажите где взять? У меня был план по раскрутке, но он провалился. Из-за того, что я сделал несколько серьезных финансовых ошибок офлайн, не получилось и с запасным планом. Ну что ж, так бывает. Отношусь к этому философски. Будет опыт.
      По этому и всему остальному, что Вы написали — спасибо за Ваше мнение. Серьезно. Буду иметь ввиду.


  1. VitaliPA Автор
    12.11.2017 01:10

    [ответ перенесен выше к соответствующему комментарию]


  1. Psychosynthesis
    12.11.2017 02:22

    Насколько я понял, четверть пунктов из первой части можно было ещё до запуска проекта опустить, если просто купить какой-нибудь виртуальный хостинг средней руки.

    P.S. У вас вместо нормального UI перегруженный набор клипартов, который больше годится для какого-нибудь Behance, а не для реального проекта. Но сама идея не столь плоха, возможно вы займёте свою нишу.


    1. willyd
      12.11.2017 04:27

      Я тоже не понял момента с решением начинать проект на своем железе. Выбор облачного сервиса позволил бы иметь свободные деньги на раскрутку. Ведь с самого начала было ясно, что основная проблема будет в привлечении трафика.
      Можете объяснить, чем было обусловлено такое решение?


      1. VitaliPA Автор
        12.11.2017 11:05

        Облако, если бы и было дешевле, в чем я сомневаюсь, то не давало бы той гибкости, которая есть у выделенного сервера. Мне все-таки удобнее выделенный сервер, по крайней мере сейчас. Тут еще важен момент, что у меня есть очень хорошая скидка у хостера. Да и разницы между оплатой облака и сервера точно бы не хватило на раскрутку.


        1. willyd
          12.11.2017 20:58

          Ну как бы затраты нужно считать не только в денежном эквиваленте но и по времени. Как уже написали AWS сохранил бы вам кучу времени.
          Мне тяжело судить о прибыльности того или иного решения не зная архитектуры. Но подозреваю, что основное время работы системы — это работа скриптов трекера товаров. А для его работы можно использовать spot инстансы. Навскидку, при существующем объеме вы должны вкладываться в 150-180 у.е. в месяц.
          Кроме того, для тех же штатов и Европы было бы неплохо сравнение с Амазоном, и тут у AWS будет небольшое преимущество в скорости работы с ним.
          ЗЫ А вообще сервис интересный. Я вот увидел, что интересующий меня телефон подешевел на 40 долларов))


    1. VitaliPA Автор
      12.11.2017 11:00

      Если честно, то я не совсем понимаю, какое преимущество есть у виртального хостинга по сравнению с выделенным сервером, что бы это решало какие-то проблемы. Если не сложно, поясните, пожалуйста.


      1. onlinehead
        12.11.2017 13:34

        Мне сложно говорить за виртуальные хостинги «средней руки», но если взять, к примеру, пресловутый AWS, то львиную долю вещей, таких как хранение данных (DynamoDB кажется вам бы подошла, которая даже в бесплатном лимите позволяет 200 миллионов операций записи в месяц, чего хватит к примеру на те же 200 миллионов обновлений цены), вопросы безопасности (ELB, хранение сертификатов, шифрование данных), автоскейл и spot-инстансы, хранение статики и CDN, DNS, менеджмент конфигураций и еще кучу всего он решает из коробки, по весьма разумным ценам и с оплатой по факту использования.


        1. VitaliPA Автор
          12.11.2017 13:47

          AWS, я, конечно, не могу тут спорить, это очень хорошо. Но пока выбор был сделан в пользу выделенного сервера. Возможно, в будущем будет использоваться именно AWS.


        1. willyd
          12.11.2017 21:04

          Все упрется в скорость записи. Нужно будет докупить CU чтобы трекер мог вкладываться в объемы ежедневного обновления.
          aws.amazon.com/dynamodb/pricing/#pricing-example


          1. onlinehead
            13.11.2017 01:06

            Да, вполне возможно. Я, по понятным причинам, не могу сказать, сколько товаров вам необходимо обновлять ежедневно, но учитывая что у вас есть статистика запросов в сервис, думаю вполне можно обновлять не каждый товар каждый день, а выделить определенный топ, который скорее всего будет на порядок меньше. Вообще градация детализации — хороший способ срезать нагрузку практически без потери качества предоставляемых данных.
            В целом, ежедневное обновление, в моем представлении, нужно в топ-1000 каждой катеории + те товары, на которые есть подписки. Возможно не 1000, но хотя бы на те товары, которые заказывали хоть 1 раз в последнюю неделю-две.
            Тогда и дополнительных CU будет нужно немного. Плюс — CU можно брать только на то время, когда они нужны, в случае циклических обновлений это легко планировать.


            1. willyd
              13.11.2017 01:35

              Я не имею отношения к данному сервису. Просто на пальцах посчитал нагрузку.
              На данный момент организатор заявляет о 12 миллионах товаров по которым можно получить данные. Чтобы за сутки обработать 12М запросов, вам нужно обрабатывать порядка 150 запросов в секунду. При условии, что у вас 24/7 будут крутиться скрипты трекера. Наверное, при желании, можно оптимизировать.
              ТС наверное виднее, если он выбрал свое железное решение. Мои расчеты, сделаны на коленке, нужно еще учитывать хранилища, трафик, которого нужно относительно много для работы трекера и т.д. В первом приближении, я бы выбирал облачное решение, навскидку только сервер должен был потянуть 2000 — 3000 USD (в самой легкой конфигурации).


              1. VitaliPA Автор
                13.11.2017 08:07

                Результаты забираются пачками не по одному товару в запросе. Потому количество запросов меньше. Но и забрать надо не за сутки, а за несколько часов, как можно быстрее, хотя бы что бы можно было посчитать статистику. На нее тоже время нужно. Сейчас это два отдельных этапа, что бы как можно быстрее произвести запись и что бы у посетителей информация за сегодня появилась как можно быстрее хотя бы по ценам. Но количество операций записи намного больше просто потому что данные для каждого товара изначально делятся на часто обновляемые и редкообновляемые.
                Количество операций. Вместе с поисковиками пока максимум что было — это больше 200 операций чтения/записи в секунду. При этом очень много 10 мегабайтных файлов карт (карты большие из-за языковых пометок в них), среднее время отдачи которых одна секунда +- несколько десятых. Среднее время отдачи страницы при этом 0.7 секунды +-. Тестировалось все и при намного больших нагрузках. По показателям все было хорошо. Так что запас пока есть. Трафика да, нужно много, не 1 терабайт в месяц.


                1. onlinehead
                  13.11.2017 13:55

                  В целом, калькулятор показывает, что 200 записей/с по 1кб можно взять за $300 сразу + $28 ежемесячно на год (для проставления цены вроде как достаточно бы было). Но если еще чтение посчитать и индексы посчитать, то думаю база гигабайт на 80 потянет долларов на 100 в месяц.
                  А входящий трафик в Амазоне бесплатный. А карты лучше раздавать через CDN, раз они такие тяжелые.


            1. VitaliPA Автор
              13.11.2017 07:59

              Как выделить топ я пока не думал. Могу только сказать, что пользователи ищут даже такие товары, которые через обычный поиск на AliExpress.com очень сложно найти по каким бы то ни было параметрам или фильтрам просто потому, что есть категории с миллионами товаров. Как они их находят — я не представляю, но такое случается.


  1. VitaliPA Автор
    12.11.2017 11:08

    Немного оффтопика, думаю, уже можно. Хочу сказать спасибо модератору или модераторам, которые рассматривали эту статью для публикации. Не столько за ее размещение, сколько за ее редактирование и приведение в некоторых местах к более нормальному виду. Честно говоря, просто не ожидал, что Вы так отредактируете. Спасибо!


  1. Ezhyg
    12.11.2017 12:08

    Можно вам задачу подкинуть?
    С валютами «пошаманить», а то доллары (и евро) вроде и стабильнее, но иногда нужна «наглядность» или нужно одновременно смотреть «много» товаров и иногда лучше, чтобы цена была в рублях.
    Хоть у меня и стоят расширения для конвертации, но они не обязательны и на мобильных устройствах могут и не работать.

    А сервис — клёвый, обалденный, чёткий, потрясающий, полезнейший и так далее :)


    1. VitaliPA Автор
      12.11.2017 12:32

      Конечно, я всегда рад новым идеям и пожеланиям. Если искать по ключевым словам или на страницах категорий, то там цена показана в US$ и Российский рублях. Это для ru сабдомена, то есть, если открыт сайт на русском языке. Для европейских языков на этих страницах цена показывается в долларах и евро. На страницах самих товаров цена видна только в долларах и евро. Все это связано с ограничениями на самом AliExpress. Пока сделать по другому не получится. Но они обещают провести улучшения у себя и тогда, возможно, можно будет добавить еще и другие валюты.

      За Вашу оценку — спасибо! Действительно приятно, что сервис Вам нужен и понравился.


      1. Ezhyg
        12.11.2017 14:12

        Блин. Теперь стало понятно, что меня запутал тот самый плагин конвертации в моём браузере :D

        Тогда ещё в копилку, мне нравится русскоязычность вашего сервиса, но Али я предпочитаю смотреть на английском (в 99% случаев), по понятным причинам «ужасТного» крипо… криво… в общем гуглоперевода :). Поэтому было бы клёво иметь возможность получать названия и описания товаров на языке отличном от языка сайта.


        1. slavius
          12.11.2017 15:16

          Для английского описания есть английская версия;) Просто я тоже предпочитаю английское описание, и автоматом перешел с русского (ru.pricearchive.org) на ENG (www.pricearchive.org)


          1. Ezhyg
            12.11.2017 15:21

            Но вы ведь не ставите англоязычный браузер, ради просмотра англоязычных страниц, не используете англоязычную просматривалку документов или читалку книг, для чтения их на английском?
            интерфейс =/= содержимое
            И вообще, это же идея-пожелание, в копилку.


            1. VitaliPA Автор
              12.11.2017 16:24

              Я за то, что бы сделать интерфейс пользователя более удобным, какие бы пожелания не были. За Вашу идею — спасибо! Это можно будет реализовать. Записал в to do лист.


  1. pashist007
    12.11.2017 12:33

    Стоимость доставки не учитывается? Понял.


    1. VitaliPA Автор
      12.11.2017 12:35

      Да, стоимость доставки не учитывается, потому что AliExpress не отдает эту информацию. Ее, к сожалению, пока нужно смотреть самому на странице нужного Вам товара.


  1. luxferre
    12.11.2017 13:28

    всё это бесполезно полностью, потому что при покупках «сейчас хочу» на истории 50 лет все колебания устаканиваются


    1. Ezhyg
      12.11.2017 14:19
      +1

      потому что при покупках «сейчас хочу»

      А если мне нужен товар сейчас, но им торгуют 48 продавцов, с разной, пусть и не сильно отличающейся, ценой?

      на истории 50 лет

      Вы сейчас шутите или серьёзно?


    1. AllexIn
      12.11.2017 21:16

      Если вы обратите внимание на дату, которая была год назад и на дату, которая есть сейчас, и на события связанные с этой датой — полезность сервиса станем вам очевидной.
      Намекну: Фальшивые скидки.


  1. slavius
    12.11.2017 15:17

    Отличный сервис! Отличный интерфейс! Успехов!


    1. VitaliPA Автор
      12.11.2017 16:25

      Приятно слышать, спасибо!


  1. FerZ_174
    12.11.2017 16:25

    Если не вдаваться в подробности привязки отслеживания на Алиэкспресс, а возможно ли сделать такую привязку к крупным Российским магазинам бытовой техники (Эльдорадо, Мвидео, Ситилинк, ДНС). Было бы очень полезно смотреть за их «акциями» и «распродажами»)


    1. VitaliPA Автор
      12.11.2017 16:27

      Это идея для другого подобного сервиса. Возможно, ее кто-то реализует. Или уже реализовывает.


  1. Shrizt
    12.11.2017 21:31

    Имхо, без плагина для браузера, коих уже десяток, ваш сервис не конкурентоспособен. Просто я вижу ценник сразу заходя на страницу товара — и это согласитесь совсем другой уровень удобства.

    Непонятно почему не все товары в результате есть в базе (я вот хотел посмотреть достаточно популярный — www.aliexpress.com/item/Amazfit-Bip/32827343527.html — а его не оказалось).

    Возможно нет смысла мониторить каждый день, что могло бы оптимизировать нагрузку.
    Кстати большинство сервисов плохо работает с опциями товаров (типа цвет, размер, страна отправки, тех. характеристики) которые прилично влияют на цену, от этого график цены как то скочет. Ваш пока не исключения — но мог бы быть.

    Самый главный вывод (насчет рассчета сил на вывод на рынок) — я думаю вы сделали.
    Для меня ваша работа — понятна и вызывает большое уважение.

    Если есть еще идеи — готов поучаствовать в качестве эксперта и финансово.


    1. VitaliPA Автор
      12.11.2017 22:37

      Я уже писал тут в ответах по поводу выбора в пользу сайта, а не браузера. Повторюсь. Сайт бывает нужен тогда, когда выходишь в интернет с того устройства, где плагин не установлен. К тому же, в плагин было бы неправильно помещать ту информацию, которую можно показывать на страницах сайта. А она будет и ее будет много. В этом плане сайт намного удобнее и универсальнее. Я ни в коем случае не спорю о необходимости и удобстве плагина. Тут я с Вами, конечно, согласен. Просто я пояснил почему сайт.

      По нагрузке — сейчас нету никаких проблем с нагрузкой. До пикового количества запросов еще очень далеко, даже с одновременными запросами ботов и сбором данных. Поэтому нету смысла специально пропускать какие-то дни. Да и неправильно бы это было.

      Про «большинство сервисов плохо работает с опциями товаров...» включая Прайс Архив — есть такое, но сейчас собирать эту информацию не представляется возможным, потому что AliExpress ее просто не отдает. Возможно, будут отдавать в будущем, а может просто хотят, что бы эта информация была только на их сайте.

      Не все товары есть в базе, потому что всего товаров больше 30 миллионов и идет постоянное удаление и добавление, обновление. Прайс Архив собирает информацию о самых популярных товарах по мнению AliExpress. Собирать информацию обо всех — я бы рад, но AliExpress не дает такой технической возможности. На самом деле, там не мало нюансов при работе с ними. И в том, что по Вашему товару не оказалось данных, я проверил — проблема на их стороне. Именно AliExpress сейчас не отдает данные по этому товару. Но, как я писал выше, подвижки есть и, возможно, уже скоро почти не будет случаев, когда пользователи не получают нужную им информацию.
      По остальному — спасибо за отзыв и спасибо за предложение. Буду иметь его ввиду.


  1. Tomasina
    13.11.2017 01:46

    Вот опять вы опоздали с публикацией. Что в том году, что в этом.
    Такой материал надо выкладывать ДО 11.11, хотя бы за сутки — тестеров и пользователей было бы на порядок больше (шире зона охвата).


    1. VitaliPA Автор
      13.11.2017 08:17

      В общем-то Вы правы, да. Можно было раньше, не совсем рассчитал время на написание статьи.


  1. eugenius_nsk
    13.11.2017 07:21

    А можно добавить ещё www.banggood.com? Тоже очень неплохой аггрегатор продавцов, и при этом цены зачастую интереснее, чем на AliExpress.


    1. VitaliPA Автор
      13.11.2017 08:18
      +1

      Я бы с радостью и его рассматривал, но у них пока нету нормальных средств по сбору информации. Может быть позже.


      1. eugenius_nsk
        13.11.2017 08:30

        Будем ждать)


  1. SlavaSA
    13.11.2017 08:18

    извините, но так и не нашел ссылку на Ваш, сайт… посмотреть то его можно?


    1. VitaliPA Автор
      13.11.2017 08:19

      Во второй части статьи есть несклько ссылок. Но раз Вы просите, то и тут размещу ссылку на главную — Прайс Архив


    1. Ezhyg
      13.11.2017 15:16

      Нипонял, вот это не достаточно ссылочно?

      Смотрим сюда. Оставляем активными только два кружочка — «Подешевело» и «Подорожало».
      Есть еще такая вот интересная страница.
      Посмотрите на графики и на какую сумму меняются цены. Раз, два, три.

      В — Внимательность! :)

      Хотя… пусть будет больше ссылок :).


      1. willyd
        13.11.2017 15:19

        Я думаю, имелось ввиду, что сервис не гуглится по названию.
        www.google.ge/search?q=прайс+архив
        Сутки назад только проиндексировался на пикабу.


        1. VitaliPA Автор
          13.11.2017 20:59

          Да, не гуглится. Как я и говорил, гугл плохо относится к сайту. Подозреваю, что из-за отсутствия ссылочного. Пока только яндексится.


  1. erazor
    13.11.2017 20:59

    Не очень понятно как работает сортировка по цене в результате выдаче поискового запроса — вроде как ставлю "Цена: от низкой до высокой", а товары идут в разнобой: 1004.73 RUB, 965.59 RUB, 980.88 RUB, 968.65 RUB…
    А в целом — отличный сервис! Добавлю в закладки


    1. VitaliPA Автор
      13.11.2017 21:00

      Приведите, пожалуйста, пример запроса. Я постараюсь объяснить, почему результаты так показываются.


  1. erazor
    13.11.2017 22:13

    Например вот так


    1. VitaliPA Автор
      13.11.2017 23:05

      Спасибо за пример. Посмотрите, пожалуйста, цену, которая первоначальная, без скидки. Она серым цветом и перечеркнута или красным цветом, когда товар продается без скидки. Сортировка идет по ней. Я посмотрю, можно ли сделать сортировку по цене со скидкой.


  1. VitaliPA Автор
    15.11.2017 10:00

    Я хотел бы оставить послание тут владельцу IP адреса 139.59.151.237 и возможным другим людям. Перестаньте, пожалуйста, то ли парсить то ли пытаться повесить сайт Прайс Архива. Я долго думать не буду — просто напишу заявление в соответствующие органы. А там, как минимум, придам огласке — кто Вы. О Вас узнают многие. Будет очень неприятно. Вам это нужно?