LINUX.ORG.RU

Интернет-магазин автозапчастей. Rails или PHP?

 ,


0

2

Добрый день. Хотелось бы получить советы уважаемых посетителей linux.org.ru по следующему вопросу: сам я давно пользуюсь php (не особо продвинуто), но в последнее время потихоньку начинаю интересоваться Ruby on Rails. Поражен его красотой и простотой синтаксиса, и не хотелось бы возвращаться к неповоротливому и монструозному php, а осваивать RoR. Но тут один знакомый, владеющий магазином автозапчастей предложил мне оказать ему помощь - сделать сайт вроде exist.ru. Дело в том, что магазины автозапчастей имеют свои особенности, для них необходимы огромные каталоги - некоторые содержат порядка 3 000 000 (трех миллионов!) наименований. Это не тривиальный интернет-магазин с несколькими сотнями товаров, с таким бы проблем не возникло. Понятно, что одному, и даже 10 людям не создать самостоятельно такой каталог «с нуля» даже и за полгода (для этого нужно анализировать данные тысяч каталогов, фотографии, артикулы, систематизировать полученную информацию). Но есть выход - некоторые крупные сервисы каталогов автозапчастей сдают, что называется, «в аренду» каталоги, их можно подключить к своему сайту, используя скрипты на все том-же php. Все возвращается на круги своя. Но в целом задача интересная (и хорошо оплачиваемая). Скажите, реально ли сделать такой интернет-магазин, как указанный выше exist.ru используя RoR, или не стоит даже и думать об этом, а воспользоваться для выполнения этой задачи php?

используя скрипты на все том-же php

ох уж эти пхпшники.. каким образом «скрипты на все том-же php» реализуют доступ к каталогу?

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k

special-k, извините, я не сильно разбираюсь, так как впервые столкнулся с такой задачей, и представляю ее еще очень туманно. Но вот один из найденных мною подобных модулей - каталогов (надеюсь уважаемые модераторы не посчитают это рекламой) - tecdoc-module.com, подключается к cms написанным на php.

DmitriyIvanov
() автор топика

Скажите, реально ли сделать такой интернет-магазин, как указанный выше exist.ru используя RoR, или не стоит даже и думать об этом, а воспользоваться для выполнения этой задачи php?

3 000 000 (трех миллионов!) наименований

ты разве не понимаешь, что эти миллионы будут в СУБД, и скрипты никаким боком тут не касаются. Какая разница, на чём скрипты? Да хоть на BF! Вот ежели-бы 3М юзеров в секунду…

drBatty ★★
()

Сделать реально, но на мой взгляд PHP более зрелая технология, с которой вы хорошо знакомы и использовать RoR только потому, что кто-то пишет, что она лучше или вам показалось, что можно печатать меньше символов, не совсем разумно. Если, конечно, ваш друг не готов платить за ваше обучение новым технологиям или вы не делаете этот проект just for fun.

А доступы к каталогам скорее всего реализуются каким-ниудь веб-сервисом и используемый ЯП не будет мешать этому. Разве что для PHP у поставщика могут быть готовые примеры и специалисты, готовые помочь в разрешении проблем, а с Ruby вы можете быть предоставлены самому себе.

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

Legioner ★★★★★
()
Ответ на: комментарий от special-k

А что, API для «ох уж эти пхпшников» отменили?

реально ли сделать такой интернет-магазин?

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

Axonom
()

Что лучше знаешь, на том и пиши.

netcat ★★
()

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

Tark ★★
()
Ответ на: комментарий от Legioner

Благодарю за такой совет, я думал об этом, что для выполнения задачи с созданием интернет-магазина автозапчастей придется использовать php, но ничто не мешает мне использовать RoR что называется «для души», например для личного блога, и подобных несложных задач. Наверное я действительно не готов пока к таким сложным задачам на малознакомом языке.

DmitriyIvanov
() автор топика
Ответ на: комментарий от Axonom

было сказано не через апи, а через пхп. Помоему там вообще iframe подразумевается, а через админку только цены забиваются, вероятно json..

