Search
Write a publication
Pull to refresh
46
0
Владислав Раструсный @FractalizeR

CTO

Send message

Eloquera 4

Reading time8 min
Views1.9K

Краткое описание базы


База данных Eloquera с самого начала была написана для хранения объектов  на основе .Net Framework, что сделало возможным попытаться вобрать в себя все лучшее от объектных и реляционных баз данных одновременно, преодолев многие их различия. Теоретически Eloquera может работать с любыми языками из семейства .Net Framework, однако на практике работа проверялась пока только с C#. Главная ориентированность разработчиков на enterprise сегмент (100+ ГБ), а не на embedded решения, хотя последние тоже не обделены вниманием.

Отличительные особенности Eloquera весьма внушительны и постоянно пополняются, вот их очень краткий список:
  • Сохраняет C# объекты (любые объекты любого языка на .Net платформе) без необходимости реализации специальных интерфейсов и адаптеров.
  • Сохраняет Dynamic объекты с любыми полями\свойствами и может сопоставить их объектам любого типа.
  • Язык запросов максимально приближен к SQL, при этом не требуется наличие какой либо реляционной SQL базы. Плюс поддержка LINQ.
  • Возвращает объекты в том виде, в котором они были сохранены (включая перечислимые типы)
  • Поддержка параметров в виде списков и массивов
  • Регулярные выражения в запросах.
  • Поддержка шаблонных объектов.
  • Восстановление Read-only полей и свойств.
  • Поддерживается частичный возврат объектов. Например, если вам требуется класс ForumTopic, тогда можно не подтягивать все ссылки на ForumMessages.
  • Можно указать глубину объекта для возврата в запросе.
  • Хранимые процедуры.

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

Саппорт Почты Mail.Ru: прошлое, настоящее, будущее

Reading time10 min
Views53K
В этом посте мы хотели бы рассказать о том, как устроена и функционирует служба поддержки самого известного и высоконагруженного сервиса нашей группы компаний — Почты Mail.Ru, как она сегодня «выглядит» после недавно проведенной переделки структуры и повышения эффективности.

Саппорт сегодня


Сейчас в службе поддержки работают более 50 сотрудников. Саппорт работает 7 дней в неделю по сменному графику, в будние дни это 2 смены по 6 часов (с 9 до 15 и с 15 до 21), в праздники и выходные — одна 8-ми часовая смена (это связано с меньшим потоком заявок в выходные). Такой график удобен для студентов и позволяет совмещать работу с дневной формой обучения.

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

Мы используем систему обработки заявок OTRS (Open-source Ticket Request System, http://www.otrs.org), популярный проект с открытым исходным кодом, работающий практически на всех платформах. OTRS используется во многих крупных компаниях, например, в Opera, MySQL AB, SuSE Linux AG, подошла она и нам. К сожалению, система «из коробки» (на момент внедрения это была версия 2.2.6) не подходила для работы с большими объемами данных (тысячи входящих писем в день и сотни тысяч тикетов в базе, параллельная работа десятков человек), поэтому в рамках нашего саппорта применяется модифицированная версия.
Читать дальше →

График «мастер-детали» средствами Highcharts и jQuery UI

Reading time4 min
Views7.3K
При наличии большого количества статистических данных, например таких, как котировки валют (и прочие данные, связанные с финансовой тематикой), потребление чего-либо (воды и т.д.), вообще говоря, любых данных, которые так или иначе можно представить в виде пары «дата — значение», бывает удобно представить их в графическом виде. Так как данные могут быть собраны за достаточно большой период времени, имеет смысле представлять их в виде пары графиков: «мастер»-график, на котором будут отображены все точки, и график «детали», где будут отображены точки за требуемый период. В данной статье я постараюсь рассказать, как построить график подобного типа при помощи стандартных средств библиотек HighCharts и jQuery UI.

Приведенное ниже решение, в принципе, является велосипедом, т.к. с появлением нового продукта от разработчиков HighCharts, который получил название HighStock, необходимость в реализации подобным способом отпадает. Впрочем, HighStock пока еще в состоянии beta.
Читать дальше →

Направляем энергию GLPI в свое русло

Reading time7 min
Views101K
Где-то 3 месяца назад в нашей фирме поднялся вопрос о регистрации обращений пользователей в IT отдел. Мне было поручено просканить интернет на предмет системы учета заявок, такого себе хелпдеска. Требования были предъявлены следующие:
1. Бесплатность (да-да, платить за эту систему отказались).
2. Возможность сбора статистики (для больших боссов).
3. Сигнал на почту (не только админам, но и пользователям, а так же всем заинтересованным именно в этой заявке лицам).
4. FAQ и база знаний.
Сказано — сделано. Так как все эти системы для меня были в новинку, то по совету на каком то из форумов я выбрала GLPI. Тем более, что эта система обещала облегчить процесс инвентаризации, что является довольно неплохим бонусом!
Читать дальше →

Создание серверной инфраструктуры на малом предприятии в условиях скромного бюджета

Reading time4 min
Views23K
Доброго времени суток, уважаемые читатели.

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

Я думаю, что для тех, кто работал в обычной российской компании численностью менее 20-30, не секрет насколько руководство зажимает деньги на развитие IT. Так было и в компании X, где я работал.
Читать дальше →

О теории социального баланса

Reading time5 min
Views5.2K
Здравствуй хабр.
Сегодня я хочу тебе рассказать про теорию когнитивного баланса Ф. Хайдера.
Сама теория относится к классу теорий когнитивного соответствия. При помощи этого класса теорий можно попытаться математически описать социальные взаимодействия, в том числе в социальных сетях.
Читать дальше →

Создание полноразмерных скриншотов web-ресурсов

Reading time3 min
Views13K
Довольно полезным сервисом является создание полноразмерных скриншотов web-ресурсов.
Реализуем этот сервис буквально за 5 минут.

Задачи:


1) Создание полноразмерных скриншотов сайтов (полный скриншот по длине и ширине, а не захват окна браузера)
2) веб-интерфейс

