_SP_

Рейтинг
381
Регистрация
24.03.2008

В 90% случаев "движки" лепят только потому, что это позволяет взять с заказчика больше бабла. Маленькие-средние проекты часто вообще не имеют динамического содержимого.

Да и большие тоже, имеют его немного.

Говоря о статике, речь разумеется о том, что отдается вебсервером.

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

Но тут надо думать, головою. Что ныне непопулярно.

Поэтому проще накатать CMS и пусть будет так, как получилось.

Алексей СДЭК:
Поверьте, Вы ошибаетесь, в нашей компании много франчайзи, которые очень ответственно относятся к своей работе.

Т.е. косячат даже и не франчайзи, а основные структуры :) ?

mendel:

Единая инфраструктура это что?) Импорт/экспорт с 1С это уже единая инфраструктура. Я же говорю про единую архитектуру.

У вас единая с 1С архитектура ?

mendel:

Тут проще. Никто не требует чтобы ваш бекэнд жил на том же сервере что и шоп. Но когда все части системы написаны на одном фреймворке и т.п. - это упрощает поддержку.

У вас ешоп написан на 1с ?

О какой единой архитектуре можно говорить, когда действующий бизнес как правило

УЖЕ имеет свою бухгалтерию и свой склад. И переписывать это всё ради интернет-магазина

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

mendel:

И кстати слегка оффтоп конечно, но вы со своей бухгалтерией и складом тоже сильно ограничиваете нишу. У нас сейчас американский клиент - розничная сеть работающая в большинстве штатов. Т.е. не маленькая. Видели бы вы их склад и бухгалтерию - ад кромешный. Но им хватает. Простота бухучета и бюрократия работающая на бизнес а не против - всё сглаживает. А то что всё криво так это наша проблема а не клиента. И то как интегрировать кучу разных сервисов (включая бухгалтерские программы и т.п.) без использования "а тут у нас мальчик в экселе быстренько переконвертирует" - это тоже наши проблемы а не его.
Для всего реально хватает вполне простых решений, и для меньшего размера магазина, не сетевого вполне хватило бы для всего - простенького склада и пары стат.отчетов в боксовом шопе.

Я чем дальше, тем меньше понимаю, что у вас делает интернет-магазин, если бухгалтерию

и склад ведет что-то еще.

Для чего кроме выборок по параметрам вы используете базу данных именно в интернет-магазине ?

Что в ней вообще хранится и зачем ?

Это ведь отдельный сервер у вас с отдельной БД ?

mendel:

тут у нас мальчик в экселе быстренько переконвертирует

Вы эээ... в интернет-магазин через эксель что-ли данные вставляете ?

Зачем ? Я когда пользовался коробкой генерировал просто SQL-скрипт, который вставлял в базу

всё, что нужно, если этого немного то еще и в одну транзакцию.

Ума не приложу, зачем может мальчик с экселем понадобиться.

mendel:
Коробки, особенно бесплатные - кривые. С этим мы определились еще в прошлом году. Да, падают при каждом ДДоС. И что?

Да а гдеж других кроме коробочных взять.

Самопис от дяди васи еще хуже... самопис под заказ = чумовые убытки.

Особенно если писать толстый бэкэнд, вместо тонкого фронтэнда.

mendel:

У меня где нужно используется кеш, а где нужно - база. Даже если база используется в 0.1% случаев, то она у меня есть. У вас же есть только кеш. Любое изменение у меня это разовый пересчет страницы когда понадобится, у вас же - жди пока будет пересчет.

Ммм... всё никак не запущу нагрузочное тестирование именно генерации... подозреваю ждать надо будет 1-2с на каждые 1000 страниц. Да, вы правильно заметили - я сам своим "кешем" управляю. Тогда, когда надо. А когда не надо, тогда не управляю.

mendel:

fail2ban и другие инструменты работают не хуже рук.

А толку-то... сервис при этом работать перестает.

mendel:

