Максим Федоров, все не так просто как кажется) В общих чертах: когда идет просмотр страницы и пролистывание вниз в history записываются данные о загруженных URL, пользователь к примеру открыл 100 страниц и перешел в фулл пост, затем вернулся обратно, при моем подходе ему откроется страница на том месте где он закончил сеанс на этой странице, т.е. его вернет на исходную позицию, так же и при перезагрузки страницы (со всем содержимым). А вот если изменять url, пусть даже хеш дописывать, то придется костыль писать, и не думаю что это оправдает себя (по крайней мере ради какой то статистики). Фильтры есть, и используют get запросы в URL. В общем сайт не полностью на ajax, а лишь пагинация, которая при смене url не будет работать должным образом. Если можно было бы отправить в метрику данные при формировании результатов, это было бы просто супер, к примеру передать какую нибудь переменную со строкой нового URL
С хешом проблемы, у меня на сайте в историю записываются полученные URL, чтобы в случае возврата или перезагрузки страницы юзера опустило туда где он завершил сеанс, а с хешем не получится такого, точнее придется костыль писать. Ничего делать не буду, а то получается нужно сайт еще под метрику подстраивать, как то это стремно звучит
Дерзко))) Яндексоиды уже могли бы придумать возможность пушить URL в метрику, сейчас столько динамических сайтов. Видимо придется хештег добавлять после подгрузки)
2, 3 пункта я бы с радостью сделал, но я не пойму где утечка и утечка ли это вобще. Достаточно поверхностный ответ, пробежаться взглядом по функциям и сказать возможна ли тут утечка. Меня беспокоит конструкция в result(e, response), saveCache(e)
Как мной задумано было она выполняет result, а потом выполняет сохранение данных, по сути запрос уже выплюнул данные, а затем идет сохранение, вот меня и смущает завершается ли процесс должным образом после сохранения данных или он продолжает висеть и наслаивается в памяти.
Я плохо знаком с утечками, но по логике если идет утечка она будет постоянно расти и расти, сейчас смотрю по pm2 показывает не 1350, а 1320, т.е. она варьируется в этих пределах на данный момент (на сервере 8GB памяти). Может это банально нода в памяти хранит мусор который может еще пригодится, а если нет то по истечению какого то времени удалит его.
Сам сервер не глючит, сайт летает, формирование страницы происходит за 30ms, меня только смущают цифры потребления памяти, а может так все и должно быть?
За все остальное спасибо, надо будет глянуть по 1 пункту
Роман Кузнецов, я с библиотекой не знаком, но всего скорее там должны быть стандартные функции reload/refresh, думаю их и нужно использовать. Просто не очень понятно что именно надо, ведь $('.ilightbox').iLightBox(); и так инициализирует клик по картинке
Все потому что зачем учить два языка, когда можно управится только одним (JS). Я с PHP еще в 2011 году завязал, когда начал на node.js что то писать, мне он понравился. Нравится PHP пиши на нем, нравится JS пиши на нем, и этими двумя языками не ограничивается никто. И я бы не сказал что все за модой гонятся, просто удобно, один язык на бекенде и фронтенде
Aligatro, Ну по сути я об этом и писал, не беру в расчет специфические сайты, кто разрабатывает сайты для гос. компаний они в первую очередь сосредотачиваются на работе сотрудников и такие вопросы от ТС уж явно не последовало, да и недостающие костыли в любой момент можно дописать
ой всё, что ТС просил, я написал, в любом случае вопрос уже решен и смысла в полемике нету =) А вам если нужно искать имя в тексте, то надо где то взять список всех существующих имен и уже через них прогонять текст (это уже на сервере лучше делать) и тут тоже кстати ничего сложного нет
ой всё, все буквы в строке будут строчные, если надо чтобы первая буква была заглавной нужно чуть поправить скрипт, взять первую букву и пропустить ее через .toUpperCase(), или вобще с первой буквой ничего не делать.
mr jeery, с нодой все просто если есть наброски =) с ноля делать что то всегда сложно. А так вам даже и PHP не нужно, просто перелинковку страниц сделать и всё