Search
Write a publication
Pull to refresh
55
0
Белоусов Александр. @jarvis

Web-разработка и продукт-менеджмент

Send message

Полезное для Android разработчика #2

Reading time1 min
Views12K

Полезное для Android разработчика #2



Привет, теперь я постараюсь еженедельно выпускать дайджесты на интересные библиотеки и находки для Ваших проектов.

Сегодня в выпуске

Читать дальше →

MongoDB от теории к практике. Руководство по установке кластера mongoDB

Reading time9 min
Views90K
     Доброго времени суток, уважаемые читатели. В этом посте я хотел бы описать несколько примеров развертки mongoDB, отличия между ними, принципы их работы. Однако больше всего хотелось бы поделиться с вами практическом опытом шардирования mongoDB. Если бы этот пост имел план, он бы выглядел скорее всего так:

  1. Вступление. Кратко о масштабировании
  2. Некоторые примеры развертки mongoDB и их описание
  3. Шардинг mongoDB

    Пункты 1 и 2 — теоретические, а номер 3 претендует на практическое руководство по поднятию кластера mongoDB и больше всего подойдет тем, кто столкнулся с этим в первый раз.
Читать дальше →

Высоконагруженные системы: решение основных проблем

Reading time7 min
Views55K
Привет, Хабр!

Сегодня я хочу рассказать о некоторых решениях проблем, которые возникают во время использования высоконагруженных систем. Все, о чем пойдет речь в этом материале, проверено на собственном опыте: я – Social Games Server Team Lead в компании Plarium, которая занимается разработкой социальных, мобильных, браузерных игр.

Для начала немного статистики. Plarium занимается разработкой игр с 2009 года. На данный момент наши проекты запущены во всех наиболее популярных социальных сетях («Вконтакте», «Мой мир», «Одноклассники», Facebook), несколько игр интегрированы в крупные игровые порталы: games.mail.ru, Kabam. Отдельно существует браузерная и мобильная (iOS) версии стратегии «Правила войны». В базах числятся более 80 миллионов пользователей (5 игр, локализация на 7 языках, 3 миллиона уникальных игроков в день), в итоге все наши серверы получают в среднем около 6500 запросов в секунду и 561 миллион запросов в сутки.

В качестве аппаратной платформы на боевых серверах в основном используются два серверных CPU с 4 ядрами (x2 HT), 32-64 GB RAM, 1-2 TB HDD. Серверы работают на базе Windows Server 2008 R2. Контент раздается через CDN с пропускной способностью до 5 Gbps.
Разработка ведется под .NET Framework 4.5 на языке программирования C#.

Учитывая специфику нашей работы, необходимо не только обеспечить стабильное функционирование систем, но и гарантировать, что они смогут выдержать большой скачок нагрузки. Увы, многие популярные подходы и технологии не выдерживают проверку высокой нагрузкой и быстро становятся узким местом в системе. Поэтому, проанализировав множество проблем, мы нашли оптимальные для нас (как мне кажется) пути их решения. Я расскажу, какие технологии мы выбрали, от каких отказались, и объясню, почему.

Все самое интересное - под катом

Github Education — образование и Github

Reading time2 min
Views24K
image

На хабре есть пост habrahabr.ru/post/195054 «Как бесплатно получить Micro аккаунт на GitHub студенту в России» от 24 сентября 2013 года и больше никаких упоминаний об этой интересной программе от Github'а.
А тем временем, 10 февраля 2014 года Github запустил отдельный сайт education.github.com и сообщили в своем блоге, что они уже много лет предлагают образовательные скидки и более чем 1200 учебных классов и 7000 студентов воспользовались этим предложением на данный момент.
Теперь же они эту программу запустили официально, сделали отдельный сайт и предложили следующее:
  • Бесплатную Micro подписку для студентов и преподавателей
  • Бесплатные Github-организации для использования в классах
  • 25% скидка во всех остальных случаях для использования в учебных целях

Читать дальше →

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №101 (16 — 22 марта 2014)

Reading time6 min
Views38K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


Читать дальше →

PHP и различные виды NoSQL

Reading time11 min
Views69K


В последнее время набирают популярность различные NoSQL базы данных. Эта статья начиналась как изучение особенностей графитовой графовой базы данных Neo4j. Но, в процессе подбора информации, мне захотелось систематизировать информацию о NoSQL решениях и о графовых базах данных, в частности.
В ходе этого небольшого исследования, были выбраны для подробного рассмотрения СУБД, успешно применяющиеся в области Web. И, поскольку в тегах присутствует «PHP», я выбирал СУБД, которые уже можно использовать с этим языком.

Читать дальше →

Почему стоит пользоваться PDO для работы с базой данных

Reading time9 min
Views331K

Перевод статьи Why you Should be using PHP’s PDO for Database Access.

