danforth

danforth
Рейтинг
153
Регистрация
18.12.2015
LEOnidUKG:
Ну как минимум включите лог медленных запросов, которые больше 2-х секунд выполняются. И смотрите их. Далее расстановка индексов.

Лог медленных запросов включал, больше 1 секунды редко что выполняется (если не долбануть одновременно на не закешированный запрос), также включал лог запросов без индексов. Тогда начинает сыпать всяким, например вот:

# Query_time: 0.000676  Lock_time: 0.000067  Rows_sent: 47  Rows_examined: 208

# Rows_affected: 0
# Full_scan: Yes Full_join: No Tmp_table: No Tmp_table_on_disk: No
# Filesort: No Filesort_on_disk: No Merge_passes: 0 Priority_queue: No
SET timestamp=1509474982;
SELECT * FROM shop_category WHERE (
`left_key` >= 283 AND
`right_key` <= 376
) AND (type = 0);

SELECT c.* FROM shop_category c LEFT JOIN shop_category_routes cr ON c.id = cr.category_id WHERE (c.`depth` <= 2) AND (c.status = 1) AND (cr.route IS NULL OR cr.route = 'shop.quasar.cc/*') ORDER BY c.`left_key`;

# User@Host: danforth[danforth] @ localhost []
# Thread_id: 771 Schema: shop_db QC_hit: No
# Query_time: 0.000286 Lock_time: 0.000073 Rows_sent: 5 Rows_examined: 6
# Rows_affected: 0
# Full_scan: Yes Full_join: No Tmp_table: No Tmp_table_on_disk: No
# Filesort: No Filesort_on_disk: No Merge_passes: 0 Priority_queue: No
edogs:
Как и в любом другом языке вида "запустился-умер" - не хватает одного сервера - поставил второй, половину запросов (вычислений) туда отправляешь, половину сюда - всего делов. Не хватает двух - поставил 10.

Это не распараллелить вычисления. Я имел ввиду, что если есть массив данных и их нужно обрабатывать, то нельзя просто взять VPS +2 ядра и все пойдет быстрее. Пойдет, но не на столько, на сколько увеличилась в сумме производительность. Fan-In Fan-Out, Producer-Consumer: все это тут не прокатит.

jaan777:
И кстати, php 7 намного более производительный, чем 5 версия. Не уступает питону и почти не уступает RoR. Особенно заметен рост производительности Php 7 при работе с большими массивами данных, как в нашем случае. Конечно, на Elixir'е в сочетании с Phoenix'ом, было бы намного круче реализовать веб-приложения, но где спецов найти и сколько будет стоить разработка на эликсире?

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

Прямо вижу чью-то речь передали. Но не свою.

Вы первых, PHP7 - язык, RoR - фреймворк. Сравнили теплое с мягким. Во-вторых, PHP не может почти не уступать Ruby, так как он однозначно быстрее Ruby. Вы собираетесь Real-Time рассчеты делать на PHP? Сомнительная затея. Под числодробилки берут язык cо статической типизацией, можно даже без GC. Ну а про уникальные фичи - достаточно лихо. Настолько уникальные, что вас, PHP-шников, никто не сможет повторить? Или вы их после релиза никому не покажете? На такие случаи есть NDA.

Почитайте про горизонтальное масштабирование, когда усвоите и адаптируете под горизонтальное масштабирование, тогда запускайтесь на самой простой VPS, при нагрузках добавляйте в кластер сервера. Так будет и дешевле и быстрее работать, и главное - возможность масштабироваться. Сейчас если вы даже возьмете супер-производительный сервер, при росте трафика единственное, что вам останется — выдирать волосы из головы, потому что быстро распаралеллить PHP по инстансам практически невозможно, придется переписывать на лету, а когда трафик идет на сайт, это не такая простая задача. Оптимизация — это то, что нужно делать превентивно, потому что когда припечет, будет уже поздно. Тем более, что у вас все крутится вокруг финансов.

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

To finish first, you must first finish.

edogs:
уменьшите паранойю. Покажите нормально запросы которые делаете, а не ***, скажите сколько строк в таблице, покажите структуру и т.д.

Поддерживаю. Желательно тут http://sqlfiddle.com/

Какой есть способ публикации кусков кода в записях, вот мне нужно допустим вставить небольшой кусок стилей, javascript или PHP. Это не для целей инъекции, мне нужно чтобы юзеры могли просто видеть код, копировать и вставлять себе на сайты, мне не нужно чтобы он срабатывал. Полез в режим редактирования исходного кода, ввел <code > < /code>, визуально код вставляется, а как его через кнопочку вставлять? Ещё бы подсветку синтаксиса.

treshnyuk, у меня ноут тоже Lenovo, брал в африке в киоске. У меня знакомый работает в СЦ по ремонту ноутов и всякой техники. Он говорил мне, что у леново самая хорошая заменяемость запчастей, самые несерьезные поломки, и че-то там с текстолитом связано, за охлаждение тоже говорил что одна из самых продуманных систем, как и на HP. За HP говорил что там проблема с запчастями (меняется пол ноута в сборе), но в целом качество хорошее. В общем, по его рекомендации и брал себе леново. Не скажу что супер, но и не лажа. Греется не больше других, тупит знатно (подозреваю что винт на 5к оборотов), корпус немного хлюпенький. В следующий раз возьме себе что-то другое. На сколько я знаю, отзывался мой знакомый за леново, которые тогда ещё по IBM строились, в частности за линейку ThinkPad.

Сейчас взял бы себе какой-нибудь Dell, наверное.

Ни разу с таким не сталкивался, ни на Chrome, ни на Firefox.

Я люблю эксперименты, но в данном случае попахивает каким-то идиотизмом. Я опущу всякие детали, вроде зеркал сайта, и прочего. Не ясна цель эксперимента: что мы выясним в результате? Какой протокол лучше? Лучше для чего? Для SEO продвижения? А что если мне нужен HTTP/2?

Короче за тему эксперимента +, а за саму идею притянутую за уши -. Вот допустим сравнить SPA с сайт с серверным рендерингом страниц - годный эксперимент. Я бы потестил.

ziliboba0213:
PHP понятный всем язык, если задокументировать - так любой "дундук" поймет.

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

Есть такая фишка, называется vendor lock-in, в которую и попал автор. 3 месяца обсасывать ТЗ, это конечно через чур, проект пишется не с нуля, и имеются какие-никакие знания предметной области, знание того, что не нравится а что нравится. За месяц можно составить ТЗ и начать реализовывать. На чем - не важно. Качественно писать можно практически на чем угодно. PHP на долгоиграющих задачах лажовый (импорт больших файлов, постоянные синхронизации).

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

По поводу AngularJS и прочего, я бы так не горячился. Можно взять Python, так как на ряде задач он удобнее чем PHP. Если не хотите хрупкий сайт, покрывайте тестами, делайте CI, при билде автоматически прогоняются тесты - если что-то отвалилось, то на продакшен билд не пойдет. Но все это стоит денег, и не всякий интернет-магазин настолько доходный, что может себе позволить заморочится этим.

По поводу Yii2 - я б не рекомендовал брать его под магазин.

P.S. Если у вас что-то отваливается постоянно, то иногда помогает обычный ресет проекту, перенести заново на чистую установку, переписать расширенный функционал заново, правильно вписав в архитектуру. За несколько лет проект облипает легаси-кодом, который можно в сто раз лучше переписать и избавиться от большинства проблем.

Всего: 1540