Сегодня довелось мне полдня ковыряться со сложной сортировкой. Сложность ее заключается в том, что выводятся данные из одного инфоблока, а сортировать надо по данным из другого инфоблока. Решение нашлось не сразу.
А есть здесь место куда постят сообщения о глюках? Иногда что-то найдешь такое (например как в первых версиях 7-ки ндс считался неверно) и низнай куда запостить.
9 декабря 2008 года «SHONIA, web-консалтинг» был присвоен статус Золотого сертифицированного партнёра «1С-Битрикс». В общем списке компаний-партнёров «1С-Битрикс» нам удалось подняться на 12 место – это достойный результат, ведь партнерская сеть «1С-Битрикс» объединяет более 2500 компаний в 235 городах.
Значительный рывок объясняется большим количеством проектов, реализованных в минувшем году.
Статус «Золотой сертифицированный партнер» означает, что компания «1С-Битрикс» официально подтверждает, что мы обладает богатым опытом разработки веб-проектов, в том числе сложных программных решений на основе “Битрикс: Управление сайтом”. Сотрудники компании партнера успешно прошли все имеющиеся учебные курсы, сдали тесты и получили сертификаты специалистов. Золотой сертифицированный партнер обладает большим количеством крупных и средних проектов, разработанных на основе продукта.
Мы благодарим своих сотрудников, клиентов, партнеров, — всех, кто помог достичь этих впечатляющих результатов!
Сейчас посмотрел статистику и оказался приятно удивлён - нас уже 46 человек. Смотря на соседние группы можно сказать, что мы "выстрелили" очень удачно.
Почему пишу эту заметку? По воли случая оказался в модераторском составе группы, поэтому хочется сделать работу этой группы более продуктивной.
Какой главный вопрос задаёт посетитель или участник просматривая заметки в этой группе? - а читает ли это всё "Старший Брат"?
Уважаемые Разработчики, состоящие в группе, хранят молчание. Оно и понятно - если вступить в переписку, то можно ухуть времени рабочего много.
Есть только минус у этого молчания - непонятно, имеет ли смысл продолжать добавлять сюда сообщения, а ведь как порой хочется увидеть скупое: "Поставлено в план работ" или "нет, такой функционал не планируется", но не в техподдержке, а здесь.
Как вам такая идея: Сообщения аккумулируются в течении N дней, потом модератор оформляет их в виде одной заметки и размещают в разделе "отчёты".
+ Разработчик может спокойно просмотреть ОДИН документ раз в неделю и принять решение по конкретным пунктам 1,2,3 - интересно, 4,5 - отказать. А не читать по одному сообщению из раздела Обсуждения.
- На составление подобной заметки модератору придётся потратить один час своего времени.
Модуль "Социальная сеть" наконец вышел. Многие его ждали. Сейчас, по прошествии некоторого времени, коллеги могут написать заметки по результатам тестирования СС.
По-моему, есть смысл делиться впечатлениями о том, как удается создать Проект, используя Социальную сеть.
$IBLOCK_ID - ID инфоблока, для разделов в котором добавляется свойство $PROP_NAME - название свойства
В данном примере мне нужно было добавить свойство типа "Целое число", поэтому USER_TYPE_ID установлен в "double". Соответственно, предполагаю, что параметр "SETTINGS" для разных типов отличается
Не знаю будет ли пользоваться спросом, ну а вдруг. Создал группу Бизнес-линч. Специфика группы довольна проста - выкладываем проекты не на бахвальство, а именно на какие-то советы. По дизайну, по юзабилити, по прочей визуальщине. Первая цель конечно оттачивание умений новичков, ну и пиар как ни как. Естественно можно обсуждать не только свои проекты.
Возникла ситуация, когда на страницу сайта нужно подгрузить связанные страницы сайта.
Вопрос о связе решился в сторону тегов. Т.к. делать через "Пользовательские поля" (как происходит подтяжка дополнительного материала в компонентах) не получается из-за не возможности (или моего незнания способа) создать удобную связь между категориями (разделами инфоблока) и страницы. Посмотреть топик на форуме можно по этой ссылке посмотреть
Тестируя соц. сети, мы общаясь в чате пришли к единому мнению, что было бы очень удобно включать/добавлять дополнительных пользователей, то есть создавать "конференц связь". Отдельно прикручивать чат, кажется наиболее трудоемко, чем дать возможность быть приглашенным еще пользователям. На сколько это трудоемко, если это в дальнейших планах. Очень интересует Ваш ответ (совет).
Недавно встала задача сделать так, чтобы в интернет-магазине для новых товаров параметр "НДС включен в цену" по умолчанию был в положительном значении (стояла галочка). Нашлось относительно простое решение.
Уже больше года работаю с цмс Битрикс, постоянно возникает проблема такая что неукого спросить что-то или посоветоваться. Конечно есть форум и ТП:) но в большинстве случаев проблема решается быстрее чем на нее получаешь ответ в форуме. Да и часто не хватает мозгового штурма. Вот и я хочу спросить почему никто не пользуется IRC чатом? Или я ошибаюсь, может подскажите такой канал, где можно поговорить на эту тему. Специфика чтоли у битрикса такая, но на #php за него можно получить кик:) Около года я сижу на канале #bitrix но за все это время я там встретил не более 5 человек:( Поэтому предлагаю общаться не только здесь, но и там. Всетаки время реакции в формате чата заметно меньше:) Или если есть другой канал битрикс-программистов сообщите пожалуйста.
Каждый пользователь сайта журнала в рамках портала может теперь создавать свои группы и кланы. Одно замечание, все созданные группы просматриваются администратором, и если созданные вами группы будут идти в разрез общих правил сайта, то такие группы будут моментально удаляться. Чтобы создать группу нужно на своей личной странице выбрать вкладку «Группы». На этой странице вам будут доступны все группы, в которых вы состоите и с этой страницы также можно создать и свою группу, выбрав пункт меню «Создать группу». Как только вы это сделаете, система предложит заполнить форму для создания группы или клана (рис. 7).
Рис. 7
В этой форме необходимо максимально точно задать ряд параметров. В поле «Название группы» укажите название будущей группы, в поле «Описания группы» дайте максимально избыточное описание группы. Далее с помощью кнопки «Обзор» можно и нужно загрузить изображение или точней сказать логотип будущей группы. Еще одна главная опция в форме – это «Тема группы». В списке перечислен ряд тематик, к которым будет соотноситься ваша группа. Нами учтены разные тематики и вам необходимо максимально точно выбрать тематику вашей группы. Так если вы создаете игровой клан, то выберите тематику игрового клана, если вы создаете региональную группу, то соответственно выбираем тематику региональных групп, а если вы хотите создать просто клуб любителей той или иной игры, то останавливаемся на тематике игры. Последние две немаловажные настройки «Параметры групп» и «Приглашать пользователей в группу могут» задают настройки видимости и доступа в группу. Здесь можно как открыть группу для всеобщего просмотра и доступа, так и закрыть группу от просмотра и задать уровень доступа к вступлению в ряды вашей группы. После создания группы ваша группа отразится в списке групп (вкладка Группы) и именно вы станете главным администратором этой группы (рис. 8).
Рис. 8
Со страницы «Группы» в дальнейшем вы сможете пересмотреть настройки созданной группы, редактировать состав участников, приглашать в свою группу других пользователей, задавать черные списки, назначать модераторов группы, а также просматривать запросы на вступление в группу. Кстати не забывайте просматривать запросы на вступление в вашу группу (пункт меню Проверить запросы на вступление), поскольку человек не сможет попасть в группу без вашего одобрения. Кроме этого вам также после создания своей группы нужно будет настроить ряд опций (пункт меню Изменить настройки). Все опции абсолютно аналогичны личным настройкам, о которых уже упоминалось выше (рис. 9). После всех настроек у вас в группе будет доступен свой собственный форум, блог и своя галерея. В зависимости от настроек группы форум, блог и галерея могут быть как скрыты от посторонних глаз, так и открыты для общего просмотра. Небольшая ремарка по созданию групп. Прежде чем создать новую группу, посмотрите, не существует ли в системе уже аналогичная группа. Смысла создавать двадцать групп поклонников игры Halo 3 точно нет! Лучше объединится и вместе двигать свою группу или клан вперед, нежели иметь 20 групп с одним единственным участником.
Рис. 9
Поиск групп и друзей
Каждый пользователь сайт вправе искать себе друзей и группы по интересам. Если вы хотите найти, скажем, друзей из своего города, то выберите в меню социальной сети пункт «Найти друзей» и в форме поиска задайте необходимые параметры (рис. 10). Если пользователь в своих данных указал город своего проживания или другие данные, то вы запросто найдете того кого ищите (рис. 11).
Рис. 10
То же самое относится к группам и кланам. Пункт меню «Найти группы» откроет вам доступ ко всем группам сети. Найдя определенную группу, вы можете ознакомиться с ней и если она вам по нраву, подать запрос на вступление в группу. Администратор группы или ее участники получат вашу заявку и либо дадут добро, либо отклонят ваш запрос.
Рис. 11
Личные сообщения и интерактивный чат
Кроме всех перечисленных достоинств групп, вам также в рамках социальной сети доступна уникальная возможность интерактивного общения с помощью чата и личных сообщений. Чтобы вступить в переписку или войти в чат, найдите нужного пользователя (это может член вашей группы, а может быть любой человек сайта), и в его профиле выберите пункт «Написать сообщение» (рис. 11). В ту же секунду откроется отдельное окно чата или встроенного в сайт мессенджера сообщений (рис.12).
Рис. 12
Наберите текст и пошлите сообщение. Если человек, которому вы послали сообщение, сейчас находится на сайте, то у него с правой стороны Интернет страницы буквально в то же мгновение (опрос сервера идет каждые 10 - 30 секунд) появится интерактивное окошко о новом сообщении (рис. 13). И он в тут же сможет нажать кнопку «Ответить» и перейдет с вами в режим приватного чата. Эта функция социальной сети позволит вам значительно экономить время и ускорять решение различных организационных вопросов в рамках своей группы или простого общения среди пользователей сайта. Если же человека нет на сайте, то как только он зайдет в следующий раз, он моментально получит оповещение. Кроме этого все ваши сообщения, а также всю переписку вы найдете на личной странице социальной сети, выбрав пункт меню «Мои сообщения». С этой страницы также можно вести диалог перейдя в режим чата.
Рис. 13
В итоге мы имеем мощную программную среду с помощью которой каждый пользователь сайта сможет найти себе группу по своим интересам, создать свою собственную группу, вести блог, загружать на сайт свои личные фотографии или фотографии клана, а также общаться посредством встроенного в социальную сеть мессенджера, оперативно решая любой круг вопросов.
P.S. У нас на сайте (ниже есть ссылка) пользователи уже стали оставлять свои отзывы о работе социальной сети. Думается, там есть интересные моменты именно от потребителя.
В рамках Интернет проекта «Журнал о приставке Xbox 360» (http://www.x-console.com), давно мечтал реализовать свою социальную сеть для пользователей этой консоли. В качестве движка у нас используется 1С-Битрикс редакции Бизнес, в которую с недавних пор входит модуль «Социальная сеть». На базе этого модуля, всего за пару дней я вполне успешно без каких-либо проблем и усилий поставил свою социальную сеть MY-CONSOLE.COM. Очень сильно порадовал факт полной интеграции социальной сети в портал. Все имеющиеся пользователя сайта автоматически стали пользователями сети, вот это конечно очень весомый фактор, у нас более 3000 регистраций и ставить что-то новое было бы полной трагедией!
Что такое социальная сеть
Уверен, что многие пользователи сети Интернет в курсе, что такое социальная сеть, а возможно и сами пользуются услугами некоторых сетей, таких как Одноклассники, В контакте, Мой круг и так далее. Вкратце поясню для тех, кто незнаком с социальными сетями или упустил эту инновацию, что это за зверь и как с ним дружить. Социальная сеть – это некое сообщество пользователей, которые «кучкуются» в определенном месте с определенной целью. Если мы говорим об Интернет, то вполне очевидно, что это большой портал или сайт предлагающий пользователям всевозможные сервисы. Механика работы таких сервисов строится на возможности поиска людей и создании в рамках сайта групп по интересам. Иначе говоря, вы можете прийти на сайт и найти там себе товарища, друга или просто хорошего человека разделяющего ваши увлечения, а возможно и взгляды на те или иные жизненные вопросы. Кроме этого в рамках такого портала есть возможность в создании групп по интересам. Это могут быть группы, начиная от сообщества любителей квадратных деревянных рамочек под фотографии и заканчивая клубом ценителей элитарных сортов пшеницы. Как правило, ограничений в этом плане нет, если это конечно не узконаправленный ресурс. Думается, что в целом идея понятна, поэтому давайте подробно поговорим о нашей социальной сети пользователей приставки Xbox 360, созданной в рамках сайта журнала.
Социальная сеть MY-CONSOLE.COM
Организовывая сайт журнала, мы хотели кроме обычного информационного ресурса создать нечто большее, чем просто сайт печатного журнала. Нам, прежде всего, была интересна идея создания на базе форума и блогов сайта официального сообщества пользователей приставки Xbox 360, и мы, кстати, уже поставили в известность русское отделение Майкрософта, которое пообещало нам всячески помочь с продвижением. Сам сайт журнала был изначально сформирован с учетом возможности дальнейшего развития и улучшения. Благо движок 1C-Битрикс, который используется на сайте, позволяет реализовать любые задумки, а разработчики системы во главе с Сергеем Рыжиковым трудятся не покладая рук. К слову Сергея хочу от себя лично поблагодарить за поддержку и огромную помощь, оказанную нашему Интернет проекту! Так вот совсем недавно компания 1C-Битрикс наконец выпустили такой долгожданный всеми модуль Социальной сети, который мы без проблем интегрировали в сайт X-CONSOLE.COM и предлагаем пользователям нашего портала, а также всем без исключения русскоязычным пользователям приставки Xbox 360 использовать социальную сеть с максимальной нагрузкой и выгодой для себя.
MY-CONSOLE.COM плюс X-CONSOLE.COM
Социальная сеть MY-CONSOLE.COM позволит объединить всех русскоязычных пользователей Xbox 360, предоставив возможность не только найти себе друзей, но и что немало важно формировать свои внутренние группы пользователей по интересам. Вы можете спокойно в рамках социальной сети создать свою группу, игровой клан или региональную группу пользователей Xbox 360. Для этого необходимо иметь лишь регистрацию на сайте и никаких других разрешений вам не потребуется! Вы вольны делать, естественно в рамках приличия и правил сайта, любые группы и кланы. Одной из главных достоинств социальной сети MY-CONSOLE.COM является то, что она полностью интегрирована в сайт X-CONSOLE.COM! Все пользователи имеющие регистрацию на сайте журнала автоматически являются участниками первой и можно смело сказать самой массовой русскоязычной социальной сети пользователей Xbox 360! Для того чтобы попасть в социальную сеть, наберите в своем браузере адрес MY-CONSOLE.COM или зайдите на сайт журнала X-CONSOLE.COM и в меню выберете пункт MY-CONSOLE.COM. И в том и в другом случае вы попадете в раздел социальной сети, из которой также через меню портала можно беспрепятственно перемещаться по сайту (форум, блоги, галерея…). Эти действия происходят под одним логином и одной текущей авторизацией на сайте. Все максимально просто и удобно. Социальная сеть полностью интегрирована в сайт журнала!
Как пользоваться социальной сетью
Каждая социальная сеть имеет свою специфику, поэтому давайте кратко изучим некоторые возможности и особенности, которые вам пригодятся в дальнейшем. Как мы уже выяснили, чтобы попасть в сеть нужно авторизоваться или зарегистрироваться в системе. Далее переходим в меню к MY-CONSOLE.COM и попадаем на свою личную страницу (рис. 1). У каждого пользователя сайта теперь имеется вот такая личная страница, как показано на первом рисунке.
Рис. 1
На этой странице указаны все ваши данные, включая фотографию и Gamertag. Любой пользователь может просмотреть информацию о вас и пригласить вас к общению через сайт журнала, а также пригласить вступить в ту или иную группу. Под фотографией каждого пользователя виден статус человека, который показывает на сайте сейчас пользователь или нет. Кроме этого вам как пользователю социальной сети будет доступна масса различных пунктов меню данного раздела сайта. Прежде всего, это личные настройки (о которых мы поговорим сразу после этого раздела), раздел поиска друзей и раздел групп социальной сети, а также раздел личных сообщений, свой частный форум, блог и конечно своя собственная фотогалерея, куда вы сможете загружать фотографии. Все загруженные вами фотографии автоматически будут отображаться в общей галереи социальной сети (пункт меню «Галерея нашей сети»). Теперь давайте обо всем по порядку и начнем с личных настроек сети.
Личные настройки
Зайдя под своим логином и паролем в раздел социальной сети, вы попадаете на свою личную страницу. Эту страницу может просматривать любой пользователь сайта, но редактировать свои данные можете только вы и это именно та страница, с которой вам нужно начинать знакомиться первый раз с социально сетью. Дело в том, что некоторые настройки сети установлены в значениях по умолчанию, поэтому часть настроек вам обязательно захочется подстроить под себя. Так что идем на личную страницу смотрим под свою фотографию и находим там ссылки «Изменить профиль», «Изменить приватность», «Изменить настройки» и «Моя подписка» (рис. 2).
Рис. 2
Ссылка «Изменить профиль» откроет доступ к вашим личным данным, и здесь вы сможете указать свое имя, фамилию, город, страну, Gamertag, загрузить аватар, установить подпись на форуме и так далее (рис. 3). Именно по этим данным другие пользователи сайта смогут найти вас в сети, поэтому нужно отнестись к заполнению этих данных серьезно. При этом если вы ранее заполнили эти данные в своем профиле у нас на сайте или будете их менять, то и на сайте и в социальной сети они будут одинаковыми.
Рис. 3
Иначе говоря, все пользовательские данные хранятся в одном месте и берутся из одной базы данных, что упрощает работу с системой в целом. После настроек профиля стоит перейти к разделу «Изменить приватность» (рис. 4). В этом разделе вы можете указать, кто именно из пользователей сайта может в дальнейшем приглашать вас в группы, слать вам личные сообщения, просматривать ваши группы и ваших друзей. То есть с помощью этого блока настройки вы можете максимально оградить или максимально открыть себя для внешнего мира.
Рис. 4
Следующий раздел в личных настройках – это раздел «Изменить настройки» (рис. 5 и 6). В этом большом разделе вам предстоит настроить доступ к вашей личной галерее, форуму и блогу, также в этих настройках вы задаете название для галереи, форума и блога. Что касается настроек, то здесь нужно внимательно все изучить и выбрать тот блок настроек, который устроит ваши пожелания по приватности информации. Так если вы в блоге выберете в строке «Кто может просматривать сообщения» опцию «Все пользователи», то все ваши сообщения с блогов будут попадать в общий блог сайта. Если в галере выставить такую опцию, то ваши фотографии будут доступы в общей галерее сети.
Рис. 5
С форумом ситуация несколько иная, он виден только в рамках вашей личной страницы. Для всего этого большого блока настроек нужно также определить, кто может оставлять сообщения у вас в блоге и форуме, а кто не может. Скажем, если вы хотите, чтобы комментировать ваши сообщения могли только зарегистрированные пользователи сайта, то из списка выбирается соответствующая опция. Последний раздел «Моя подписка» открывает доступ к личным сообщениям, а также дает возможность настроить работу с ними.
Допустим, есть 6 проектов: 2 простых (подойдёт редакция Старт или Стандарт) 2 средних (Эксперт) 2 серьезных (Бизнес, не меньше)
Как имеет смысл построить систему: Вариант 1: одна редакция Бизнес + 4 доп.сайта Вариант 2: 2*Стандарт, 2*Эксперт, 2*Бизнес
Уверен кто-нибудь уже сталкивался с подобной ситуацией. Какой вариант более оптимален по деньгам, по поддержке, по нагрузке на сервер и вообще по разумности?
Довольно часто приходится наблюдать ситуацию, когда смешиваются цели Клиентов и цели владельцев сайта. Например, очень велик соблазн разместить на сайте информацию обо всех организационных подразделениях компании (скажем, обо всех департаментах банка). Это льстит самолюбию персонала и очень существенно упрощает задачу маркетологов и копирайтеров, отвечающих за подготовку материалов для публикации на сайте.
Но, к сожалению, 90% такой информации совершенно не интересно Клиентам. Она просто бесполезна для них, и поэтому будет игнорироваться. Чтобы лучше осознать это, подумайте, например, о том, насколько вас волнует число и структура департаментов банка, когда вы хотите сделать вклад или обменять валюту.
Другой пример: размещение на сайте новостей типа «Мы провели корпоративную вечеринку в лучшем ночном клубе городка Мажорск. Всем очень понравилось!». Обычно инициаторами таких публикаций выступают специалисты по развитию персонала, стремящиеся подчеркнуть выдающиеся результаты своей работы.
Но это информация совершенно не интересна Клиенту, который зашел на 1-2 минуты на сайт, чтобы подобрать, например, пылесос или отыскать номер телефона справочной службы компании.
Лазил по полям в создании инфоблока и наткнулся на ресайз изображений. Уважаемые БУСовцы, добавте еще поле для вертикальных изображений. Так же, заметил глюк. Если добавлять из формы добавлений элементов, то ресайз не происходит.
Посмотрев на модуль рекламы, не нашел данного функционала, уважаемые БУСовцы, реализуйте пожалуйста, сей инструмент очень полезен, встречается часто на площадках рекламных.
Активно развивающийся проект на платформе Битрикс 7.0 (Oracle версии 10.2.0.1, размер более 50 ГБ, Linux i386, выделенный сервер). Предварительное замечание: этот сервер изначально был не совсем подготовлен для быстрой работы: 32-разрядная ОС на оборудовании x86_64, 32-битный Oracle, RAID-6 для файлов БД, 2 не самых быстрых (1.5 ГГц), зато 4-х ядерных процессора и 16 ГБ ОЗУ. В связи с ростом нагрузки более чем в 2 раза с начала года - более 400,000 хитов в сутки, до 60,000 посетителей в сутки и после недавнего обновления на версию Битрикс 7.0 сайт стал испытывать определённые проблемы:
При load average 60 сайт удовлетворительно работал(что само по себе удивительно, Максим Смирнов искренне порадовался стабильности работы Linux+Oracle), при нагрузке 75 чувствовались проблемы. Поскольку основную нагрузку создавали процессы Oracle, первым делом анализируем его. Из отчётов AWR/statspack виясняем, что основное время пользовательские процессы вели активную "умственную" деятельность (CPU time):
[FONT=Courier]Top 5 Timed Events Avg %Total
~~~~~~~~~~~~~~~~~~ wait Call
Event Waits Time (s) (ms) Time
------------------------------ ------------ ----------- ------ ------
CPU time 8,511 73.6
db file scattered read 2,836,881 1,012 0 8.7
db file sequential read 2,452,163 606 0 5.2
log file sync 24,138 463 19 4.0
log file parallel write 26,075 283 11 2.4
---------------------------------------------------------------------
Instance Efficiency Percentages (Target 100%)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Buffer Nowait %: 99.98 Redo NoWait %: 100.00
Buffer Hit %: 94.95 In-memory Sort %: 100.00
Library Hit %: 98.75 Soft Parse %: 98.75
Execute to Parse %: 7.35 Latch Hit %: 99.90
Parse CPU to Parse Elapsd %: 86.79 % Non-Parse CPU: 96.29[/FONT]
Ну и поскольку мы видим, что на разбор SQL тратится совсем немного времени, менее 4% (%Non-Parse CPU: 96.29), а думать пользовательским процессам вообще говоря не о чем, кроме разбора и выполнения - ищем неэффективные запросы - с помощью тех же родных оракловских инструментов AWR/statspack выявляем самые ресурсоёмкие (по критериям SQL ordered by Elapsed Time, SQL ordered by CPU Time, SQL ordered by Gets) запросы и проверяем инилизационные параметры. Проверяем ключевые параметры Oracle:
optimizer_features_enable = 10.2.0.1 [Ок] optimizer_mode = ALL_ROWS [Ок, для версии 10.2.0.1] optimizer_index_cost_adj = 100 [Ок] optimizer_index_caching = 0 [Значение по умолчанию, предполагает, что для получения ЛЮБОГО индексного блока придётся выполнить операцию физического чтения с диска, не способствует индексному доступу к данным, увеличим до 90(%), для активизации использования индексов] cursor_space_for_time = FALSE [Ок, в условиях ограниченной памяти для SGA] session_cached_cursors = 50 [Мало, но некритически, рекомендуем увеличить до 150] cursor_sharing = FORCE [Ок] open_cursors = 300 [Ок]
Анализирум-оптимизируем явно "медленные" запросы, достраиваем недостающие индексы на таблицах B_FORUM_PRIVATE_MESSAGE, B_IBLOCK_ELEMENTB_IBLOCK_SECTION_ELEMENT, B_STAT_* - скрипты для создания индексов отправляем разработчикам для включения в будущие релизы Битрикса. Проверяем системную статистику Oracle - никогда не собиралась, в этом случае это оправдано, т.к. используется 32-битный Oracle с ограничением SGA ~ 2,7 GB, т.е. наша БД активно использует кеш файловой системы и для неё операции физического чтения это чтение из кэша - в общем, "правды нет" и системная статистика тут вряд ли поможет. Load_average ~ от 10 до 15 Проверяем httpd сервер:
apache.MaxRequestsPerChild = 500 - мало, процессы apache живут не более 3-5 минут, рекомендуем увеличить до 2500 apache.MaxClients = 100 - много для 8-ядерной машины, постоянно запущены от 50 до 60 процессов, рекомендует уменьшить до 30
Load_average ~ от 8 до 12 Уже удовлетворительно, пробуем копнуть глубже, используем модуль Битрикс "Монитор производительности":
1. Настройки -> Производительность -> Очистка - удаляем старые данные 2. Настройки -> Производительность -> Включить - запускаем процедуру сбора данных на 1 минуту - процедура достаточно "тяжелая" для системы, желательно проверять загрузку системы во время выполнения. 3. Настройки -> Производительность -> Хиты с группировкой - с помощью фильтров можно выявить самые ресурсоёмкие страницы нашего Битрикс приложения, самые медленные запросы и планы выполнения запросов(!) - сам был приятно удивлён
Таким образом с помощью "Монитора производительности" удалось выяснить основную причину проблем - неэффективные постраничные запросы, с выборкой и обработкой всего массива строк на стороне PHP, характерные для "старых" компонентов 1.0. Компоненты 2.0 формируют более оптимальный SQL код - в PHP возвращается из БД точно необходимое для отображения запрошенной станицы количество строк. Обновлённые запросы компонентов 2.0 также более эффективны с точки зрения производительности БД. Что в результате?
Load_average ~ от 3 до 7 Средний % Idle CPU ~ 40-60% - это тот резерв, которого мы добивались! С учётом появившегося резерва можно быть уверенным, что сайт выдержит планируемое 2-х кратное увеличение нагрузки. P.S. Отражение результатов в статистике Oracle
[FONT=Courier]Top 5 Timed Events Avg %Total
~~~~~~~~~~~~~~~~~~ wait Call
Event Waits Time (s) (ms) Time
------------------------------ ------------ ----------- ------ ------
CPU time 5,041 80.9
log file sync 33,127 657 20 10.6
db file sequential read 482,404 379 1 6.1
log file parallel write 33,075 372 11 6.0
SQL*Net message to client 19,624,717 29 0 0.5
---------------------------------------------------------------------[/FONT]
Потребляемое нашей системой CPU time уменьшилось в 1,7 раза: с 8500 до 5000 секунд - система тратит меньше процессорных циклов вследствие оптимизации запросов Количество операций чтения блоков (db file sequential read) уменьшилось более, чем в 5 раз Многоблочное чтение (FULL SCAN'ы, db file scattered read) исчезли из TOP-5 - большая часть доступа к данным происходит по индексам Операции, связанные с записью лог-файлов (log file sync, log file parallel write) незначительно увеличились количественно, что говорит о возросшем количестве транзакций (нагрузке), но продолжают быть достаточно медленными - 20 миллисекунд, это много, и является последствием использования RAID-6 для БД
Мне много раз приходилось наблюдать картину, в которой вполне уважаемые специалисты задавались вопросом, для кого мы пишем этот текст (проект, коммерческое предложение, слоган и т.д.) - для себя или для клиентов? Если «для себя», то текст сразу значительно упрощался. Из него выбрасывались все мудреные или просто красиво звучащие фразы. А вот если «для клиентов», то огромный арсенал приемов «раздувания щек» включался на полную мощь.
За несколько лет работы у меня накопился небольшой словарик, позволяющий переводить слова с «языка маркетологов» или на «язык маркетологов». Короткие выдержки из него я привожу ниже.
На семинаре присутствовали 11 человек
Семинар собрал несколько десятков слушателей
В результате анкетирования пятерых человек установлен ряд новых фактов о…
Результаты проведенного социально-психологического исследования общественного мнения убедительно продемонстрировали, что…
Двое из трех опрошенных поддерживают кандидата X
Уверенно лидирует кандидат X.. Его поддерживает более 65 % респондентов
Четыре пакетика сухариков стоят 20 руб.
Если Вы купите три пакетика сухариков на сумму 20 руб., то еще один пакетик мы отдадим Вам совершенно бесплатно
В целях экономии средств было решено поручить разработку сайта студентам первого курса
Весь комплекс работ по созданию интернет-представительства компании будет выполнен сторонними специалистами
Презентация товара «В» закончилась провалом. Был скандал
Участники презентации высказали различные, часто весьма провокационные оценки качества товара «В». Никто не остался равнодушным
На проект «D» нашлось только 100 руб. (вместо запланированных 100 тыс. руб.)
Проект «D» будет реализовываться в условиях жесткой экономии денежных средств
На проект «D» денег выделено не было
По ряду причин объем финансирования проекта «D» был существенно сокращен
На презентацию компании «А» пришли три никому не известных личности. Остальные приглашенные не явились
На презентацию компании «А» были приглашены губернатор, мэр, директора крупнейших предприятий региона…
Консультант на бегу ответил на пару-тройку вопросов клиента «Z»
Клиенту «Z» была оперативно предоставлена информационно-аналитическая поддержка
Повышена цена на товар «В», выпускаемый компанией «А»
Компания «А» приступила к реализации новой маркетинговой стратегии, важнейшим элементом которой является гибкая ценовая политика
Консультант X. позвонил в несколько магазинов и осведомился о ценах на товар «В»
Проведен мониторинг ценовой конъюнктуры, сформировавшейся на рынке товара «В»
Выявлены и устранены грубейшие нарушения в технологии производства товара «В»
Проведен реинжиниринг ключевых бизнес-процессов, обеспечивающих производство товара «В»
Компания «А» наконец-то нашла деньги на окраску собственного забора
Мы рады сообщить Вам о новом имидже компании «А»…
Совершенно произвольно были придуманы характеристики проекта «D»
Параметры продукта «D» установлены экспертным путем
Компания готова «дать откат» для получения проекта
Мы готовы предложить вам специальную партнерскую программу, в рамках которой вы получите целый ряд бонусов
Компания «А» продает товар «В». По желанию покупателя продавец может завернуть этот товар в оберточную бумагу
Компания «А» предлагает каждому своему клиенту целый комплекс услуг. В частности, мы поможем Вам красиво упаковать купленный у нас товар
В магазине не меняется ассортимент продукции уже год
- Наши клиенты постоянно заказывают уже полюбившиеся им товары - Классика никогда не выходит из моды - Сейчас уже ничего качественного не производят, поэтому мы торгуем только коллекционными вещами - То, что проверено временем, всегда лучше покупается - Изделия «винтаж» сейчас особенно актуальны
Компания создана несколько месяцев назад пятью энтузиастами. Опыта работы нет, портфолио нет
Мы молодая, динамично развивающаяся компания, в штате которой работают специалисты, действительно любящие свое дело…
Компания берется за любой проект, чтобы просто «заработать денег». Никакой специализации нет
Мы предлагаем комплексное обслуживание клиентов. Обратившись к нам, вам не надо будет искать других подрядчиков
Компания не способна объяснить используемые ей механизмы ценообразования, т.к. цена, как правило, назначается «с потолка»
Мы внедрили сложную, многоэтапную систему оценки, требующую привлечения нашей аналитической службы. В частности, нам необходимо оценить всю совокупность рисков, возникающих в проекте…
Тип группы Это открытая группа. В неё может вступить любой желающий. Это видимая группа. Ее наличие видно всем пользователям.
Основные положения 1. Мы предлагаем улучшения в нашем любимом продукте которые будут полезны всему сообществу, а не только автору на конкретном проекте.
2. Аргументированно и максимально доходчиво излагаем свою точку зрения.
3. Последнее слово всегда остаётся за Уважаемыми Разработчиками 1C-Битрикс
4. Не нужно здесь задавать вопросы как решить ту или иную задачу, для этого есть форум и техподдержка.
Порядок написания предложений Если вы точно понимаете что необходимо сделать или это только идея и вы не уверены, что она найдёт поддержку среди других разработчиков, то создаётся ветка на форуме. Обязательно в тегах указывается модуль или компонент для которого предлагается улучшение.
Если необходимо приложить иллюстрацию, то можно воспользоваться сервисом хранения изоборажений, к примеру - http://www.picamatic.com/ там не требуется никакой регистрации и он действительно удобен.
Все-таки парадоксальная ситуация с самыми популярными блогами Рунета. Посмотрите их рейтинг, например, в версии Яндекса (http://blogs.yandex.ru/top/).
Среди лидеров нет профессиональных блогов. Лишь единицы авторов способны писать без мата. Большинство сообщений не содержат никакой полезной информации и написаны в форме "репортажей с места событий".
Возможно, именно такая манера и такой подход и интересны 90% читателей. Но не могу сказать, что это вселяет оптимизм.
Однажды, прочитав очередную книгу о мерчандайзинге, мы поняли, что разработка сайта - это нечто очень близкое к тому, что делает мерчандайзер. Например, мерчандайзеры хорошо знают, что достаточно поставить товар не на вторую - самую коммерчески привлекательную полку, а на первую или третью – и продажи уменьшаться на 60%.
На сайте - то же самое!
Разместите текст в неудачном месте экрана и количество его читателей упадет в 2 раза. Или попробуйте написать на кнопке что-то непонятное посетителю в течение 1-2 секунд. Результатом станет мгновенное снижение количества кликов по ней.
Подобных аналогий можно отыскать еще множество.
Например, расположил товары в магазине в нужном порядке: чтобы движение было против часовой стрелки - положительный результат. Против - отрицательный. На сайте абсолютно аналогично. Продумал маршрут движения посетителей - количество достижений цели (например, оформления заявок в интернет-магазине) максимальное. Не продумал - 95% посетителей уходят с первой же страницы.
Ну а о том, что отдел с молочными и мясными изделиями надо располагать в самой дальней точке магазина (чтобы посетитель прошел все другие отделы), или о том, что жевательную резинку надо класть перед кассой, вы и сами знаете!
Подумайте об этом, когда будете планировать свой веб-сайт!