[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 <*> 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
[Zope-pt] ZEO corrupted record, oid
Caros, como o TOM diz, foi goianada mesmo ... apaguei o file do cache indicado no trace e subiu o Zeo Client, era o devel server nao precisava ter tanto receio :-) Valeuz! []'s -- RodrigoCastardo [EMAIL PROTECTED] MSN - [EMAIL PROTECTED] http://rodrigocastardo.objectis.net/ 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
[Zope-pt] ZEO corrupted record, oid
TaRde pessoal! depois de uma queda de energia tive uma surpresinha qdo fui startar nossos Zeo Clients, segue abaixo: 2006-01-30 14:21:45 INFO ZEO.cache reusing persistent cache file '/var/zope/instance1/var/zeo1-1.zec' Traceback (most recent call last): File "/var/zope/zope/lib/python/Zope2/Startup/run.py", line 56, in ? run() File "/var/zope/zope/lib/python/Zope2/Startup/run.py", line 21, in run starter.prepare() File "/var/zope/zope/lib/python/Zope2/Startup/__init__.py", line 98, in prepare self.startZope() File "/var/zope/zope/lib/python/Zope2/Startup/__init__.py", line 257, in startZope Zope2.startup() File "/var/zope/zope/lib/python/Zope2/__init__.py", line 47, in startup _startup() File "/var/zope/zope/lib/python/Zope2/App/startup.py", line 56, in startup DB = configuration.dbtab.getDatabase('/', is_root=1) File "/var/zope/zope/lib/python/DBTab/DBTab.py", line 96, in getDatabase db = self._createDatabase(name, is_root) File "/var/zope/zope/lib/python/DBTab/DBTab.py", line 113, in _createDatabase db = factory.open() File "/var/zope/zope/lib/python/Zope2/Startup/datatypes.py", line 163, in open DB = self.createDB() File "/var/zope/zope/lib/python/Zope2/Startup/datatypes.py", line 160, in createDB return ZODBDatabase.open(self) File "/var/zope/zope/lib/python/ZODB/config.py", line 97, in open storage = section.storage.open() File "/var/zope/zope/lib/python/ZODB/config.py", line 153, in open read_only_fallback=self.config.read_only_fallback) File "/var/zope/zope/lib/python/ZEO/ClientStorage.py", line 314, in __init__ self._cache.open() File "/var/zope/zope/lib/python/ZEO/cache.py", line 112, in open self.fc.scan(self.install) File "/var/zope/zope/lib/python/ZEO/cache.py", line 835, in scan install(self.f, ent) File "/var/zope/zope/lib/python/ZEO/cache.py", line 121, in install o = Object.fromFile(f, ent.key, skip_data=True) File "/var/zope/zope/lib/python/ZEO/cache.py", line 630, in fromFile raise ValueError("corrupted record, oid") ValueError: corrupted record, oid acompanhei a thread[1] e uma das sugestoes foi apagar o arquivo de cache, eh isso? alguem passou por isso jah ? [1]http://mail.zope.org/pipermail/zodb-dev/2006-January/009762.html Valeuz []'s -- RodrigoCastardo [EMAIL PROTECTED] MSN - [EMAIL PROTECTED] http://rodrigocastardo.objectis.net/ 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
Re: [Zope-pt] UID
Mais uma...Investigando um pouco mais, percebi que alguns objetos do uid_catalog e do reference catalog incluem o path do portalpor exemplo no meu caso:/intra1/pasta/objetoem outros somente:pasta/objeto. Lembro que, no interlegis, há alguns verões passados isso foi motivo de muita dor de cabeça em relação ao catálogo. Até que em algumas versões não observamos mais o problema..tento tudo se indexado de acordo com o objeto. Parece ser uma influencia do apache e suas rewrite_rules.Mas o problema do setUid parece estar resolvido, agora basta brigar ocom o apache.ObrigadoAbraçosTomEm 30/01/06, Wilton Alencar <[EMAIL PROTECTED]> escreveu: Sidney e outros.Acho que estou ficando louco...Consegui setar um UID para um objeto usando um external methodO uid_catalog mostra a mudança.O reference_catalog não mudou nada.Mas nada acontece com os objetos que referenciam aquele uid. Enfim consegui uma situação com dois objetos com uid s iguais...Pode?Fiz burrada? Ou foi só uma goianada mesmo?o codigo do external methodo que seta o uid é:def setUID(): obj=context.this() uid=context.REQUEST.uid try: obj._setUID(uid) obj.reindexObject() return 1 except: return "failure" Para enviar uma mensagem: zope-pt@yahoogrupos.com.br Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [Zope-pt] UID
Sidney e outros.Acho que estou ficando louco...Consegui setar um UID para um objeto usando um external methodO uid_catalog mostra a mudança.O reference_catalog não mudou nada.Mas nada acontece com os objetos que referenciam aquele uid. Enfim consegui uma situação com dois objetos com uid s iguais...Pode?Fiz burrada? Ou foi só uma goianada mesmo?o codigo do external methodo que seta o uid é:def setUID(): obj=context.this() uid=context.REQUEST.uid try: obj._setUID(uid) obj.reindexObject() return 1 except: return "failure" Para enviar uma mensagem: zope-pt@yahoogrupos.com.br Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [Zope-pt] UID
OK,infelizmente tentei a solução simplista e não deu certo.Estudei o código e fiz algumas tentativas com scripts e external methods, mas também não funcionou.Acabei por editar manualmente cada documento que referenciava a imagem para agradar o usuário e dar uma solução rápida. Ao meu ver é um problema que deve ter uma solução simplificada, pois é muito comum isso. O usuário insere uma imagem(ou outra coisa) em um documento e quer atualizar a imagem, eventualmente preferindo apagar a anterior e inserir uma nova com o mesmo id. Ao meu ver faz sentido funcionar. Acredito que fica aí, uma sugestão para fácil manipulação de uid, pois realmente achei muito estranho o usuário apagar uma imagem e ao recolocá-la com o mesmo id o plone não pegar. Isso fere um pouco o conceito de fácil atualização do zope que permite a mudança de até tipos de objetos, desde que respeitado o id. Sei que as referências resolvem muitos problemas de cópia e movimentação de objetos, mas nesse caso fico pro usuário final um comportamento bem estranho. Que não agradou.Vou continuar tentando escrever algo aqui para facilitar a tarefa, e se alguém enfrentar o mesmo problema podemos trocar figurinhas. ObrigadoAbraçosTOMEm 27/01/06, Sidnei da Silva <[EMAIL PROTECTED]> escreveu: On Fri, Jan 27, 2006 at 06:03:57PM -0200, Wilton Alencar wrote:||Sidnei ou outros: |Como setar um uid?|Fiz a solução simplista achando que um|uid_catalog.catalog_object(objeto, uid)|Mas não funcionou...Tom, vc tem que ler mais o fonte.-> Archetypes/Referenceable.py:_setUID --Sidnei da SilvaEnfold Systems, LLC.http://enfoldsystems.comPara 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 Para enviar uma mensagem: zope-pt@yahoogrupos.com.br Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.