nowości w postgresie 8.2 – … advisory locks

miałem o tym napisać później, ale skoro merlin już opisał advisory locki, nie pozostaje mi nic innego niż
opisać je u siebie.

advisory locki są to zupełnie nowe locki nie powiązane z żadnymi fizycznymi obiektami w bazie. służą one do
przekazywania informacji między sesjami i transakcjami.

najbardziej szczególną cechą tych locków jest to, że działają poza mechanizmem transakcji. dzięki temu możliwe jest używanie
ich do celów do których standardowe locki sie nie nadawały.

przykładem użycia z mojego podwórka jest zakładanie locka na konkretne źródło rss'ów w dnewsach. do tej pory musiałem mieć
oddzielną tabelkę i w niej trzymać wpisy. do tego dochodziły kwestie czyszczenia wpisów gdyby program ściągający dane padł i nie
skasował swojego locka.

z drugiej strony – mogłem uzyć locków wewnątrz transakcji, ale to by oznaczało trzymanie długo trwających transakcji – a one z
definicji są złe (psują systemy replikacyjne).

advisory locki robią to co trzeba.

sesja (połącznie) które potrzebuje zakłada locka (locka zakłada sie na “liczbę" z zakresu int8, albo na parę liczb int4). lock
zostaje zdjęty gdy wywołam funkcję zdejmującą lub gdy padnie połączenie!

advisory locki są trzymane w pamięci dzięki czemu są baaaaaardzo szybkie – merlin przeprowadził prosty test zakładając 1000
advisory locków w około 6 milisekund!

dodatkowo – dzięki temu, że są trzymane w pamięci – odpadaję wszelkie bolączki mvcc – puchnące tabele, wolny odczyt,
vacuumowanie itd. advisory locki są błyskawiczne i całkowicie bezpieczne.

przykładowe użycie:

# select pg_advisory_lock(123);<br/>
 pg_advisory_lock<br/>
------------------<br/>
''<br/>
(1 row)<br/>
# select pg_advisory_unlock(123);<br/>
 pg_advisory_unlock<br/>
--------------------<br/>
 t<br/>
(1 row)

oczywiście advisory locki zapewniają wszystkie standardowe metody dostępu:

  • pobranie locka blokujące
  • pobranie nieblokujące
  • locki exclusive
  • locki shared

polecam przyjrzenie
się tej funkcjonalności – ma ona sporo niecałkiem oczywistych zastosowań.

ciąd dalszy wywiadu z bjornem stroustrupem

na mit technology review pojawiła się druga część wywiadu z twórcą c++.

tym razem mówi o przyszłości, trendach, przykładach świetnego kodu, o tym czy i co zastąpi programowanie obiektowe oraz o tym czy .net jest spadkobiercą c++ 🙂

warto przeczytać.

zdrowa coca-cola

w 2007 roku coca-cola ma wypuścić nowy napój – diet coke plus.

napój ten będzie bazował na diet coke (coca-cola light), ale będzie dodatkowo wzbogacany o witaminy i minerały.

czy to oznacza, że koncern chce walczyć z wizerunkiem niezdrowej, szkodliwej coli? tylko co ze smakiem?

pepsi ma wypuścić odpowiedź – napój o nazwie tava rok później.

jedzenie tłuszczu nielegalne?

władze nowego jorku zdelegalizowały używanie tzw. “trans fats" (tłuszczy jakichś tam, ogólnie – zwierzęce, niezdrowe).

z jednej strony ok – tłuszcze te (może ktoś mi podpowie jak to się tłumaczy na polski) są niezdrowe, prowadzą do kupy chorób. ale, kurza wasza melodia, to moje prawo żreć co chcę.

wygląda na to, że władza tamże uznała, że mieszkańcy są tak głupi, że nie potrafią podjąć świadomej decyzji o tym co zjedzą (nota bene pewnie mają rację). problemem jest to, że takie ubezwłasnowolnienie ma kupę wad:

  • powoduje, że od groma ludzi nagle stanie się przestępcami – wystarczy przygotowanie foie gras.
  • zwalnia ludzi od myślenia
  • wchodzi z butami z prywatne życie prywatnych ludzi
  • jest prawem martwym – nikt normalny nie będzie się tym przejmował – tak jak np. limitami prędkości. tzn. do czasu aż pojawią się bojówki i będzie wydany pierwszy wyrok – śmierć przez powieszenie za podanie klientowi kotleta smażonego na smalcu.

ci co mnie znają, wiedzą, że ogólnie stany mi się podobają. wiem, że mają swoje problemy, ale po prostu podoba mi się ten kraj (niestety nie byłem). i wiem, że jest przynajmniej kilka osób które potraktują tę informację jako wyraz starczej demencji. zdarza się. ale nawet ja – lubiący amerykę – nie potrafię zrozumieć czym się kierowały elity polityczne uchwalając taką bzdurę.

nowości w postgresie 8.2 – … jednostki w postgresql.conf

dziś malutki wpis 🙂

w 8.2 w pliku konfiguracyjnym przy parametrach przy których jest pojęcie jednostki pojawiły się kody tych jednostek. np. shared_buffers, kiedyś podawane jako liczba bloków 8 kilobajtowych, teraz jest wyrażane po prostu jako 20000kB (na przykład).

znakomicie ułatwia to czytanie plików konfiguracyjnych – już nie trzeba się zastanawiać, czy dana wartość jest w bajtach, kilobajtach, blokach czy czymkolwiek innym.

lista parametrów objętych tą zmianą:

  • authentication_timeout
  • shared_buffers
  • temp_buffers
  • work_mem
  • maintenance_work_mem
  • max_stack_depth
  • bgwriter_delay
  • checkpoint_timeout
  • checkpoint_warning
  • effective_cache_size
  • log_rotation_age
  • log_rotation_size
  • autovacuum_naptime
  • deadlock_timeout

alternatywna ścieżka kariery

ostatnio po sieci przetoczyła się lawina komentarzy do tego co opisali pracownicy firmy mcafee.

cóż tak szokującego opisali? otóż, zgodnie z prezentowaną przez nich tezą, mafie wszelkiego rodzaju zatrudniają młody hackerów w celach zarabiania na cyberprzestępczości.

podobno stosowane są metody rodem z kgb:

  • przekupywanie
  • szantaż
  • podstawianie “wabia"

i inne.

w/g autorów organizacje przestępcze werbują nawet 14 latków. zlecają im początkowo proste rzeczy – kontrola nad botnetem, rozesłanie spamu. potem zadania robią się coraz trudniejsze. i zyskowniejsze.

część kandydatów jest wybierana spośród technicznie zaawansowanych uczniós kierunków nie-informatycznych – w celu wyszkolenia i osadzenia ich w jakichś korporacjach jako “sleepers" (śpiących? jak to przetłumaczyć) – np. w celu późniejszego ataku typu szpiegostwo przemysłowe.

młodych pcha w objęcia mafii kilka rzeczy – po pierwsze – kasa. za proste zadania dostaje się relatywnie spore pieniądze, ryzyko jest niewielkie więc łatwo się wciągnąć i potem robić trudniejsze i bardziej ryzykowne rzeczy. po drugie – w sukurs mafiozom przychodzi wrodzony w nastolatkach bunt. przeciwko rodzicom, przepisom, szkole, wszystkim.

wstąpienie do gangu i ddosowanie serwisów nowoczesnym odpowiednikiem zapijania się starszych pokoleń? no cóż – przynajmniej są z tego pieniądze 🙂

jak się obronić przez 100000 ataków miesięcznie?

w zeszłym roku microsoft odnotował średnio 100 tysięcy ataków na swoją sieć i serwisy miesięcznie. to oznacza, że co 30 sekund ktoś próbuje się włamać lub zhackować ich sieć.

to całkiem sporo.

jednocześnie – firma z redmond mocno promuje wśród pracowników korzystanie z ras'a – w dużym skrócie – to taki vpn.

mając taką ilość ataków, taką ilość ludzi którzy nie lubią firmy – jak się zabezpieczyć? na ten temat napisał ostatnio martin heller w internetowym wydaniu computer worlda.

warto ten artykuł przeczytać choćby po to by podchwycić pewne pomysły/idee.

świat się kończy – apple sprzedaje tanie komputery

tanie, to może za dużo powiedziane. ale “tańsze"  – już nie.

ed burnette z zdnet'u porównał ceny laptopów: apple i dell. najpierw takie mocno “wypasione" a potem wersje tańsze, prostsze.

starał się dobrać maksymalnie zbliżone konfiguracje – oczywiście idealnie takich samych się nie da.

wynik?

w segmencie high-end apple za $2699 sprzedaje to co dell za $3222. różnica w cenie: $523. za ten pieniądze dell dorzuca lepszą rozdzielczość, wifi obsługujące 802.11a i gwarancję w domu.

802.11a mnie nie obchodzi. gwarancja w domu. no cóż. niby miłe, ale akurat mam pewnie doświadczenia z serwisem della, więc powiem tylko: to nie jest tak piękne jak na to wygląda. wyższa rozdzielczość natomiast to zdecydowany plus.

natomiast apple mimo niższej ceny też dał radę wstawić coś czego konkurencja nie dała: kamerę do wideokonferencji, podświetloną klawiaturę, dłuższy support (90 zamiast 30 dni) oraz fakt iż ich laptop jest mniejszy i lżejszy.

kamera – fajna. przyda się może jak będę miał więcej znajomych z kamerami. podświetlana klawiatura – mogę żyć bez tego – na klawisze i tak nie patrzę. support – obym nie potrzebował. ale fakt, że jest lżejszy mocno do mnie przemawia.

potem było porównanie lapów tańszych.

tym razem dell zaproponował rozwiązanie o niższej cenie: $1037, a apple o ciut ($187) wyższej: $1224.

i znowu są pewne rzeczy dodawane. w dellu dorzucili więcej portów usb (4 zamiast dwóch). sorry, ale jakoś mnie to nie wzrusza. korzystam z jednego – maksymalnie dwóch.

apple natomiast za te 187 dolarów dorzucił: kamerę, dłuższy support, oraz znowu – lap jest mniejszy i lżejszy.

i muszę przyznać, że oferta apple'a wygląda zdecydowanie lepiej. nie lubię tej firmy. uważam ich taktyki, zagrania i sposób postępowania z ludźmi za fatalny. maci ogólnie uważam za pomyłkę i dno. ale nie zmienia to faktu, że dają więcej w tej samej cenie, lub tyle samo za mniejszą cenę. czyli są lepszym wyborem. nawet jeśli docelowo będziemy na tym używać windowsa czy linuksa.