Plugin: timed_fragment_cache

Cache i kwestie związane z jego utrzymaniem i ekspiracją nie są zapewne obce żadnemu programiście Rails mającemu na swoim koncie jakąkolwiek aplikację "produkcyjną". Jak to wyczytałem gdzieś w sieci: "W programowaniu są tylko dwa poważne problemy: nazywanie zmiennych i ekspiracja cache" (może trochę przekręcam cytat, ale sens był na pewno właśnie taki). Na szczęście istnieje plugin timed_fragment_cache, który znacznie ułatwia to trudne zagadnienie.|Plugina instalujemy wydając polecenie:

script/plugin install http://svn.livsey.org/plugins/timed_fragment_cache

Co nam on daje? Przede wszystkim pozwala na określenie czasu, po jakim dany fragment automatycznie się wyekspiruje. Dzięki temu

Współbieżność - testowanie

W poprzednim poscie opisałem typowe problemy współbieżnościowe i zaproponowałem ich rozwiązania, natomiast teraz chciałbym uzupełnić ten opis o sposoby testowania pod kątem współbieżności w sposób jak najbardziej zgodny z filozofią Rails.|> Na początku zastrzeżenie - opisuję coś, co napisałem sam na własne (tzn. tworzonego projektu) potrzeby. Na pewno wiele elementów dałoby się ulepszyć i może uda mi się z tego zrobić kiedyś plugina, ale na razie mój "system testowania współbieżnego" pozostaje w pierwszej, oryginalnej wersji zgodnie z zasadą, że prowizorki są najbardziej trwałe :)

Warto stworzyć osobny katalog na testy współbieżności, ja swój nazwałem test/concurrent.W tym katalogu tworzymy bazową klasę dla testów, np. ConcurrentTest:

Czy warto migrować na Rails 2.0?

W zeszłym miesiącu pojawił się długo oczekiwany release Rails 2.0. Nie będę tutaj wymieniał wszystkich nowych "ficzerów", bo je można znaleźć chociażby tutaj, natomiast postaram się odpowiedzieć na pytanie "Czy warto migrować na nową wersję?".

Nowe aplikacje



W przypadku nowych aplikacji odpowiedź jest prosta - na pewno warto (choć w tym przypadku ciężko jest mówić o "migracji"):

  • Rails 2.0 są po prostu lepsze (wydajnościowo i architektonicznie, nie licząc nowych funkcjonalności)