python

O wężu, co go mam w kieszeni

Kolejkowanie zadań - cron, postgresql, aplikacja webowa

Sytuacja: Jest skrypt odpalany regularnie z crona. Skrypt robi "coś", dla utrudnienia powiedzmy, że w kilku rodzajach, a wyniki wrzuca do bazy danych (w tym przypadku: postgresql'a). Dane z bazy są prezentowane w aplikacji webowej. Skrypt działa dość długo, powiedzmy, że około godziny. Jednocześnie powinna działać tylko jedna instancja, ale ponieważ jest kilka rodzajów "czegoś", to w zależności od rodzaju, zadanie musi być uruchamiane z różnym interwałem, może być też jednorazowe.

Problem: Skrypt może być wywoływany "według planu" - regularnie, albo "on demand" - użytkownik aplikacji stwierdza, że skrypt ma wykonać "teraz zaraz" jakiś rodzaj operacji. Jak więc zarządzać momentem wywołania skryptu z crona i aplikacji jednocześnie?

Hi, there. I want to talk to you about ducts, czyli porozmawiajmy o szablonach Mako

:  

Z ciekawości spojrzałem, co się pisze o szablonach Mako w internetach po polsku, i... no właśnie. Nic. Raptem kilka wpisów wspominających, że jest, a jak jest, to do dupy. Hmm.. Szczerze mówiąc, po ponad roku pracy z tymi szablonami przy różnych projektach, jestem dokładnie odwrotnego zdania.

skryptoteka: walidacja NIP i REGON

Jakiś czas temu zamieściłem na polskim wiki pythonowym walidator numerów NIP i REGON.

Instalacja django/mod_python na serwerze linuxpl.com

Wprowadzenie

W poszukiwaniu hostingu dla aplikacji napisanej z użyciem Django, natknąłęm się na ofertę firmy Linuxpl.com, która oferuje tani hosting aplikacji działających pod mod_python'em (możliwa jest także instalacja aplikacji pylonsowych). Oferta jest dość interesująca: konto z dostępem via ssh, nieograniczona liczba domen, emaili, baz MySQL, 3 listy mailingowe, Python 2.4, PostgreSQL 8.2 i całkiem użyteczny panel administracyjny za niewielkie pieniądze. Aby cieszyć się dostępem do mod_pythona należy wykupić przynajmniej plan '2gb'.

Skrypty Scribusowe

Jakiś czas temu przygotowałem kilka skryptów w pythonie do Scribusa. Ich działanie - utworzenie powtarzalnych elementów na stronie (np.
Syndicate content