Технологии:


— ОС — Ubuntu 10.04
— xvfb — Виртуальный фреймбуффер (Fake Xserver)
— CutyCapt — кроссплатформенная утилита для рендеринга web-страниц
— php — для веб-интерфейса
Читать дальше →

Бесплатные книги

Reading time3 min
Views60K
Несколько книг по разным темам, которые находятся в открытом доступе.

Основы программирования
Читать дальше →

Symfony2\SecurityBundle

Reading time14 min
Views41K
Аутентификация и Авторизация Автор рассказывает об устройстве бандла Security (на мой взгляд, самого трудного в понимании для symfony-новичков) и разбирает пример его применения. Статья будет особенно полезна для тех, кто желает знать, как работает их инструмент: Symfony2 Security в общем и FOSUserBundle в частности — однако не подходит для первого знакомства с фреймворком, поскольку требует знания некоторых из его компонент.
Статья была опубликована 21 марта 2011 года, когда ещё не вышла финальная версия symfony2.0, однако принципы работы бандла не изменились.

Оригинальная статья — «Symfony2 Blog Application Tutorial Part V: Intro to Security» — часть цикла обучающих статей на примере создания блога.
Есть прямое продолжение/дополнение статьи — «Symfony2 Blog Application Tutorial Part V-2: Testing Secure Pages», где даётся пример тестирования «закрытых» частей приложения.


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

Знакомимся с PayPal API

Reading time13 min
Views87K
На данный момент, PayPal — это самая популярная платформа электронных платежей. Именно то, насколько легко можно открыть счет и начать получать на него средства, по сравнению с традиционными способами получения платежей, и является причиной #1 его запредельной популярности. Второй причиной, многие со мной согласятся, является мощный API, предоставляемый PayPal. В этом топике я по порядку разложу все способы и трюки, связанные с работой PayPal API, чтобы вы избежали проблем с его интеграцией.
Читать дальше →

Как писать квайны

Reading time4 min
Views40K
Введение

Многие программисты считают написание квайнов (программ, выводящих свой исходный код) непосильной задачей. И действительно — все эти цепные квайны и квайны различного порядка, при взгляде на которые можно потеряться в, казалось бы, бессмысленном наборе символов…

Однако, на самом деле, написать квайн на каком-либо языке не так сложно, как кажется. Сейчас я расскажу, как сделать это на различных языках программирования. Более того, мы не будем использовать «хаки» интерпретеруемых языков вроде операции вывода исходного кода и функций типа eval и напишем квайны на интерпретируемых и компилируемых языках.
Читать дальше →

Визуализация статистических данных с помощью Highcharts

Reading time7 min
Views28K
В этой статье я хотел бы изложить собственный опыт построения наглядных и презентабельных графиков с помощью Highcharts на основе статистики ОС и дисковых массивов. Для многих современных ОС и дисковых массивов существуют механизмы, основанные на встроенном или дополнительном ПО, которые позволяют получать данные о работе подсистем ОС или массива (имеются в виду не трассировки, а статистические показатели, усредненные по заданному интервалу). Также можно собирать статистику счетчиков пакетов и ошибок на интерфейсах коммутаторов LAN и FC. Многие хотят визуализировать эти данные и использовать в отчетах или же самописной системе мониторинга.
image
Читать дальше →

Создание CRUD приложения на Symfony 2, часть 2

Reading time6 min
Views8.1K
Продолжение вводной статьи по Symfony 2. В первой части было описан процесс модификации формы редактирования записей, во второй части будем модифицировать интерфейс списка записей. В заготовке шаблона и контроллера списка записей, которую генерирует команда doctrine:generate:crud как минимум не хватает формы поиска записей и постраничной навигации.
Читать дальше →

