Веб-сервис склонения по падежам «Морфер.Сервер»
Веб-сервис, который всегда рядом
«Морфер.Сервер» – это веб-сервис, который работает в локальной сети вашего предприятия и
предоставляет функции автоматического склонения всем его системам независимо от того, на каком языке они написаны.
«Сервер» легко интегрируется с такими платформами как SAP, 1С, Axapta, Navision,
с языками программирования Java, PHP и с любыми системами, поддерживающими интеграцию
со сторонними сервисами по протоколу HTTP.
Содержание
История и мотивация создания продукта
Библиотека функций для склонения по падежам Morpher.dll
существует с 2003 года и успешно используется на многих предприятиях России и ближнего зарубежья (отзывы пользователей).
Пользователей устраивает качество склонения и скорость работы библиотеки.
Однако тот факт, что код библиотеки написан на языке C#, затрудняет ее интеграцию с немикрософтовскими системами, такими как Java, Linux и другими.
Для решения этого вопроса был создан веб-сервис, работающий на сайте morpher.ru и доступный бесплатно всем желающим.
Веб-сервис привлек внимание многих веб-программистов, работающих на PHP, Ruby, Python, а также программистов системы 1С.
Веб-сервис активно используется (около миллиона запросов за 2 квартал 2013 года) и всем хорош, но некоторых пользователей не устроила относительно низкая скорость работы
(несколько запросов в секунду), отсутствие гарантированной доступности сервиса и юридическая невозможность работы с персональными данными, охраняющимися по закону.
Некоторые пользователи высказали желание иметь «такой же веб-сервис, только локальный».
Это и привело к созданию продукта «Морфер.Сервер», сочетающего в себе
достоинства библиотеки (высокая скорость работы и доступность) и веб-сервиса (простота интеграции с любыми платформами, поддерживающими обмен по протоколу HTTP).
Отличия от общедоступного веб-сервиса Морфер.ру
«Морфер.Сервер» унаследовал от общедоступного веб-сервиса версии 3.0 его API и полностью повторяет его функционал.
Это позволяет вам до приобретения «Морфер.Сервер» опробовать интеграцию с общим веб-сервисом,
а после приобретения просто заменить домен в URL запроса.
Все будет работать точно так же, только в сотни раз быстрее.
Отличия от общедоступного сервиса:
- «Морфер.Сервер» лишен функций работы с учетными записями пользователей, аутентификации и тарификации.
Скорость работы веб-сервиса
С целью определения скорости работы веб-сервиса было проведено нагрузочное тестирование при помощи программы JMeter.
Тест состоял в том, что один виртуальный пользователь (поток) посылал последовательно
1000 одинаковых запросов веб-сервису.
Запрос: http://localhost/morpher/russian/declension?s=Пользователь
Результаты теста представлены на графике:
Как видно из снимка экрана, скорость составила более 50 тысяч запросов в минуту (около 850 в секунду), что более чем достаточно для большинства задач.
Сравнение скорости работы различных продуктов:
|
Веб-сервис morpher.ru |
«Морфер.Сервер» |
Morpher.dll |
Количество склонений в сек |
0.5 - 5 (в зависимости от вашего пинга) |
850 (localhost) |
> 5000 |
API пользовательского словаря
Пользовательский словарь служит для оперативного исправления ошибок автоматического склонения.
Он должен хранится в каталоге App_Data веб-сервиса в виде xml-файла с именем
- UserDict.xml - для русского языка;
- UserDictUkr.xml - для украинского языка.
Для казахского языка пользовательский словарь пока не реализован.
Вы можете редактировать файл словаря вручную (
формат словаря) или через API веб-сервиса (
формат запросов).
Системные требования
Для размещения у себя локального веб-сервиса вам понадобится компьютер или виртуальный сервер под управлением Windows со следующими установленными компонентами:
Установка
-
Включите необходимые компоненты IIS. Для этого нажмите кнопку «Пуск», введите «Панель управления» («Control Panel»),
включите отображение по категориям и выберите «Programs» — «Turn Windows features on or off».
В открывшемся окне отметьте галочками как минимум те пункты, которые отмечены на рисунке справа:
-
Распакуйте дистрибутив веб-сервиса в папку на локальном диске, например, C:\MorpherWebService.
В пути не должно быть пробелов.
- Откройте IIS Manager:
- Нажмите кнопку Start (Пуск) и наберите inetmgr.
- Нажмите Enter.
- Добавьте приложение в IIS:
- В окне Connections (слева) откройте узел с именем вашего компьютера (в примере на снимке экрана справа это SERGEY-VAIO).
- Раскройте узел Sites.
- Кликните правой кнопкой мыши на узле Default Web Site и выберите пункт меню Add Application.
- В появившемся диалоговом окне:
- В поле Alias введите название, которое потом станет частью URL веб-сервиса и будет отличать его от других ресурсов веб-сайта. Например, morpher.
- В поле Physical path введите путь к папке, где находятся файлы веб-сервиса.
- Нажмите OK.
-
Включите ISAPI-модуль ASP.NET:
- В окне Connections выберите снова узел с именем вашего компьютера.
- В окне Default Web Site Home (посредине) установите «Group by» на «Category», найдите группу иконок Security и откройте в ней двойным кликом иконку ISAPI and CGI Restrictions.
- В появившемся окне напротив строки ASP.NET v4.0 установите разрешение Allowed (разрешено).
- Настройте пул приложений:
- На панели Connections выберите узел Application Pools.
- В списке посередине выберите пул приложений,
который вы выбрали на шаге 4.
- На панели Actions в базовых настройках
установите режим Integrated.
- В расширенных настройках установите флаг
Enable 32 Bit Applications.
- Протестируйте веб-сервис на локальном компьютере:
- Откройте в браузере адрес http://localhost/morpher
- Должна открыться страница "Веб-сервис склонения по падежам "Морфер":
- Кликните по ссылке "склонение по падежам".
- Должен появиться XML-документ со склонением примера.
- Протестируйте веб-сервис на другом компьютере в локальной сети:
- Перейдите на другой компьютер в той же локальной сети.
- Откройте в браузере адрес http://comp/morpher, где comp - имя компьютера, на котором установлен веб-сервис.
- Повторите тестирование, как с локального компьютера.
Приобрести «Морфер.Сервер»
История изменений
Дата |
Версия |
|
17.06.2019 |
3.4 |
Актуализация кодовой базы. Добавлена поддержка казахского языка. Обновление словарей и исправление ошибок. |
21.12.2017 |
3.3 |
Обновление модулей склонения и исправление мелких ошибок. |
16.11.2017 |
3.2 |
Добавлена поддержка украинского пользовательского словаря UserDictUkr.xml. Обновление словарей и исправление алгоритмов модулей склонений. Исправлена разбивка ФИО на составляющие. Исправлено склонение "Член Правления, директор по операциям". |
25.09.2017 |
3.1 |
Ряд мелких исправлений. Добавлен местный падеж. Добавленна поддержка пользовательских словарей. Обновлен формат ответа и документация. |
23.06.2017 |
3.0 |
Основан на веб-сервисе 3.0, который имеет более логичную и расширяемую систему функций.
Добавлена возможность ответа в формате JSON.
SOAP больше не поддерживается (1С использует новый REST API клиент). |