Wirtualny kubek nie jest ani pełny ani pusty

kubek VaGla.pl z BlenderaMniej więcej skończyłem upgrade serwisu. Wiem, że jeszcze kilka mechanizmów należy poprawić, ale zrobię to w wolnej chwili. Przy okazji lekko odświeżyłem layout (samych polskich słów używa się opisując czynności wykonywane dziś przez webmastera...). A z okazji przejścia na kolejną wersję Drupala i kolejną wersję serwera baz danych mam dla Państwa kubek serwisu VaGla.pl Prawo i Internet...

Kubek tylko wirtualny, bo wymodelowany i wyrenderowany w Blenderze (Tapeta: Wirtualny kubek serwisu VaGla.pl Prawo i Internet). Nie przypuszczam, że ktoś umieści sobie ten kubek na pulpicie własnego komputera. Niech to zatem będzie ślad po "wprawkach", które od czasu do czasu sobie robię, by opanować narzędzie. Ten nieistniejący kubek to trochę taka alegoria tego serwisu. Jedna komenda wydana w roztargnieniu może posłać go w niebyt (bo przecież ten serwis istnieje tylko o ile istnieją bazy danych, które prezentują odwiedzającym te treści). Oczywiście mam backupy, ale... Wiedza gromadzona w formie elektronicznej jest niezwykle ulotna. Warto o tym czasem sobie pomyśleć.

Co do odświeżenia mechanizmu serwisu - zrezygnowałem jednak z pomysłu na wykorzystanie shoutboxu (a może shoutboxa? W każdym razie to taki mechanizm, który umożliwia w prostszy i bardziej ulotny sposób komunikować się z i między użytkownikami). Nadal jest problem z wysyłaniem maili z serwisu. Niby wszystko już powinno działać prawidłowo, ale wiem, że do Onetu wygenerowane przez automat listy nie przychodzą (chociaż nieautomatyczna korespondencja z konta, którego na co dzień używam na konto, które przesyłki od automatu nie odbiera przebiega bez zarzutu).

Jak będziecie Państwo przeprowadzali modernizacje swoich instalacji Drupala - zwracam uwagę na problem kodowania znaków. To raczej problem nie z instalacją Drupala, a z bazą danych. MySQL w wersji 4.0 inaczej opisywał tabele (po upgradzie widać "latin1_swedish_ci"), chociaż treść była przechowywana i gromadzona jako utf8. Po aktualizacji serwera bazodanowego do wyższej wersji trzeba było przejechać po bazach danych skryptem (oczywiście można też było to zrobić w inny sposób, ale...). Nie od razu się wszystko udało. Skrypt czasowo podmieniał typy tabel na varbinary, a potem miał je zamienić na varchar. Nie wszędzie się to udało. Na przykład nie udało się w tabeli search_total i trzeba było ręcznie, ale wcześniej było kilka "ślepych uliczek rozumowania", zanim okazało się dlaczego dwa zapytania kierowane do wyszukiwarki potrafią "wywalić" cały serwis "w powietrze"... Kto z Państwa śledził komunikaty pojawiające się na pierwszej stronie serwisu, ten zauważył, że reindeksowałem cały serwis (wysyłałem komunikaty za pomocą czasowo zainstalowanego shoutboxa). To było zaraz po tym, jak - poszukując źródła problemu - doszedłem do wniosku, iż może nim być wygenerowane przez poprzednią wersję silnika zestawienie w tabelach "search" (co się potem okazało nieprawdą, problemem była jedynie artefakt w postaci varbinary w tabeli search_total - dlatego zapytanie do tabeli oznaczonej jako binarna było przetwarzane przez 25 minut, zamiast jednej sekundy...)

Kolejne problemy wynikały z praw do katalogów i plików na serwerze. Niektóre mechanizmy wymagają odpowiednio udostępnionych plików (na przykład XML Sitemap z której korzysta m.in. Google, by nie indeksować stale całego serwisu, a tylko te kawałki, które ostatnio się w jakiś sposób zmieniły). Było trochę zabawy w odkrycie dlaczego nie tworzył się automatycznie plik z mapą serwisu. Zwróćcie uwagę na prawa do katalogów i plików (oczywiście - zawsze warto na to zwracać uwagę, ale w przypadku upgradu tu może leżeć problem z niedziałaniem niektórych elementów systemu). Musiałem też zwiększyć limit pamięci do obsługi mechanizmów, bo - jak się okazało - crontab nie był w stanie poprawnie się uruchomić. Z cronem była jeszcze inna akcja - trzeba było usunąć niektóre wpisy w tabeli variable (te, które dotyczyły crona właśnie), gdyż mechanizm "myślał", że jest już uruchomiony i zgłaszał błędy.