90 модулей Node.js в общественное пользование

Reading time1 min
Views3.4K
Разработчики из Browserling решили выложить для всеобщего пользования (под open source) 90 модулей для Node.js. Все они выложены на github и хорошо документированы.

Большинство модулей — маленькие полезные утилиты, но некоторые представляют собой серьёзный вклад в сообщество Node.js. Например, node-bigint — очень надёжная и эффективная библиотека для арифметики произвольной точности.

Компания Browserling известна как разработчик одного из лучших веб-сервисов для кросс-браузерного тестирования сайтов. Сначала они делали его на Haskell, но пару лет назад переключились на Node.js. Кто-то говорит, что эти ребята на год-два опережают по уровню разработки всех, кто работает в данной области.

Строим DSL на C# при помощи парсер-комбинаторов

Reading time9 min
Views13K

Перевод статьи Николаса Блумхардта, известного .NET разработчика, автора IoC/DI контейнера Autofac. В этой статье Николас показывает на реальном примере как с наименьшими усилиями написать парсер предметно-ориентированного языка программирования с помощью Sprache, библиотеки парсер-комбинаторов.


Наш текущий проект включает в себя небольшой процесс подачи и утверждения заявок на создание учетных записей пользователей. Это хороший пример для обсуждения предметно-ориентированных языков и Sprache. Сейчас я опишу некоторые требования.

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

При сборе и сохранении данных анкеты, её содержание не имеет значения, пока соответствующая информация не будет представлена администратору, который в конечном итоге утвердит или отклонит заявку.

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

Convergence — возможная замена Certification Authority System

Reading time6 min
Views3.5K


Доброго всем времени суток!

Сразу хотелось бы дать две ссылки на материалы, на основе которых составлена эта заметка. Можно ознакомиться непосредственно с источниками и не читать топик, представляющий из себя всего-навсего мой вольный перевод-пересказ основных моментов с небольшим количеством отсебятины.
BlackHat USA 2011: SSL And The Future Of Authenticity
Moxie Marlinspike :: Blog — SSL And The Future Of Authenticity

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

Docblox — система документирования, совместимая с PHP 5.3+

Reading time4 min
Views3.8K
При очередном обновлении Phing с помощью PEAR я обратил внимание на список дополнительных зависимостей и решил посетить сайты тех проектов, названия которых мне ничего не говорили. Среди прочего я нашел один многообещающий проект, которым бы и хотел с вами поделиться. Представляю вам Docblox — новую систему документирования PHP-приложений, развивающую идеи, заложенные во всем известном PHP Documentor'е. На данный момент согласно нотации PEAR проект находится в стадии бета-тестирования, но уже используется при разработке таких проектов, как Zend Framework, Phing, Fuel и некоторых других.

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

Маньячная минимизация (в погоне за байтом)

Reading time8 min
Views8K
Hello World,

Этот топик о том, каким образом можно предварительно зарефакторить код так, чтобы улучшить его минимизацию. Недавно я перед релизом минимизировал библиотеку Helios Kernel (о которой написал позавчера). Исходник библиотеки весит 28112 байт, в нём щедрые комментарии, и поэтому он с пол пинка ужимается YUI компрессором до 7083 байт. Не то что бы мне показалось, что 7 килобайт — слишком жирно. Но просто, посмотрев своими глазами на минимизированный код, я смог увидеть кучу мест, где можно было бы сэкономить ещё:



Посмотрим, что можно сделать с кодом, чтобы превратить 7083 байт в 4009 3937.
Читать дальше →

Мгновенный поиск в 75 гигабайтах

Reading time8 min
Views35K
Речь пойдет о том, как был реализован быстрый поиск по большим объемам данных на этой страничке. Там можно искать пароль по хешу, для игрового сервера PvPGN, и генерировать эти же хеши.
Поиск написан на чистом PHP, без использования модулей и сторонней БД. В принципе, таким образом можно наращивать объемы до многих терабайт, было бы место — скорость от этого не сильно пострадает.

Далее от начала до конца описан весь процесс, который включает в себя брутфорс, создание хеш таблицы, её сортировка и, собственно, поиск.


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

Механизм реализации своих законных прав владельцами персональных данных

Reading time6 min
Views7.8K
В предыдущей статье я рассказал о возможностях, которые предоставляет закон № 152 владельцу персональных данных. В этой частью статьи представлен сам механизм и формы запросов для реализации своих прав. В статье не рассматриваем вопрос, когда оператор вообще не имеет права обрабатывать персональные данные. Задача — сделать так, чтобы оператору персональных данных незаконная обработка этих данных стоила серьезных финансовых и временных затрат.

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

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity

Specialization

Chief Technology Officer (CTO)