special-k ★★★★
()
Ответ на: комментарий от DmitriyIvanov

special-k, извините, я не сильно разбираюсь, так как впервые столкнулся с такой задачей, и представляю ее еще очень туманно. Но вот один из найденных мною подобных модулей - каталогов (надеюсь уважаемые модераторы не посчитают это рекламой) - tecdoc-module.com, подключается к cms написанным на php.

И этот человек, не понимающий, каким боразом осуществляется взаимосвязь между двумя сервисами в интернете, заявляет о монстроузности PHP и божественности RoR. Ха.

VirRaa ★★★
()
Ответ на: комментарий от special-k

было сказано не через апи, а через пхп

Было сказано:

их можно подключить к своему сайту, используя скрипты на все том-же php

Как осуществляется доступ к конкретному каталогу, решать его владельцам. Вышеупомянутый предоставляет свой модуль на php. А Вот многие, и, ИМХО, более правильно, предоставлять API. А вот здесь уже не важен язык, который будет его пользовать, php или Ruby. Хоть на С пиши.

Кстати, ТС, RoR - это не язык, а фреймворк.

Axonom
()
Ответ на: комментарий от VirRaa

Насколько я понимаю, те, кто предоставляют каталоги «в аренду», не допускают подключения к своей СУБД напрямую, а реализуют это с помощью каких-либо скриптов на php, и консультации по подключению дают соответствующие.

DmitriyIvanov
() автор топика
Ответ на: комментарий от DmitriyIvanov

а реализуют это с помощью каких-либо скриптов на php

Почитай в интернете на тему API, curl, xml, json и прочих коммуникаций между сервисами.

VirRaa ★★★
()
Ответ на: комментарий от special-k

И ежам понятно то что ты сказал. Я солидарен с DmitriyIvanov.

Два предложения противоречат друг другу. Уж определись.

Axonom
()
Ответ на: комментарий от Axonom

DmitriyIvanov VirRaa
TC далековат от понимания что такое api, использовать неготовое решение ему не желательно (на любом языке).

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 2)
Ответ на: комментарий от Axonom

Читаю сверху(вниз), например ".. комментарий .. special-k" и думаю, что это автор. Интересно, я один такой..

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 2)

Без разницы на чем. На PHP сам наделаешь косяков с XSS/SQL injection, в RoR тебе их заботливо предоставят изкоробки.

xpahos ★★★★★
()
Последнее исправление: xpahos (всего исправлений: 1)

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

trashymichael ★★★
()
Ответ на: комментарий от trashymichael

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

DmitriyIvanov
() автор топика
Ответ на: комментарий от DmitriyIvanov

Думаю, за три месяца ты только готовую пышную версию нормально поднимешь и настроишь (с шаблонами и т.п.). Всегда делай заявленные_сроки * 3.14 ;)

trashymichael ★★★
()

Да. Я на RoR сделал магазин запчастей. 6 миллионов позиций вполне себе держит. Будут конкретные вопросы - задавай. Если вопросы был «можно ли» то ответ тебе «да, можно» :)

Alve ★★★★★
()
Ответ на: комментарий от Alve

Главный вопрос: как и какие подключали каталоги? Использовали ли TecDoc online, подключали ли его с внешних ресурсов, или покупали базу в mysql? Если второе, то это кажется не совсем законным, и возможно чревато судебными исками со стороны правообладателя (возможно я преувеличиваю). Существуют ли каталоги, похожие на exist.ru, какие и как они подключаются? Пока я обратился только в catcar.info, и получил ответ:

Электронные автокаталоги запчастей catcar.info на основе оригинальных дисковых программ. По каталогам организуется сайт по предоставленному Вами домену/субдомену. С последнего шага каталога – номера детали, посетитель каталога возвращается в Ваш интернет-магазин, в поиск по коду (либо на другую страницу по согласованию с Вами).

Но это не совсем меня устраивает, они не очень удобно выглядят. Идеально было бы сделать что-то, именно похожее на exist.ru.