Вы этим форумом пользоваться пробовали?) Поиск даже для авторизованных - именно так и закрыт, и ничего.

У вас закрыты части магазина для пользователей капчей или таймаутом :) ?

И эээ... получается продавать что-то ?

mendel:

А вы? У вас то как раз "только то что в кеше, остальное - не судьба". Сделайте мне поиск по произвольному атрибуту по 100к товаров без базы. Посмотрю на вас)

А у меня всё в кеше.

К счастью, в моей реальности не требуется искать по 100к товарам.

Было бы нужно, скорее всего забрал бы всё в память и отдавал неким демоном.

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

И то, если очень аккуратно себя вести.

mendel:
Crawl-delay никто не отменял.

Угу... я тоже так думал, ровно до момента когда яндекс пришел.

Причем ни до, ни после проблем с Crawl-delay не было, боты из сетей яндекса итп.

mendel:

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

Тогда не очень понятно зачем вы "слили" кучу времени на свой "толстый бэкэнд", если ничего

кроме обслуживания веб-запросов пользователей он не делает. Я-то грешным делом думал,

что вы ратуете за единую ИТ-инфраструктуру в рамках которой вы не только интернет-магазин,

но и все остальные задачи пусть убого, но решаете (как это пытаются делать коробочные

варианты).

mendel:

Даже не представляю как вы могли так умудрится. Совсем не представляю.

А это не я. Вы возьмите из топ 10 коробочных движков и увидите сами что и как работает.

Нет, от них можно "отпилить ножовкой" лишнее, но я уже теперь выкинул всё целиком.

mendel:

У меня без оптимизаций, без половины индексов, без кеширования, без жадной загрузки и т.п., на сложных страницах выходит в пределах 0.25с.

Считаете, что не загнетесь от 5 запросов в секунду ?

Сколько ботов надо, чтобы это было похоже на действия пользователей ?

Скажем бот раз в 30с будет что-нибудь выбирать.... 30*4... 120 штук всего ?

И это правда крутое достижение ?

mendel:

А при чем тут урлы? Кешируют данные а не урлы, если пачка запросов будет одинаковая, то всё пойдет из кеша.

Да с чего бы она будет одинаковая. Не будет. Что-то вы сможете закешировать,

что-то нет. Да и размер кеша не бесконечен.

Однако, если большинство данных у вас не меняется, то непонятно зачем вы забираете

их из базы и кешируете :). Понимаете :) ? Чем лучше вам помогает кеш, тем менее

вам вообще БД нужна. Чем больше она реально нужна, тем меньше пользы от кеша.

mendel:

Таких мест где не кешируется ответ, да еще и полсекунды на ответ - мало. За ними приглядывают.

Отключать на ходу что-ли будете ?

mendel:

Процессоров много, одновременно все сайты не нагружают, так что пиковые 120 пользователей на сайте одновременно

Да хоть трижды-выделенный сервер. К вам когда-нибудь DDOS приходил ?

Хоть раз ? От школьника с 1000 проксями хотяб. И не такой, который просто льёт флуд.

mendel:

С другой стороны выдавать атаку в сотню IP давящих на слабое место - дорогое удовольствие. Допустим вы выдаете один запрос в 10 секунд. Чаще - забаню буквально со второго или третьего запроса.

Вы баните пользователей запрашивающих страницы чаще чем раз в 10 секунд ?

Really ?!?!?!

Или вы на дебилов рассчитываете, которые будут от вас одно и тоже забирать.

К вам никогда не приходил я.бот ? С ним бывает иногда, когда он "бесится" и приходит

сразу штук 50 пауков забирая тысячи страниц в минуту. Очень знаете-ли позволяет

переосмыслить тонкие места...

Скажите, а когда я буду долбить ваш интернет-магазин, то ваша бухгалтерия и склад

будут насколько хорошо себя чувствовать ? Учитывая, что я долблю ваш "толстый бэкэнд"

прямо из интернета. Не пугает перспектива какого-нибудь 29 декабря, в пик продаж,