Po instalacji nowego silnika serwisu rozjechały się linki do grafik i odesłania do poszczególnych części. Nie mam na myśli tych, które generuje silnik automatycznie. Mam na myśli te linki, które wpisywałem wewnątrz tekstów. Ma to związek z lekką zmianą w "base path" i pewnie dałoby się to zrobić w sposób bardziej elegancki ja podmieniłem wszystkie (większość?) linków po prostu "orając" po bazie. Wykonałem "z palca" ponad 1000 (tysiąc) komend "update...".

Były jeszcze drobne inne zawirowania, jak na przykład problem z javascriptem odpowiedzialnym za "rozwijanie" klas collapse, ale chyba nie ma sensu o nich pisać. W każdym razie przy nowej wersji warto sprawdzić jakie deklaracje i do jakich skryptów znajdują się w page.tpl.php.

Z nowych mechanizmów pragnę czytelnikom polecić mechanizm powiadomień ("Notify"). W swoim profilu każdy teraz może "zasubskrybować się" i - jeśli ma szczęście i jego serwer pocztowy nie odrzuca poczty generowanej przez mój automat - będzie otrzymywał pocztą elektroniczną (raz na tydzień) zestawienie dodanych artykułów (notatek) i/lub komentarzy. Panel wygląda tak:

panel modułu powiadomień

Panel modułu powiadomień. Jeszcze nie spolszczyłem treści, które będą przychodzić do tych, którzy postanowią skorzystać z tego mechanizmu. Postaram się to zrobić w stosownym czasie.

O czym by tu jeszcze wspomnieć? Wszelkie uwagi dotyczące działania serwisu, jak np. propozycje usprawnienia jego pracy, zwrócenie uwagi na błędy, które przeoczyłem w czasie modernizacji, etc., proszę zostawiać w komentarzach do tej notatki.

Ciekawymi sprawami zajmuje się prawnik prowadzący sobie hobbystycznie serwis "w wolnych chwilach", prawda?

Opcje przeglądania komentarzy

Wybierz sposób przeglądania komentarzy oraz kliknij "Zachowaj ustawienia", by aktywować zmiany.

Dlatego właśnie

napisałem sobie swój silnik, oparty nie o mysql'a, a o postgres'a, gdzie nie trzeba definiować w masie miejsc kodowania pól itp. itd, martwić się o klucze (dostępne tylko w InnoDB, który często nie jest oferowany z mysql4 na VPS'ach, a może konkretnie namieszać w skrypcie).

Sam publikowałem przez lata na Movable Type, która od pewnej wersji (gdzie weszły tagi) po prostu zabijało każdy serwer.

W każdym razie gratuluje uporu i poszerzania wiedzy, jak na prawnika jest niezła :).

Drupal chodzi też na postgresie :)

VaGla's picture

Drupala można również uruchomić z PostrgreSQL na zapleczu. Ja też pisałem już w życiu "własne CMSy". Może "pisałem", to nie jest dobre słowo, bo po prostu byłem szefem zespołu przygotowującego kiedyś nowe serwisy Wprost.pl, a potem z częścią tego zespołu pisaliśmy własny silnik (i naprawdę działał i był modułowy i - ogólnie mówiąc - elastyczny). Jednak po tamtych doświadczeniach i po poznaniu Drupala stałem się jego ewangelistą.
--
[VaGla] Vigilant Android Generated for Logical Assassination

To fakt,

To fakt, że jest to popularne oprogramowanie do publikacji treści, tak jak Wordpress, a kiedyś php-nuke. Jednak widywałem tak wiele skanów po różnych katalogach na serwerze, wyszukujących odpowiednie pliki, że utwierdziło mnie to w przekonaniu, iż takie kombajny (nawet fora) mają za dużo dziur i są bardzo niepewne, w porównaniu do korzyści jakie mogą oferować.

