
SiZE
15.02.2017
04:01:41

Aleksandr
15.02.2017
04:26:40

mrG1K
15.02.2017
05:07:34

Vasily
15.02.2017
05:31:00

Google

Vasily
15.02.2017
05:31:36

Dmitriy
15.02.2017
05:32:27

Vasily
15.02.2017
05:32:55
Можно, но будет грязновато.

Aleksandr
15.02.2017
05:33:07
не будет

Dmitriy
15.02.2017
05:33:46

Aleksandr
15.02.2017
05:34:26
advanced - слишком оверхедная попытка разбить приложение на несколько частей. Много лишнего, путающего ньюбайс

Vasily
15.02.2017
07:32:58

Sergey
15.02.2017
07:34:02
привет, как в yii1 ускорить createUrl?
у меня 200 роутов, вызываю createUrl в цикле, в итоге страница больше секунды генерируется

Vasily
15.02.2017
07:35:12
Закешить?
Вроде, есть такая возможность из коробки.

Sergey
15.02.2017
07:35:35
страницу?

Google

Vasily
15.02.2017
07:35:53
Что "страницу"?

Sergey
15.02.2017
07:36:05
страницу закешировать?

Vasily
15.02.2017
07:36:13
Роуты

Sergey
15.02.2017
07:36:21
так они и так закешированы

Vasily
15.02.2017
07:36:56
Ну, значит еще кешим, что по выше.
И т.д. пока не будет результата.

Sergey
15.02.2017
07:37:19
что за костыли

Vasily
15.02.2017
07:37:42
Кеширование - костыль?

Sergey
15.02.2017
07:38:02
конечно, оно поможет только для второго захода

Vasily
15.02.2017
07:40:04
Роуты меняются?

Sergey
15.02.2017
07:41:02
роуты нет, параметры - да

Vasily
15.02.2017
07:41:17
И как параметры изменяются?
Откуда они берутся?

Sergey
15.02.2017
07:41:42
из БД, у каждого пользователя свои

Vasily
15.02.2017
07:43:26
Ну, я пока не понимаю до конца, но как вариант: вызвать один раз createUrl() а позже заменить параметры без постоянного вызова не пойдет?

Sergey
15.02.2017
07:44:18
как определить что в строке было параметрами, а что роутом?

Vasily
15.02.2017
07:44:18
Вообще, странно. createUrl() не такая и требовательная.
Я не знаю. Я не вижу шаблона и я не Ванга.

Sergey
15.02.2017
07:44:51
когда в цикле на 100 элементов вызывается createUrl на 200 роутов, то получается долго

Vasily
15.02.2017
07:45:20
Покадите timeline лучше.

Google

Vasily
15.02.2017
07:45:35
Посмотрим, что тормозит.

Aleksandr
15.02.2017
07:50:54
Вообще, странно. createUrl() не такая и требовательная.
двести роутов - это двести лейзи объектов. для createUrl, создающего ссылку по последнему, 200-му роуту, нужно создать 200 объектов и все их обойти, пока не найдет свой роут. в цикле это будет 200 * i раз. бешеный оверехед

Vasily
15.02.2017
07:57:04

Sergey
15.02.2017
07:57:38

Vasily
15.02.2017
07:58:39

Aleksandr
15.02.2017
07:58:46

Sergey
15.02.2017
08:05:25

Aleksandr
15.02.2017
08:09:22
а у тебя yii2 или 1?

Aleksandr
15.02.2017
08:10:08
в yii2 там что-то улучшили уже. можно группировать из коробки вроде

Sergey
15.02.2017
08:10:16
yii1

Aleksandr
15.02.2017
08:10:21
тогда нет)

Sergey
15.02.2017
08:11:04
но можно было бы этот перебор делать только для первого вызова Yii::app()->createUrl

Aleksandr
15.02.2017
08:11:39

Sergey
15.02.2017
08:42:49

Antony
15.02.2017
10:01:01
Кто-нибудь делал хранилища под изображения с объединением в один файл?
Нужно на лету создать подобное для каждого пользователя. Может подскажете решения?

Aleksandr
15.02.2017
10:02:22
конкретизируй

Google

Antony
15.02.2017
10:07:26
Ну есть куча картинок.
В итоге упираюсь в лимит по количеству файлов в ФС.
Нужно складировать картинки в один файл (как делает фб, ВК итд) и доставать оттуда уже нужную картинку по смещению.
Но таких хранилищ должно быть несколько (на пользователя) с возможностью быстро создать его и складировать туда изображения.
Насколько я знаю есть решения от Яндекса подобное, но там вроде как используется одно хранилище, да и нужен вариант чуть проще. Создали хранилище, загрузили изображения, обработали, удалили.

Aleksandr
15.02.2017
10:09:09
что за картинки? пользовательские?
что за лимит по кол-ву? в первый раз слышу
ФБ, ВК так для пользовтаельских не делают.
Вкратце - дичь какая-то

Antony
15.02.2017
10:23:57
Картинки пользовательские.
Есть лимиты ext3 на количество inodes (файлов на диск)
В кратце ожидаю ответ по существу.

Aleksandr
15.02.2017
10:27:32
используйте вложенность для уменьшения кол-ва файлов в одной дире. ну не склеивать же их.