Спасибо.

DmitriyIvanov
() автор топика
Ответ на: комментарий от DmitriyIvanov

Идеально было бы сделать что-то, именно похожее на exist.ru.

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

как и какие подключали каталоги?

Пробовали подключать TecDoc, однако впоследствии отказались. Клиент не хочет (и правильно делает) использовать купленную у «дяди» mysql-базу, чтобы в один прекрасный день за одно место не схватили кто_надо, а оригинальный доступ дороговат. Поэтому набили собственную базу. Если быть откровенным в TecDoc'е есть множество того, что в конкретном магазине НИКОГДА продаваться не будет:)

Лучшая база кроссов - своя база кроссов.

По поводу PHP - да, он вам будет нужен в любом случае, потому что много поставщиков имеют SOAP-сервисы, которые нормально работают только через php'шный скрипты. Но это совершенно не проблема, вызвать из руби скриптик на php, который получит данные товара и вернёт их обратно руби. Работает это быстро и вполне надёжно.

По поводу миллионов позиций. Во-первых, используйте Postgresql, а не черезжопный mysql, во-вторых грамотно создайте таблицы и индексы. И будет у вас хоть 50 миллионов вполне нормально хранится и быстро находится. Тормозит база только если она криво спроектирована. А руби/рельсы вполне годятся для этого дела. Хотя бы потому что сайт на РоР намного проще и легче дополнять/модернизировать, что PHPшный.

Alve ★★★★★
()
Ответ на: комментарий от Alve

Благодарю, вот только как вы верно заметили, на это потребуется множество человекочасов, а в моем случае планируется что этим будет заниматься один манагер, да и то совмещая. Идеальным было бы ориентирование на одну-три марки, тогда можно было бы сделать собственную базу, привлекая, например, двух-трех фрилансеров-контентщиков. Но когда магазин торгует всем, начиная от ЗАЗ и заканчивая LEXUS, начинаются проблемы.

DmitriyIvanov
() автор топика
Ответ на: комментарий от DmitriyIvanov

когда магазин торгует всем, начиная от ЗАЗ и заканчивая LEXUS

...у него обычно должны быть средства для инвестиций в будущее. Если нет, ССЗБ. Ваша задача, как девелопера, сделать движок и интерфейс, дальше пусть набивают /поддерживают базу как хотят, верно?

Alve ★★★★★
()
Ответ на: комментарий от Reaper

Я не смог заставить gem 'savon' нормально принимать инфу от большинства web-сервисов. PHPшная либа для wsdl работает отлично. Да, я ленив, свою реализацию wsdl на руби писать не стал.

Alve ★★★★★
()

Перечень не слишком длинный, поовторить функционал пхпшного модуля вполне можно успеть. Но RoR советую изучать на менее объёмной задаче.

Reaper ★★
()
Ответ на: комментарий от Alve

Ну амбиций у него точно навалом.

Благодарю за советы!

DmitriyIvanov
() автор топика

Однозначно PHP. По той причине, что ни в рельсах ни в пыхе ты не бум-бум. Сейчас стандарт разработки сайтов это пхп, вот и делай на чём все делают. Почему? Да потому что нормального пхп-программиста найти легче чем нормального, например, питон-программиста. И софта для этого намного больше чем для остальных языков. Почти все компании по разработке сайтов пишут на пыхе. Так что с ним проблем не будет.

А то что в базе три миллиона товаров - это уже вопросы проектировки БД и к самому языку они не относятся. Кстати, если БД действительно огромная то дело лучше доверить хорошим кодерам которые напишут свой движок для сайта.

pascal9x
()

ПХП и готовое решение (не пиши своих лисапедов). Плюс пару-десятку скриптов для импорта/парсинга этих ваших каталогов.

fdog
()
1 декабря 2014 г.
Ответ на: комментарий от Legioner

А для того чтобы были каталоги автозапчастей, их можно самому создать, купить уже готовые или самый простой вариант это взять просто в аренду к примеру, на этом сайте http://www.ilcats.ru

q787
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.