SObjectizer — это технология разработки ПО, при использовании которой программа состоит из мелких самостоятельных объектов-агентов, взаимодействующих друг с другом посредством асинхронных сообщений. Подобный подход существенно упрощает создание многопоточных и распределенных приложений.

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

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

С 2002 года SObjectizer успешно используется во внутренних продуктах, некоторые из которых сейчас являются важнейшими частями телекоммуникационной инфраструктуры компании Интервэйл.

С 2006 года SObjectizer развивается как Open Source проект и распространяется под лицензией BSD, что позволяет бесплатно использовать SObjectizer в различных целях.

Дополнительную информацию и исходный код SObjectizer можно найти на странице проекта на SourceForge.