Множество PHP-разработчиков привыкли использовать для работы с базами данных расширения mysql и mysqli. Но с версии 5.1 в PHP существует более удобный способ — PHP Data Objects. Этот класс, сокращенно именуемый PDO, предоставляет методы для работы с объектами и prepared statements, которые заметно повысят вашу продуктивность!

Введение в PDO


«PDO – PHP Data Objects – это прослойка, которая предлагает универсальный способ работы с несколькими базами данных.»

Заботу об особенностях синтаксиса различных СУБД она оставляет разработчику, но делает процесс переключения между платформами гораздо менее болезненным. Нередко для этого требуется лишь изменить строку подключения к базе данных.

Эта статья написана для людей, которые пользуются mysql и mysqli, чтобы помочь им в переходе на более мощный и гибкий PDO.
Читать дальше →

10 анти-паттернов навигации в Android

Reading time4 min
Views81K


В данной статье мы рассмотрим 10 анти-паттернов навигации в Android, которые допускают многие новички (и не только) в создании интерфейсов Android-приложений.

Читать дальше →

Как монетизировать идею. Опыт и ошибки

Reading time4 min
Views34K
У меня в голове, как и у многих из вас, постоянно крутились идеи различных сервисов, сайтов, которые по моему мнению просто необходимы интернет-сообществу. Я хотел научиться превращать свои идеи в деньги и со временем понял, что успешных людей отличает именно то, что у них есть идеи, которые они не боятся реализовывать.

Не бойтесь реализовывать

На написание собственного топика меня натолкнула вот эта статья. Но у меня речь пойдет не столько о стартапах, сколько о базовых принципах создания простых и успешных интернет-проектов.
Читать дальше →

Как мы тестируем рекламные технологии Яндекса, и как этому научиться

Reading time5 min
Views28K
Меня зовут Константин Власов, и я руковожу в Яндексе службой управления качеством баннерной системы. Как вы можете догадываться, тестирование быстроменяющейся системы таких масштабов, как наши рекламные технологии, со всеми базами данных, репликацией компонент, протоколами взаимодействия между подсистемами, а также при довольно частых релизах, — непростое дело. При этом тестировать все нужно очень тщательно, ведь любая ошибка потенциально может принести серьезный ущерб бизнесу компании. И речь тут идет не только о репутационных издержках, но и о потере реальных денег.

image

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

Начнем, конечно же, с рассказа о том, что мы тестируем. В Яндексе есть два рекламных направления: контекстная и медийная реклама.
Читать дальше →

Отчёт о курсе «Визуализация данных»

Reading time3 min
Views14K
25 и 26 января Лаборатория данных провела первый учебный курс «Визуализация данных». Мы чувствовали себя первопроходцами, аналогов нашей программы в России пока нет. Я расскажу, как мы построили учебный план, как организовали процесс и каких результатов достигли.



Материала для двухдневного курса у нас было достаточно, пожалуй, даже слишком много. Мои работы и проекты лаборатории, крутые визуализации из интернета и книг Тафти, множество примеров галереи D3. Нужно было не просто «вывалить» на слушателей всю информацию, а помочь им извлечь важные и полезные знания из каждого примера.
Читать дальше →

Несколько интересностей и полезностей для веб-разработчика #11

Reading time3 min
Views36K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Node App



Вы когда нибудь задумывались о возможности писать приложения для iOS и OSX на Node.js? А проект, позволяющий решить эту задачу уже есть. Более того часть (хоть и маленькая) функционала доступна уже сейчас. Пишу о проекте с мыслями о том, что хабраобщество значимая единица социального коддинга…

Scala.js


Существует достаточно много разработчиков, предпочитающих создавать веб на Scala, но JavaScript остается самым популярным языком программирования. Видимо, поэтому на свет появился Scala.js — компилятор Scala в JavaScript с очень проработанной функциональной совместимостью.

Hackathon Starter



Замечательный boilerplate для Node.js проектов. Базовая регистрация через email, авторизация по OAuth (Twitter, Facebook, GitHub, Google), красивые уведомления на animate.css, автокомпиляция LESS, Bootstrap 3 + Flat UI + iOS7 Theme, контактная форма и стандартный функционал управления аккаунтом.

Читать дальше →

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №96 (9 — 15 февраля 2014)

Reading time7 min
Views36K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


Читать дальше →

Повышение конверсии – головная боль для интернет-магазинов

Reading time4 min
Views26K
Электронная торговля растет с каждым годом на 25-30%. Учитывая рост количества игроков и покупателей в интернете (на 2013 год 22 млн человек покупают онлайн), растет и конкуренция между интернет-магазинами за каждого человека в отдельности, за каждую покупку. В то время как в целом ожидать большего количества людей в интернете не приходится – темпы прироста интернет-аудитории сильно замедляются. Что же делать интернет-магазинам?

