RES: [zope-pt] ZODB

2007-01-08 Por tôpico Denstone, Alexandre J

Samuel,
 
você poderia exportar o conteúdo do ZODB para um formato plain-text (CSV, XML, 
etc.) e daí importá-lo ao SGBDR. 
 
Um exemplo desse script segue abaixo:
 
[]s
 
Alexandre J Denstone
[EMAIL PROTECTED] 
 
 
 
def findContent(root, CacheMinimize):

meta = str(root.__class__).split()[2].split('.')[-1]

print root.id, meta

if hasattr(root, '_objects'):

dict_objs = root._objects
for dict_obj in dict_objs:

objPath = '/'.join(root.getPhysicalPath()) + '/' + 
dict_obj['id']

obj = app.unrestrictedTraverse(objPath)

try:

# é necessário para 'recuperar' o objeto do ZODB
obj.getId()

try:
# para testar se a classe tem o atributo
if hasattr(root, 'titulo'):
# para testar se é uma função 
ou propriedade
if callable(root.titulo):
titulo = root.titulo()
else:
titulo = root.titulo
print titulo
except:
pass

except:
print "Unexpected error:", sys.exc_info()[0]
print objPath
pass

# 'flush' do cache para liberar memória
found += 1
if found % 1000 == 0:
CacheMinimize()

findContent(obj, CacheMinimize)


swhome=r'C:/zclientintra'
import sys
sys.path.insert(0, '%s/lib/python' % swhome)
sys.path.insert(1, '%s/bin/lib' % swhome)
sys.path.insert(1, '%s/bin/DLLs' % swhome)
sys.path.insert(2, '%s/bin/lib/plat-win' % swhome)
sys.path.insert(3, '%s/bin/lib/win32' % swhome)
sys.path.insert(4, '%s/bin/lib/win32/lib' % swhome)
sys.path.insert(5, '%s' % swhome)
sys.path.insert(6, '%s/bin/lib/win32com' % swhome)

import Zope
app = Zope.app()

CacheMinimize = 
app.unrestrictedTraverse('Control_Panel/Database/manage_minimize')

objs_path = ['/']

for obj_path in objs_path:
findContent(app.unrestrictedTraverse(obj_path), CacheMinimize)

get_transaction().commit()
app._p_jar.close()

Esta mensagem, incluindo seus anexos, pode conter informacao confidencial e/ou 
privilegiada. Se voce recebeu este e-mail por engano, nao utilize, copie ou 
divulgue as informacoes nele contidas. E, por favor, avise imediatamente o 
remetente, respondendo ao e-mail, e em seguida apague-o. Este e-mail possui 
conteudo informativo e nao transacional. Caso necessite de atendimento 
imediato, recomendamos utilizar um dos canais disponiveis: Internet Banking, 
Atendimento por Telefone ou agencia/representante de atendimento de sua 
conveniencia. Agradecemos sua colaboracao.



RES: [Zope-pt] Zope + Apache + RewriteRules + mod_proxy = 50% mais rapido!

2006-01-31 Por tôpico Denstone, Alexandre J
Hugo,

Só para a sua curiosidade, você já viu este artigo sobre integração do 
Apache com Zope usando mod_python?

http://www.zope.org/Members/pperegrina/ZopeHandler

Abraços,

Alexandre J Denstone
* [EMAIL PROTECTED] 
-Mensagem original-
De: zope-pt@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Hugo Ramos
Enviada em: segunda-feira, 30 de janeiro de 2006 20:01
Para: [Zope-pt]
Assunto: [Zope-pt] Zope + Apache + RewriteRules + mod_proxy = 50% mais rapido!

Bem... depois de alguns dias de testes e afinacao consegui acelerar o
Zope Dev da empresa em 50%

Usando o Apache para servir todo o conteudo estatico incluindo HTML,
imagens, flash e afins e deixando o Zope a servir apenas a logica
(conteudo dinamico).

Usei o mod_rewrite para stripar URL's das coisas estaticas e o
mod_proxy para fazer proxy de todo o conteudo. Alem disso ainda vou
melhorar o conteudo dinamico usando o ram_cache_manager.

Fica aqui a parte que vai no httpd-vhosts.conf:

==

ServerAdmin [EMAIL PROTECTED]
DocumentRoot /var/apache/Apache/htdocs/zope
ServerName www.etc.com
ServerAlias www.etc.com
ErrorLog logs/www.etc.com-error_log
CustomLog logs/www.etc.com-access_log common


   RewriteEngine On
   RewriteLog "logs/rewrite_log"
   RewriteLogLevel 2
   RewriteRule ^/local/ - [L]
   RewriteRule ^/(.*\.(gif|png|jpg|jpeg|swf))
/var/apache/Apache/htdocs/zope/$1 [NC,L]
   RewriteRule ^/(.*)
http://localhost:8080/VirtualHostBase/http/www.etc.com:80/vhosts/www/VirtualHostRoot/$1
[P,L]



==

Se alguem tiver isto ainda mais afinado partilhe connosco! :-)

Abracos

--
Hugo Ramos - [EMAIL PROTECTED]
http://otugga.blogspot.com/


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos




 





Esta mensagem, incluindo seus anexos, pode conter informação confidencial e/ou 
privilegiada. Se você recebeu este e-mail por engano, não utilize, copie ou 
divulgue as informações nele contidas. E, por favor, avise imediatamente o 
remetente, respondendo ao e-mail, e em seguida apague-o. Este e-mail possui 
conteúdo informativo e não transacional. Caso necessite de atendimento 
imediato, recomendamos utilizar um dos canais disponíveis: Internet Banking 
 , BankBoston por telefone 
 ou agência/representante de atendimento de 
sua conveniência. Agradecemos sua colaboração.
This message, including its attachments, may contain confidential and/or 
privileged information. If you received this email by mistake, do not use, copy 
or disseminate any information herein contained. Please notify us immediately 
by replying to the sender and then delete it. This email is for information 
purposes only, not for transactions. In case you need immediate assistance, 
please use one of the following channels: Internet Banking 
 , BankBoston by phone 
 or branch/relationship manager at your 
convenience. Thank you for your cooperation.


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html