оказаться без склада потому, что пришел небольшой такой ДДОС. Причем без склада для

оффлайн продаж....

mendel:

Вы опять толкаете свою ситуацию на всех. Нет никого тонкого магазина. Есть только Толстый бекэнд который у вас уже есть, а у других нет.

Честно - проблемы тех, у кого толстый бэкэнд (не дай бог еще и написан на php и лежит в сети) меня ммм... не очень беспокоят. Они уже давно на пути к банкротству, думаю в этот кризис их смоет окончательно.

Я понимаю, что вы открыли для себя ООП, полиморфизм и MVC. К слову, я уже лет 15 назад пользовался лично сделанными костылями, реализующими те самые MVC, просто без умных книжек, да и не только я. Что бизнес-логика должна быть отделена от представления - это всё придумали черт знает когда. А аналог смарти у меня был самолично написан еще тогда, когда некоторые пользователи получали www-странички заказывая их запакованными по email :).

Так что в целом вы правы, описанное вами - это всё 10-летней давности всё.

Именно поэтому у меня всё отделено :).

Понимаете ? Нет никакого толстого бэкэнда, есть тонкий бэкэнд и тонкое представление его в интернете в виде "интернет-магазина". MVC в чистом виде в общем-то. Просто на более глобальном уровне. При этом интерфейс бэкэнд - магазин очень и очень узкий.

И чтобы там не делали с магазином, бэкэнду на это пофиг, склад не встанет из-за того,

что какой-нибудь дебил в админке добавит пару неиндексируемых полей в базу на 40гб.

И магазин, кстати тоже, не падает чтоб с бэкэндом не сделали.

И, собственно, этот бэкэнд есть как правило в любой компании.

У всех есть склад, бухгалтерия итп. И им абсолютно не нужны никакие ВАШИ фреймворки, потому как они хотят использовать СВОИ, бухгалтерию вам не написать хоть тресни, склад можно конечно, тикет-системы есть неплохие готовые и как правило требуют только доточки, итд итп.

Идея, что вы построите людям всю инфраструктуру для бизнеса хороша (для вас, ибо больше работы - больше бабла). Но только пока речь идет о салоне по продаже авто, где вся инфраструктура... с гулькин нос её. Если задача среднего или не дай бог крупного размера, то шансов на то, что вы справитесь нету. Интеграторы не зря берут в этом случае миллионы евро.

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

Да это и не нужно. Для создания интернет-магазина всё это не нужно.

Для создания магазина - необходимо, но интернет тут непричем абсолютно.

mendel:

Архитектура. Должна быть. Универсальной.

Вы эээ... на борту первый день что-ли ?

Никаких универсальных архитектур не бывает. Это рассказки для акционеров.

Любая архитектура - это ограничения, и чем больше аспектов она охватывает тем

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

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

Собственно лейбмотив топика был именно в этом, нет смысла делать что-то

никому ненужное и универсальное. Это попросту не нужно. Даже использовать

это эффективно невозможно. Если изменятся требования, то безусловно надо

будет провести РАБОТУ и что-то ПЕРЕДЕЛАТЬ.

О ужас... переделать что-то при изменении тз. Какая неожиданность :) ?

Вся разница в том, придется ли вам переделывать в "тонком" магазине МАЛО,

или в бесполезно толстом ОЧЕНЬ МНОГО. Безусловно в толстом магазине что-то

можно переделать путем нажатия кнопок в админке, однако как правило это

всё работает неоптимальным и не всегда ожидаемым образом. Так что лучше...

поправить в коде прям... ей богу. Да, квалификация для этого как-бы больше

нужна, но это только видимость. Т.е. "тупой нанятый казачок" не сможет поправить

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

именно после него появятся поиски по полям без индекса в гигабайтных базах

и прочее веселье. Дураков нельзя подпускать даже к админке.

Конечно, если вы дорожите проектом. Если вы обслуживаете клиентов по принципу

