Миграция на последние версии Caché Кудинов Сергей План • Необходимость миграции – Использование новых/ усовершенствованных возможностей – Использование нового оборудования – Использование поддержки продуктов – Быть в тонусе!!! •
Download ReportTranscript Миграция на последние версии Caché Кудинов Сергей План • Необходимость миграции – Использование новых/ усовершенствованных возможностей – Использование нового оборудования – Использование поддержки продуктов – Быть в тонусе!!! •
Slide 1
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 2
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 3
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 4
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 5
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 6
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 7
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 8
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 9
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 10
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 11
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 12
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 13
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 14
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 15
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 16
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 17
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 18
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 19
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 20
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 21
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 22
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 23
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 24
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 25
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 26
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 27
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 28
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 29
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 2
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 3
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 4
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 5
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 6
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 7
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 8
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 9
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 10
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 11
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 12
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 13
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 14
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 15
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 16
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 17
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 18
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 19
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 20
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 21
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 22
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 23
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 24
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 25
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 26
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 27
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 28
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]
Slide 29
Миграция на последние версии Caché
Кудинов Сергей
План
• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!
• Рекомендации по миграции
• Примеры миграции
Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0
Работа с локальными массивами
Работа с глобальными массивами
Основные новые возможности в
2008.2
• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов
• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев
• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)
Обращение к свойствам/методам
• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров
• Использование механизмов кеширования при
обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)
• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU
Результаты тестирования
Object Dispatch - итоги
• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами
• Обращение к Методам/Свойствам лучше
масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер
• Уменьшение загрузки CPU
Компиляция классов –
наследование методов
• До 2008.2 код наследуемых методов копировался в
классах-потомках
• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient
Недостатки существующего
подхода
• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии
• Сложности с размером программ(ранее)
Реализация в 2008.2
• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)
• Изменение компилятора для того, чтобы супер-класс
мог быть перекомпилирован без компиляции классовпотомков
Новое для отказоустойчивых
систем
• Более быстрые механизмы востановления после сбоев
• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации
• Использование нескольких теневых серверов
Теневые сервера
• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные
• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным
Studio
• Возможность обнаружения undefined переменных
• Подсказка при вводе макросов
• Подсказка при вводе параметров
• Подсказка при вводе локальных переменных
Zen
• Поддержка drag-and-drop
• Динамическое изменение размеров групп
• Усовершенствование механизма загрузки дерева
• Новый tab control
CSP
• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7
• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks
Работа с потоками
• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)
• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)
• Поток может возвращаться SQL функцией
• Поток может быть аргументом SUBSTRING
Безопасность
• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows
• Усовершенствование безопасности для таблиц на
уровне столбцов
Разное
• Усовершенствование light c++ binding
• Поддержка JIS2004
• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP
Итого
• Более широкие возможности построения интерфейса
(Zen+новые bindings)
• Увеличение производительности
• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)
Использование нового оборудования
• 2008.1
–
–
–
–
Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10
• 2007.1.1
– Windows Vista
Использование технической
поддержки
• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc
Быть в тонусе
• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2
• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО
Рекомендации по миграции
• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…
Ошибки компиляции
• Требования к корректности описания классов стали
жестче
• Может потребоваться незначительная модификация
для исправления ошибок
• Существуют изменения в описании структуры данных
(например, в SQLStorage)
Ошибки исполнения
• Ошибки исполнения намного опаснее ошибок
компиляции!!! Надо стараться их предотвратить
• Гораздо проще сравнить результат вызова системной
функции в разных версиях Cache, чем протестировать
работу всего приложения
• Есть сомнения – лучше перепроверить
Примеры миграции
• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)
• Летограф (Cache 5.0-2008.1)
•…
Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]