Antony
15.02.2017
10:34:55
Вложенность используется и так.
Нужна именно склейка чтобы не упираться в лимиты по inodes (количество файлов на диске), что я собственно написал.

Aleksandr
15.02.2017
10:35:48
да прекращайте уже. вы видимо не с той ноги встали, что такой вариант всерьез рассматриваете.
если вы в какой-то лимит уперлись, то явно в дире даже не десятки тысяч файлов. как вы вообще будете клеить эти файлы и выгружать их на клиента? фарс

Mr.
15.02.2017
10:39:54
мне кажется, вместо того, чтобы этой порнографией (склейкой) заниматься, лучше обойти ограничение на колличество inodes (кстати, тоже впервые слышу о таком, но, коллеги, такое существует)
на stackoverflow рекомендуют такое решение http://superuser.com/questions/585641/changing-max-inode-count-number-in-ext3-filesystem-in-cent-os

Antony
15.02.2017
10:41:37
Shared-хостинг.
Ограничение по inodes 50к.
Я бы не рассматривал склейку если бы можно было решить другим способом.

Admin
ERROR: S client not available

Nurik
15.02.2017
10:41:53

Mr.
15.02.2017
10:42:15
простите, я не так хорошо разбираюсь в linux, но inodes - это ограничение на количество файлов на директорию, или на весь путь?

Antony
15.02.2017
10:42:27

Aleksandr
15.02.2017
10:45:20

Mr.
15.02.2017
10:45:25
возможно ограничение связано с shared-хостингом? что-то мне слабо верится, что с таким ограничением на диск можно хоть что-то записать (помимо стандартных файлов linux)
я последних три года пользуюсь либо vds, либо dedicated серверами, и колличество файлов что там что там обычно превышало даже 100к на одну директорию (интернет-магазин, 30к товаров, и к каждому есть минимум 2 фото, в среднем - 3-4 фото на товар + миниатюры)

Aleksandr
15.02.2017
10:45:56
вообще шаред - это дичь в век копеечных дроплетов от DO или vscale

Mr.
15.02.2017
10:46:33
раз shared существует, кому то он полезен
просто одним проектам хватает shared, другие требуют более серьёзного железа
мне не везёт, моё на shared не работает (ибо я прошеный, люблю ssh до сервера и базу через миграции делать)

Aleksandr
15.02.2017
10:47:42
очевидно он полезен тем, кто хочет из панельки сайт развернуть. но прогер может нджинкс и сам настроить.

Google

Nurik
15.02.2017
10:49:34
Шаред это реально дичь.
Повис sshd — терпи.

Mr.
15.02.2017
10:50:03
я так прикинул... вы если будете склеивать изображения 100х100 в пачки по 100 штук, а потом их ещё и разбирать, то у вас shared заберут из-за превышения время работы процессора

Nurik
15.02.2017
10:50:54

Aleksandr
15.02.2017
10:50:55
на лету разбирать обратно в одну картинку? я думал он хочет эту матрицу 100 на 100 выводить клиенту со смещением как спрайт.
по крайней мере слово смещение прозвучало

Antony
15.02.2017
10:53:33
Lamp/lemp я могу настроить без проблем.
Смещение и длина чтобы знать откуда читать из хранилища.
Клиенту отдавать пофайлово.

Mr.
15.02.2017
10:53:54
пофайлово - то есть, резать на сервере?

Antony
15.02.2017
10:53:59
Да

Aleksandr
15.02.2017
10:54:35
ну это же тяжело)
для сервера

Mr.
15.02.2017
10:56:19
разве что вы их по 5-10 штук в одно будете склеивать, не больше
иначе - упрётесь в ограничение время работы процессора
также (я пропустил?) вы не сказали будут-ли изображения одинакового размера (хотя-бы по одной стороне), ибо это ооочень будет влиять на конечный результат по времени
разве что, как решение, сделать cloudflare как кэширующий cdn, и кэшировать все изображения, чтобы ваш сервер не так нагружался (но по первым порам CPU будет 100%, или даже 150%)

Aleksandr
15.02.2017
10:57:00
в общем я этот фарс не продолжаю, но пользуясь случаем, советую всем юзать вот такую штуку - https://www.minio.io/
классно абстрагирует приложение от хранилища, имеет s3-совместимый апи и клиенты под все языки и платформы.

Андрей
15.02.2017
11:22:30
Не... не спрайты, он хочет с файлом работать напрямую. Читать побайтово со смещением. И все соотвествия смещения хранить в бд, или еще где. Это надо суметь вообще такое придумать. )) Для сервера это не очень напряжно, но цель не оправдывает средства. Бред.

Nurik
15.02.2017
12:25:05

Aleksandr
15.02.2017
12:26:14

Nurik
15.02.2017
12:26:37

Aleksandr
15.02.2017
12:27:29
поддерживает бакеты, публичные ссылки, приватные ссылки на заданное время, временные урлы для заливки с клиента, заливку файлов програмно через апи

Андрей
15.02.2017
12:30:20

Aleksandr
15.02.2017
12:31:33
ведро в переводе). ну категория файлов. то есть не все в одно место складываается, а можно разделять.

Anatoly
15.02.2017
12:31:37

Aleksandr
15.02.2017
12:32:17