python

Portret użytkownika bluszcz

Skalowanie aplikacji napisanych w Django

Jeśli stoisz przed wyzwaniem napisania / zaprojektowania aplikacji Django obsługującej setki żądań / tranzakcji na sekundę powinieneś/naś koniecznie zapoznać się z dwoma pozycjami:

Portret użytkownika bluszcz

Piszemy własny serwer proxy w pythonie - cześć 1

Pisząc sceniaruszy testów obciążeniowych serwisów www często punktem wyjścia jest przygotowanie "tranzakcji" (używając tsungowej nomenklatury"), czyli listy plików dociąganych wraz z głównym dokumentem xhtml/html.

Na szczęście nowoczesne frameworki (między innymi Grinder, Tsung) dostarczają własne proxy umożliwiające przygotowanie takowej listy, często od razu w formacie używanym poprzez to narzędzie.

Co jednak zrobić w przypadku, kiedy potrzebujemy taką listę przygotować we własnym formacie, lub odrobinę zmodyfikowanym?

Wyjść mamy kilka, pierwszym najprostszym jest zainstalowanie dowolnego serwera proxy, między innymi squid lub tinyproxy. Squida nie polecam do tego celu - jest zdecydowanie zbyt potężny. Tinyproxy jest wygodny, małe i szybkie. Obydwa narzędzia przygotują piękną listę w formacie NCSA common log, który możemy łatwo sparsować...

Bardzo interesującym rozwiązaniem jest natomiast napisanie własnego proxy, dzięki czemu zyskamy:

  • nieocenioną wiedzę na temat protokołu HTTP :)
  • możliwość dowolnego formatowania requestów
  • możliwość dodania dowolnej funkcjonalności - na przykład liczenie objętości ściąganych plików za jednym żądaniem dokumentu html
  • i tak dalej...

Poniżej wklejam kawałek kodu, którego docstringi mówią wszystko - obsługuje on na początek jedynie metodę GET, łamie kilka standardów odnośnie protokołu HTTP - ale wszystko będzie w następnych częściach. Jako języka użyłem pythona - wydaje się on idealny, o zaletach nie będę się rozpisywał - poniższych kawałek kodu po odjęciu komentarzy zajmuje kilkanaście linijek i można go napisać w 30 minut...

Portret użytkownika bluszcz

Nowa wersja Pydev ze wsparciem dla Google App Engine

Jak podaje Fabio Zadrozny (autor projektu Pydev) na swoim blogu, najnowsza wersja (1.4.6) pluginu będzie posiadają mechanizmy ułatwiające pracę osobom korzystającym z Google App Engine.

Do ułatwień tych zalizaczać się będą między innymi:

* możliwośc utworzenia projektu o typie Google App Engine
* możliwość konwersji aktualnego projektu do Google App Engine
* uploadowanie aplikacji z poziomu IDE

Autor informuje również (w komentarzu), iż jest to pierwszy plugin do Pydeva, jednym z kolejnych prawdopodobnie będzie Django.

Portret użytkownika bluszcz

Serwer reklam w Erlangu czy w Pythonie?

Na konferencji Komercyjnych Użytkowników Funkcjonalnego Programowania jednym z prelegenów był Bob Ippolito, twórca MochiKita, popularnej i lekkiej biblioteki do JavaScriptu (która, cytując ze strony sprawia, że JavaScript mniej obsysa).

Portret użytkownika bluszcz

Dziesięć szalenie użytecznych tipsów odnośnie Django

Jeśli jesteś programistą Django - zarówno stawiającym pierwsze kroki, jak i wyjadaczem z kilkuletnim stażem - serwis NETTUS przygotował coś dla Ciebie, dziesięć użytecznych porad.

Portret użytkownika bluszcz

DjangoCon 2008 - zapis wideo z konferencji

Na popularnym serwisie YouTube pojawiła się playlista zawierająca wystąpienia prelegentów na konferencji DjangoCon 2008 (playlista jest autorstwa teamu Google).
Poniżej zamieszczam myśl przewodnią konferencji (wystąpienie twórców Django):

Portret użytkownika bluszcz

PyCon PL 2008

Rybnik pozazdrościł Pcimiowi Pythona i organizuje po raz pierwszy polską edycję konferencji PyCon - żartobliwym stwierdzeniem mówią o PyConie organizatorzy imprezy.

Portret użytkownika bluszcz

Python Magazine 2008-04

Ukazał się właśnie (trzymam świeży, jeszcze ciepły wydruk:) nowy numer Python Magazine.

Co w nim znajdziemy?

Portret użytkownika bluszcz

Google App Engine

Ostatnimi dniami Google zaprezentowało nową usługę Google App Engine . Czym się ona charakteryzuje?

Portret użytkownika bluszcz

Python Magazine marzec 2008

Kilka dni temu ukazało się marcowe wydanie Python Magazine.

Co w nim znajdziemy?

Bookmark and Share
Subskrybuje zawartość