Pisanie własnego cms'a jest uciążliwe, ale w tym przypadku, który opisujesz nie dziwię się, nie zaufałbym jako właściciel dużej firmy publikującej treści, do czyjegoś oprogramowania (zwłaszcza o zamkniętym źródle).

Teraz to już po ptokach :), ale na Twoim miejscu (o ile nie potrzebujesz funkcjonalności FullText Search) przeszedłbym na postgres'a, kto wie co jeszcze mysql wymyśli w następnych wersjach.

A może kubek kiedyś

haku's picture

A może kubek kiedyś przestanie być tylko wirtualny? Miło by było pić rano herbatkę z takiego kubeczka ;)

A jakiego masz dostawcę internetu?

Może to głupie ale mój znajomy śle 2x w tygodniu mailing do około 4 tysięcy osób z newslettera i od momentu gdy zaczął korzystać z łączy UPC... dostawał po tysiąc maili zwrotnych właśnie ze skrzynek Onetu - poczta.onet.pl, op.pl buziaczek.pl itp... po prostu wszystkie odrzucało z automatu
Skontaktował sie z onetem, czy czasem nie jest na jakiejś czarnej liście i oni mu odpowiedzieli, że nic z tych rzeczy i żeby problemu szukał i swojego ISP...
PS. Gratuluję wszechstronnych umiejętności :)

Blacklisted

Jeżeli poczta wychodzi przez xanth.eu.org, to jest on na jednej z czarnych list (Removal Policy dla tej listy). Tzn. cały AS5617 firmy TP S.A. jest na tej czarnej liście, nie sam serwer. Na pozostałych RBLach, z których korzystam, nie widzę żadnych problemów.

Gina tylko wysylane przez automat

Gdyby tu lezala przyczyna, to chyba zadne e-maile z konta VaGli by nie docieraly na onet? A gina tylko te wysylane przez automat.

maile

W temacie maili - czy to nie jest tak błaha przyczyna jak podszywanie się automatu pod konto? Podejrzewam że serwer ma swojego sendmaila (lub cos podobnego) i nie loguje się na konto tak jak prawdziwy użytkownik tylko przedstawia się jako inny serwer niż jest w rzeczywistości.

To takie moje luźne skojarzenie bo spotkałem się z takim problemem na jednym z cms'ów.

"layout" to w polskiej

Richelieu's picture

"layout" to w polskiej terminologii "makieta" ;)
____________________________________________
Jeżeli dasz mi sześć linijek napisanych przez najbardziej uczciwego człowieka i tak znajdę w nich przyczynę do powieszenia go.

Piotr VaGla Waglowski

VaGla
Piotr VaGla Waglowski - prawnik, publicysta i webmaster, autor serwisu VaGla.pl Prawo i Internet. Ukończył Aplikację Legislacyjną prowadzoną przez Rządowe Centrum Legislacji. Radca ministra w Departamencie Oceny Ryzyka Regulacyjnego a następnie w Departamencie Doskonalenia Regulacji Gospodarczych Ministerstwa Rozwoju. Felietonista miesięcznika "IT w Administracji" (wcześniej również felietonista miesięcznika "Gazeta Bankowa" i tygodnika "Wprost"). Uczestniczył w pracach Obywatelskiego Forum Legislacji, działającego przy Fundacji im. Stefana Batorego w ramach programu Odpowiedzialne Państwo. W 1995 założył pierwszą w internecie listę dyskusyjną na temat prawa w języku polskim, Członek Założyciel Internet Society Poland, pełnił funkcję Członka Zarządu ISOC Polska i Członka Rady Polskiej Izby Informatyki i Telekomunikacji. Był również członkiem Rady ds Cyfryzacji przy Ministrze Cyfryzacji i członkiem Rady Informatyzacji przy MSWiA, członkiem Zespołu ds. otwartych danych i zasobów przy Komitecie Rady Ministrów do spraw Cyfryzacji oraz Doradcą społecznym Prezesa Urzędu Komunikacji Elektronicznej ds. funkcjonowania rynku mediów w szczególności w zakresie neutralności sieci. W latach 2009-2014 Zastępca Przewodniczącego Rady Fundacji Nowoczesna Polska, w tym czasie był również Członkiem Rady Programowej Fundacji Panoptykon. Więcej >>