Udało mi się wreszcie zaprzyjaźnić Firefoxa z Akregatorem, tj. doprowadzić do stanu, w którym kliknięcie ikonki feedu w Firefoxie dodaje feed do Akregatora. Dokładniej ... udało mi się ponownie.
Dalszy ciąg "Firefox i Akregator..." »Ruch w chmurach bis
Wczoraj wieczorem pisałem o pojawieniu się konkurencji dla Amazon EC2, a dzisiaj Amazon ogłosił zakończenie fazy beta EC2, poinformował o wprowadzeniu dlań Service Level Agreement (czyli formalnego zobowiązania co do nieprzerwanej dostępności usługi). A także dał możliwość wykorzystywania Windows, a nie tylko Linuxa.
Zapowiedziana została też - na rok 2009 - cała seria nowych funkcji, między innymi:
Dalszy ciąg "Ruch w chmurach bis" »Ruch w chmurach
Ciekawostka nieco w polskich warunkach egzotyczna, ale ważna. Firma Rackspace kupiła Slicehosta i Jungledisk i szykuje się do oficjalnej prezentacji nowej oferty chmur obliczeniowych. W największym skrócie: oznacza to pojawienie się poważnej konkurencji dla Amazon Web Services.
Dalszy ciąg "Ruch w chmurach" »Konfigurujemy VPS - część 6, startowanie i restartowanie
Szósty artykuł z cyklu Konfigurujemy VPS. Tym razem piszę o automatycznym uruchamianiu programów.
Obiecany w piątej części szczegółowy opis konfiguracji nginx-a będzie niedługo, po prostu przyda mi się do niego mechanizm opisywany poniżej.
Start, stop, restart...
Jak dystrybucje Linuxa uruchamiają serwery? Każdy wie - pliki w
/etc/init.d
, linki symboliczne do nich w /etc/rc*
lub podobnych
katalogach, proces init uruchamiający podlinkowane skrypty przy
zmianie poziomów działania. Tak startuje niemal wszystko, od demonów
wspierających działanie sprzętu, po serwery poczty czy WWW.
Podejście to ma dość oczywistą wadę, istotną zwłaszcza gdy administrator zagląda na serwer od czasu do czasu, a usługi mają działać nieprzerwanie. Proces, który ulegnie awarii, nie jest uruchamiany ponownie.
W przypadku najważniejszych systemowych demonów jest to mniej bolesne (działają bardzo stabilnie, często mają wbudowane własne mechanizmy restartu) - choć i tu w specyficznych przypadkach (choćby brak pamięci) mogą wystąpić awarie. Nasz kod - jeśli takowy mamy - może być bardziej wrażliwy.
Dlatego warto korzystać z narzędzi zapewniających nie tylko uruchomienie takiej czy innej aplikacji, ale też jej restart w razie awarii. Jest ich kilka, poniżej piszę szczegółowo o mojej ulubionej. Przy okazji opiszę też poręczną technikę umożliwiania konfigurowania demonów przez użytkowników nie mających praw administratora.
Dalszy ciąg "Konfigurujemy VPS - część 6, startowanie i restartowanie" »Komunikacja kołem się toczy
Dlaczego XML odniósł sukces?
Sporo uczonych słów na ten temat napisano, najczęściej próbując dorobić różne złożone ideologie. A tymczasem, kluczem do sukcesu XML były te same dwa czynniki, które stały za sukcesem sieci WWW:
- prostota,
- łatwa amortyzacja zmian.
A przynajmniej, to o nie chodziło w zastosowaniach, którym chcę poświęcić ten artykuł: budowaniu API komunikacyjnych, procesach wymiany danych, integracji systemów.
Dalszy ciąg "Komunikacja kołem się toczy" »Polska mowa trudna mowa...
Poniższy uroczy obrazek pochodzi z formularza rejestracyjnego myspace
Dalszy ciąg "Polska mowa trudna mowa..." »Konfigurujemy VPS - część 5, WWW
Piąty artykuł z cyklu Konfigurujemy VPS. Najwyższy czas napisać o serwerze WWW.
Mamy tu sytuację trochę podobną jak w przypadku DNS - jeden program (Apache) jest używany w zdecydowanej większości zastosowań i właściwie utożsamiany z serwerem WWW pod Linuxem (i nie tylko pod Linuxem). Jest o tyle inaczej, że ten program jest faktycznie fajny. Ale nie jedyny. A różnica w stosunku do nginxa czy lighttpd nie polega na wypieszczeniu kodu czy atrakcyjnych dodatkach, jest fundamentalna.
Koncepcja
Jak działa Apache (a także IIS i wiele innych serwerów WWW)? Każde nadchodzące żądanie jest przydzielane do jakiegoś procesu lub wątku roboczego, a ten zajmuje się odczytaniem treści żądania, pełną obsługą i odesłaniem wyniku. Przez cały ten czas proces lub wątek jest dedykowany do obsługi tego jednego żądania i niczym innym się nie zajmuje.
Nginx, lighttpd czy Cherokee działają inaczej. Jeden
proces monitoruje gromadę otwartych połączeń, reagując na możliwość
odczytu lub zapisu danych. Trochę więcej o takim stylu programowania
już pisałem, patrz artykuł o programowaniu zdarzeniowym.
Czemu jest to wielka różnica?
Dalszy ciąg "Konfigurujemy VPS - część 5, WWW" »Konrad jest w Rwandzie
Konrad jest w Rwandzie to blog Konrada Karpieszuka. Autor faktycznie jest (jesienią 2008) w Rwandzie i bardzo ciekawie o tym pisze. Powtarzać ani streszczać jego artykułów nie będę, zachęcam do lektury orginału.
Na blog Konrada trafiłem zupełnym przypadkiem - zostawił komentarz przy jednym z moich Linuxowych artykułów, zerknąłem, kim jest autor i na parę godzin utonąłem. I cała sprawa zrobiła na mnie duże wrażenie.
Dalszy ciąg "Konrad jest w Rwandzie" »Styczna do okręgu wpisanego w trójkąt ABC przecina bok AB w punkcie X...
W czasach licealnych trafiłem na obóz szkoleniowy dla kandydatów na międzynarodową olimpiadę matematyczną. A tam, oprócz brydża, łażenia po górach i wykładów miał miejsce swoisty maraton zadaniowy, codziennie dostawaliśmy po kilka zadań a potem dyskutowaliśmy ich rozwiązania.
Był to jeden z kulminacyjnych punktów obszernego cyklu kółek, seminariów i konkursów organizowanych dla uzdolnionych matematycznie licealistów. Grupa matematyków uniwersyteckich wkładała w to naprawdę dużo serca i pracy - i tworzyli coś bardzo ciekawego.
Zadania były trudne ale każde choć kilka osób zrobiło. Zdziwiliśmy się więc, gdy któregoś dnia w miarę łagodnie wyglądające zadanko z geometrii poprawnie rozwiązał tylko jeden z nas. Okazało się, że ... miał cyrkiel i zrobił porządny rysunek.
W tym artykule parę słów o cyrklu, którego obecnie używam do rozwiązywania zadanek geometrycznych, czyli o paru Linuxowych programach pozwalających wygodnie malować przecinające się pod różnymi kątami proste, okręgi wpisane i opisane, dwusieczne, spodki wysokości i inne elementy eksploatowane w geometrii planarnej.
Dalszy ciąg "Styczna do okręgu wpisanego w trójkąt ABC przecina bok AB w punkcie X..." »Powtórka po timeoucie
Projekty czysto internetowe są najczęściej planowane i budowane od góry do dołu, w spójny i jednolity sposób. Informatyka biznesowa wygląda inaczej - obrazek składany jest z kilku, kilkunastu, a bywa że i kilkudziesięciu systemów, aplikacji, modułów. Interfejs webowy (albo i parę), kilka aplikacji back-office dla różnych grup pracowników, system(y) ewidencji zgłoszeń, pakiet IVR i/lub call-centre, kanał mobilny, moduł autoryzacyjny, główna baza klientów czy towarów, komponenty wymiany danych z firmami zewnętrznymi, procedury raportujące, pakiety analityczne, podsystem windykacyjny, obsługa masowych wydruków i wysyłek, system finansowo-księgowy, oprogramowanie specjalizowanych urządzeń (od robotyki przemysłowej po bankomaty), ... Wszystko to kupowane i budowane przez lata, od wielu dostawców, a potem spinane na różne sposoby.
O specyfice tego spinania może w przyszłości troszkę popiszę, ale dziś proste wspomnienie techniczne - jak sobie dwa systemy rozmawiały. Parę lat temu to było.
Dalszy ciąg "Powtórka po timeoucie" »