На сегодняшний день не составляет труда привлечь трафик на сайт с помощью seo, контекстной рекламы, таргетированной рекламы, баннеров. И стоимость привлечения, надо сказать, год от года растет!
Но и трафик не панацея. Как известно, только 1-5% аудитории совершает покупку сразу, в момент первого посещения сайта. Зная об этом, маркетологи и владельцы интернет-магазинов стремятся увлечь и привлечь посетителя всеми возможными способами ради совершения покупки. Тут вспоминаются ловкие цыгане с их танцами, медведями и гитарами, которые любого оставят без гроша.
Яркими платками и бубнами у маркетологов выступают различные «фишки» на сайте: сообщающие о спецпредложении баннеры; формы заявки; всплывающие окна; формы обратного звонка, онлайн-консультанты и др.

Интересные цифры:
• Статистика упорно говорит о том, что необходимо использовать различные инструменты и методики для увеличения конверсии: «Организации, которые увеличили конверсию своих проектов за последние 12 месяцев, используют на 45% больше разнообразных методик, чем те, кому увеличить ее не удалось».
• Компания Schwan's (http://www.schwans.com) имеет сайт с самой высокой в мире конверсией — 40,6-41.2%, используя при этом всплывающее окно при входе, персональные рекомендации для покупки.
• 86% владельцев интернет-магазинов уже используют инструменты повышения конверсии, однако зачастую не видят резкого роста конверсии и отмечают проблемы в удобстве использования инструментов.
• 53% интернет-компаний все еще не работают с отказами от покупки, уходом с сайта без покупки или целевого действия.
Читать дальше →

Создание галереи альбомов

Reading time7 min
Views6.5K
В статье описывается создание функционала синхронизации обложек для альбомов.
Комментарии встречаются как непосредственно в коде, так и в виде пояснений к коммитам.
Будет довольно много кода и совсем мало картинок.
Читать дальше →

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №95 (2 — 8 февраля 2014)

Reading time6 min
Views35K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


Читать дальше →

Какая польза от 3D принтера?

Reading time3 min
Views29K
Шумиха вокруг 3D принтеров и 3D печати не стихает, а только разрастается с каждым днем. И вроде сфер применения много, однако не все понимают пользу, которую несет лично для каждого эта технология. У «рядовых» граждан в голове сидят следующие вопросы: Для чего мне это нужно, какова ценность и польза? Зачем мне покупать 3d принтер, если я не являюсь ни дизайнером, ни инженером, ни архитектором, ни конструктором?

image

Читать дальше →

Content Security Policy, для зла

Reading time2 min
Views16K
Есть такой специальный хедер для безопасности вебсайтов CSP.

CSP ограничивает загрузку каких либо ресурсов если они не были пре-одобрены в хедере, то есть отличная защита от XSS. Атакующий не сможет загрузить сторонний скрипт, inline-скрипты тоже отключены…

На уровне браузера вы можете разрешить только конкретные урлы для загрузки а другие будут запрещены. Помимо пользы этот механизм может принести и вред — ведь факт блокировки и есть детекция! Осталось только придумать как ее применить.
Читать дальше →

Разбиение веб-страниц на семантические блоки

Reading time5 min
Views23K

Пример работы алгоритма на сайте Автокадабра.

Задача


Наверное, все знают про сервис «Вебвизор», который позволяет записывать действия посетителей вашего сайта и просматривать их в режиме видео. Инструмент интересный, но когда на сайте много посетителей, составить картину жизни сайта проблематично, каждый ролик не посмотришь, и сгруппировать их нельзя.

Гораздо полезней отследить взаимодействие посетителей с сайтом, выяснить чем живёт сайт, с возможностью охватить одновременно множество посетителей. В итоге, появилась идея записывать информацию в виде осмысленного списка действий посетителей:
  • Dima: переход на сайт с поисковой системы Yandex RU по запросу sepyra (3м. 10 сек. назад)
  • Dima: переход со страницы "Веб-аналитика Sepyra | Официальный сайт" на страницу "О системе | Веб-аналитика Sepyra (1 м. 30 сек. назад)
  • Dima: выделение текста "времени" в блоке "Одна из ключевых особенностей веб-аналитики Sepyra — возможность… кто хочет быть в курсе каждого шага посетителей" (40 сек. назад)
  • Dima: средний интерес к подблоку "Подключиться" в блоке "Тарифы О системе FAQ Контакты Русский English Подключиться Войти" (20 сек. назад)
  • Dima: заполнение/изменение поля "Ваше имя" в форме "Регистрация" (10 сек. назад)

Запись состоит из двух частей: блок в котором происходит действие посетителя и само действие, например — выделение текста "времени" в блоке "Одна из ключевых особенностей ...". Для этого описания необходимо определить блок на странице и его имя. Если с именем было более-менее понятно, то над выделением блоков пришлось подумать.
Читать дальше →

Information

Rating
Does not participate
Location
Петрозаводск, Карелия, Россия
Registered
Activity