"чем дешевле, тем лучше", то это путь не для вас, вам наоборот нужен битрикс и

парочка дебилов к нему для того, чтобы потом с чистым сердцем переводить людей

на другие тарифы хостинга...

ЗЫ. А как вообще народ с ДДОСом борется ? Я что-то смотрю, имея пару десятков

тысяч наименований можно секунд по 5 страницы генерить.

Этож достаточно сотни атакующих, чтобы так этим делом сервак занять, что он

"лопнет" и при свободных внешних каналах. И никакой кеш не поможет, если

опрашивать разные урлы. Да даже 0.5с на страницу - это 120 атакующих в минуту,

которые устроят "веселье".

burunduk:
товарной карточке меняться особого смысла нет при изменении цены/наличия - это бизнес, это совсем другой файл ;)

Ну зависит от того, показываете-ли вы цену.

Наличие я показывать смысла не вижу, да это цинично, но лучше пускай закажут того,

чего нет, из этого тоже можно выжать бабки.

А цену как-то придется.

Другое дело, что в задачах у меня не стоит игры с ценами на том уровне, когда люди

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

Если бы пришлось делать что-то такое в "тонком" интернет-магазине яб сделал выгрузку

из бизнес-части только нужного, т.е. только цен... и брал бы только скорректированную

цену аяксом к примеру (хотя тут есть о чём подумать). Вообще было-бы неплохо иметь

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

и выдающего их по запросу. (а не заниматься каждый раз инициализацией миллиона

скриптов и бесконечными выборками из БД по одной штуке). Можно, наверное, загнать

это всё в мемкеш кстати.... думать короче надо :).

edogs:
Повторим "надо не пытаться "запилить феррари" в каждом случае, а смотреть на задачи и где-то доставать трактор, где-то запорожец, а где-то пилить все "снуля"."

А никто и не пилит.

Лично я пилю не феррари, лично я пилю утюг - мне гладить надо.

А мне предлагают "коробки" в которых то феррари, то запорожец, то трактор.

Утюгов там нету.

Причем мой утюг неэлектрический, он на печке греется.

Таковы потребности конкретного потребителя.

Понимаете идею ?

У потребителя всегда очень скромные реальные потребности,

у вас есть два пути

1. Пытаться добиться от феррари, чтобы она начала снег сгребать,

при этом вам, возможно придется дизассемблировать прошивку бортового

компьютера, который не захочет долго ехать с маленькой скоростью итп

Ничего себе так работенка, да ? И гарантию на неё вы конечно можете

предоставить... что всё там правильно в "кишках" модифицируете...

2. Сделать устройство из двух лопат и газонокосилки, которое будет

гарантированно сгребать снег так, как вам того надо.

burunduk:

в том-то и дело что нет, ещё раз отделите бизнес логику от сайта и проблема пропадёт ;)

При моём подходе - будет надо регененировать кеш.

Однако как по мне, так это ГРОМАДНЫЙ плюс, огроменный просто.

Я регенерирую кеш тогда, когда мне надо, а не когда страницы запрашиваются.

Боты приходят на уже закешированные страницы и не ждут первой их сборки.

Да и регенерация без миллионов запросов в БД занимает очень мало ресурсов.

Учитывая то, что регененируется всё из 1 скрипта, я могу себе позволить многие

вещи делать пакетно и еще больше ресурсов сэкономить.

Попробую на днях забить всё мусором и посмотреть сколько времени будет

тыщ 100 товаров регененироваться.

Skf:
Даже в Челябинске (город-миллионник) достаточно много людей работает за 10-15 тыс/рублей в месяц.

РАБОТАЕТ или числится ?

Ну т.е. пришел, попил чаю, чёй-то поделал - ушел. Это нифига не тоже самое, что с колесами 480 минут в день корячиться...

Т.е. если вам нужна массовка - её можно нанять по 10к, но вот будут ли эти люди что-то делать кроме просиживания попами стульев ?

Всего: 6087