Уведомления

Группа в Telegram: @pythonsu

#1 Май 29, 2009 17:05:53

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

Создание системы автоматизации движения документов

Странно, что среди всех предложений: TG, RoR, … не был вспомнен Zope3. По моему мнению, этот фреймворк для такой развернутой системы подходит более чем, тем более, что он реализует отличную компонентную архитектуру, что приводит к удобству в последующем расширении, модификации, совершенствованию системы…. + очень удобная поддержка XML-RPC.
Правда, для написания хорошего продукта требуется, по моему мнению, довольно-таки много опыта…

Вроде как-то так… Не судите строго… =)



Офлайн

#2 Май 29, 2009 21:22:08

dvs
От:
Зарегистрирован: 2006-05-22
Сообщения: 176
Репутация: +  3  -
Профиль   Отправить e-mail  

Создание системы автоматизации движения документов

Насчёт протоколов обмена – думаю интересующимся будет интересен Protocol Buffers ( http://code.google.com/p/protobuf/ )

Highly efficient binary protocol for storing and transmitting structured data between C++, Java and Python. Uses a .proto file describing the data structure which is compiled to classes in those languages for serializing and deserializing. 3-10 times smaller and 20-100 times faster than XML.
Protocol Buffers are a way of encoding structured data in an efficient yet extensible format. Google uses Protocol Buffers for almost all of its internal RPC protocols and file formats.
Protocol Buffers это компактный способ кодирования данных в двоичном формате, который позволяет определить простую структуру данных, а затем их компилировать и присвоить классы для представления этих структур в нужном языке ( Java, Python или C++ ).
http://google-opensource.blogspot.com/2008/07/protocol-buffers-googles-data.html
http://code.google.com/apis/protocolbuffers/docs/overview.html



Офлайн

#3 Май 29, 2009 21:59:10

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

Создание системы автоматизации движения документов

Использую Protocol Buffers (ПБ) в клиент-серверном приложении. Сначала думал свой протокол придумывать, при необходимости сжимать и передавать в сжатом виде. Потом посмотрел на ПБ. Сделал тестовое приложение и оказалось, что даже сжимать не понадобилось (ну, это для моих данных).
Есть минус (но не в моем случае), размер библиотеки достаточно большой.

И еще, текущая версия не хочет устанавливаться с помощью easy-install. Но ручной запуск скачанного в соответствии с readme.txt работает.
Как потом оказалось, есть и egg (116 KB).



Офлайн

#4 Май 30, 2009 00:31:14

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Создание системы автоматизации движения документов

regall
Zope3 хорош. Для сайтов. Особенно для сложных сайтов. Если нужен именно клиент-сервер - zope принципиально непригоден. А я до сих пор думаю, что web-browser-client - не идеальное решение для абсолютно всех задач. А XML-RPC может мало, а ест много.

Lexander, dvs
PB неплох. Как протокол. (Маленькое отступление - если хотите сделать яйцо из неподготовленного к нему дистрибутива - поменяйте from distutils.core import setup на from setuptools import setup. И все. Можно обойтись и без правки setup.py, но так - быстрее).

Если делаем клиент-сервер, живущий в локалке (в большой распределенной системе свои правила) - нужна еще и транзактная целостность.
Можно писать самому (в простых случаях для единого сервера - несложно).
Хороший выбор - AMQP. Мне он нравится. Гонял в версии rabbitmq.

Ни на чем не настаиваю, но советую посмотреть.

P.S.
Кстати, сейчас на моей работе все основано на setuptools. Т.е. любая наша или сторонняя либа должна быть setuptools compatible. Только наш код мы не выкладываем на PyPI. А потом основываясь на setuptools metadata можно легко завернуть творение во что угодно.



Офлайн

#5 Ноя. 20, 2009 21:30:04

qman
От:
Зарегистрирован: 2007-07-02
Сообщения: 444
Репутация: +  0  -
Профиль   Отправить e-mail  

Создание системы автоматизации движения документов

Андрей Светлов
Можно и msi. В стандартном питоне есть msilib. Страшненькая, но рабочая. Главное назначение - собирать msi package самого питона - но можно использовать и для своих целей.
спасибо за ответ, а пример использования msilib привести можете? Как создавать msi пакеты?



Офлайн

#6 Ноя. 21, 2009 08:55:14

pythonwin
От:
Зарегистрирован: 2006-07-18
Сообщения: 1294
Репутация: +  0  -
Профиль   Отправить e-mail  

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version