<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>dembol.org</title>
	<atom:link href="http://dembol.org/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://dembol.org/blog</link>
	<description>Java and distributed systems architecture</description>
	<lastBuildDate>Mon, 07 May 2012 17:36:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Forms and controls</title>
		<link>http://dembol.org/blog/2012/04/10/forms-and-controls/</link>
		<comments>http://dembol.org/blog/2012/04/10/forms-and-controls/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 14:50:31 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[architektura systemów]]></category>
		<category><![CDATA[katalog wzorców architektonicznych]]></category>
		<category><![CDATA[wzorce architektoniczne]]></category>

		<guid isPermaLink="false">http://sysdesign.pl/?p=1058</guid>
		<description><![CDATA[Dzisiaj dodałem opis wzorca forms and controls, jednego ze wzorców perspektywy modułów. Bazowałem na dokumencie M. Fowlera opisującego przekrojowo różne architektury GUI. Do modelowania diagramu klas i sekwencji użyłem programu Modelio &#8211; bardzo intuicyjne narzędzie do modelowania diagramów UML, polecam wszystkim]]></description>
			<content:encoded><![CDATA[<p>Dzisiaj dodałem opis wzorca <a href="/blog/projektowanie/katalog-wzorcow-architektonicznych/wzorce-perspektywy-modulow/forms-and-controls/" title="forms and controls">forms and controls</a>, jednego ze wzorców perspektywy modułów. Bazowałem na <a href="http://martinfowler.com/eaaDev/uiArchs.html" title="GUI architectures">dokumencie</a> M. Fowlera opisującego przekrojowo różne architektury GUI. </p>
<p>Do modelowania diagramu klas i sekwencji użyłem programu <a href="http://www.modeliosoft.com/" title="modelio">Modelio</a> &#8211; bardzo intuicyjne narzędzie do modelowania diagramów UML, polecam wszystkim <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/04/10/forms-and-controls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Silne i słabe referencje w Java</title>
		<link>http://dembol.org/blog/2012/04/07/silne-i-slabe-referencje-w-java/</link>
		<comments>http://dembol.org/blog/2012/04/07/silne-i-slabe-referencje-w-java/#comments</comments>
		<pubDate>Sat, 07 Apr 2012 20:00:17 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://sysdesign.pl/?p=981</guid>
		<description><![CDATA[Zostałem ostatnio zapytany przez pewną osobę co zrobić w przypadku gdy referencja do danego obiektu jest wg nas zbyt silna, tzn chcielibyśmy aby w pewnych przypadkach GC mógł usunąć obiekt, mimo iż wskazuje na niego pewna referencja. W &#8222;normalnym&#8221; zastosowaniu Javy tak jak to robi większość programistów łącznie ze mną, jest to po prostu niemożliwe [...]]]></description>
			<content:encoded><![CDATA[<p>Zostałem ostatnio zapytany przez pewną osobę co zrobić w przypadku gdy referencja do danego obiektu jest wg nas zbyt silna, tzn chcielibyśmy aby w pewnych przypadkach GC mógł usunąć obiekt, mimo iż wskazuje na niego pewna referencja. W &#8222;normalnym&#8221; zastosowaniu Javy tak jak to robi większość programistów łącznie ze mną, jest to po prostu niemożliwe &#8211; GC nie ma prawa usunąć obiektu, do którego istnieje jakakolwiek referencja. Z pomocą przychodzi jednak pakiet <em>java.lang.ref</em>, któremu postanowiłem się przyjrzeć nieco bliżej. W skład pakietu wchodzą następujące klasy:</p>
<ul>
<li>Reference</li>
<li>SoftReference</li>
<li>WeakReference</li>
<li>PhantomReference</li>
<li>ReferenceQueue</li>
</ul>
<h3>Strong References (referencje silne)</h3>
<p>Klasy <strong>SoftReference</strong>, <strong>WeakReference</strong> oraz <strong>PhantomReference</strong> reprezentują trzy dodatkowe typy referencji w Java. Standardowym typem referencji są referencje <strong>silne</strong>, które uzyskujemy po stworzeniu obiektu za pomocą operatora <em>new</em> (lub oczywiście poprzez skopiowanie referencji z jakiejś zmiennej) jak np.<br />
<code><br />
List<String> l = new LinkedList<String>();<br />
</code><br />
Wyrażenie to stworzy obiekt klasy LinkedList, do którego referencja zostanie zapisana w zmiennej &#8222;l&#8221;. Referencje tego typu to referencje silne. Jeżeli na dany obiekt nie wskazuje żadna referencja silna, GC jest zobligowany do usunięcia obiektu w trakcie jednej z przyszłych kolekcji.</p>
<h3>SoftReference (referencje miękkie)</h3>
<p>Klasa <em>java.lang.ref.SoftReference</em> reprezentuje referencję <strong>miękką</strong>. Referencje te różnią się od referencji silnych tym, że obiekty na które wskazują zostaną usunięte w sytuacji gdy GC stwierdzi niewystarczającą ilość pamięci dla innych obiektów aplikacji. Sprzątnięcie obiektów, na które wskazują referencje miękkie nastąpi jeszcze przed rzuceniem wyjątku <em>OutOfMemoryError</em>, co gwarantuje nam specyfikacja JVM. W praktyce oznacza to iż obiekty <em>soft-rechable</em> będą w pamięci tak długo jak długo będzie wolna pamięć dla innych obiektów. Poniżej przykład tworzenia miękkiej referencji do obiektu klasy <em>User</em>:<br />
<code><br />
        SoftReference sr = new SoftReference(new User("John", "Smith"));<br />
        User u = sr.get();<br />
</code></p>
<p>Dokładny moment usunięcia obiektu z pamięci niestety nie jest znany &#8211; można tylko przewidzieć kiedy to nastąpi. Mechanizm usuwania z pamięci miękkich referencji przedstawił swego czasu na swoim <a href="http://jeremymanson.blogspot.com/2009/07/how-hotspot-decides-to-clear_07.html">blogu</a> Jeremy Manson. Wynika z niego, że decyzja o usunięci obiektu z pamięci jest podejmowana na podstawie dwóch czynników:</p>
<ol>
<li>ilości wolnej pamięci na stercie</li>
<li>czasu stworzenia referencji</li>
</ol>
<p>Po szczegóły podejmowania decyzji przez GC dotyczącej usuwania obiektów typu <em>soft-reached</em> odsyłam do bloga Jeremiego <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Od siebie mogę tylko dodać, że momentem kiedy dość często będzie następowało usuwanie miękkich referencji jest tzw. <strong>warming-up</strong> aplikacji czyli sytuacja, w której następuje cykliczne zwiększanie rozmiaru sterty gdy parametr -Xms < -Xmx. Początkowy rozmiar sterty ustawiony jest na wartość -Xms a następnie cyklicznie zwiększany do rozmiaru -Xmx gdy aplikacja alokuje coraz więcej obiektów na stercie i trzyma do nich referencje. Co pewien czas następuje więc sytuacja niewystarczającego rozmiaru starcy co z kolei implikuje konieczność usunięcia referencji miękkich z pamięci. Sytuacji takiej można zaradzić ustawiając parametry -Xms i -Xmx na takie same wartości.</p>
<p>Jednym z zastosowań referencji miękkich są mechanizmy cache'owania danych. W implementacji takiego mechanizmu pożądane jest aby dane z cache zostały usunięte jeżeli zacznie brakować pamięci dla pozostałych obiektów. Referencje do obiektów mogą być oczywiście silne i sami możemy zarządzać sytuacjami wyjątkowymi, ale po co jeżeli pewne aspekty może załatwić za nas sam GC. Dla przykładu Ehcache, znana implementacja mechanizmu cache'owania w Java, używa właśnie referencji typu <em>soft</em>.</p>
<h3>WeakReference (referencje słabe)</h3>
<p>Referencje słabe są słabszą odmianą referencji miękkich. Oznacza to bardziej agresywną politykę GC w stosunku do nich &#8211; są one usuwane dużo częściej niż referencje miękkie, zazwyczaj podczas którejś kolekcji GC. Poniżej przykład tworzenia słabej referencji do obiektu klasy User:<br />
<code><br />
        WeakReference<User> wr = new WeakReference<User>(new User("John", "Smith"));<br />
        User u = wr.get();<br />
</code><br />
Używając w kodzie referencji słabych należy się zabezpieczyć przed sytuacją kiedy metoda <em>wr.get()</em> za którymś razem może zwrócić po prostu <em>null</em>.</p>
<h3>ReferenceQueue</h3>
<p>W przypadku gdy SoftReference bądź WeakReference zaczną zwracać <em>null</em> obiekt, na który wskazywały jest oznaczony jako obiekt do finalizacji i usunięcia z pamięci. W takiej sytuacji chcielibyśmy jednak mieć możliwość wykonania pewnych operacji czyszczące związanych z daną referencją, np. w przypadku usunięcia referencji do pewnego klucza z WeakHashMap chcielibyśmy usunąć także wartość związaną z tym kluczem. Z pomocą przychodzą tzw. kolejki referencji, do których zapisywane są referencje do obiektów oznaczonych jako obiekty do finalizacji. Kolejki referencji wskazujemy w konstruktorach konkretnych klas referencji:<br />
<code><br />
        ReferenceQueue<User> rq = new ReferenceQueue<User>();<br />
        SoftReference<User> sr = new SoftReference<User>(new User("John", "Smith"), rq);<br />
        User u = sr.get();<br />
</code></p>
<h3>PhantomReference</h3>
<p>Referencje fantomowe działają trochę inaczej niż opisane wyżej referencje słabe i miękkie &#8211; zawsze zwracają <em>null</em> i są wykorzystywane tylko i wyłącznie do śledzenia ich pojawienia się w kolejce referencji co oznacza śmierć obiektu, na który wskazywały. Różnica dotyczy także momentu umieszczania obiektów w kolejce referencji. W przypadku WeakReference i SoftReference obiekty są umieszczane jeszcze <strong>przed</strong> ich finalizacją i usunięciem z pamięci. Nie jesteśmy więc w stanie wskazać momentu, kiedy obiekt całkowicie ginie. W przypadku PhantomReference, umieszczenie go w kolejce oznacza usunięcie obiektu z pamięci czyli jego śmierć.</p>
<p>&nbsp;</p>
<h3>Podsumowanie</h3>
<p>Osobiście zachęcam do zapoznania się z typami referencji w Java, które pokrótce opisałem. Mam nadzieję, że wpis da sporą dawkę teorii, którą można będzie z powodzeniem wykorzystać w praktyce <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/04/07/silne-i-slabe-referencje-w-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Layers &#8211; architektura warstwowa</title>
		<link>http://dembol.org/blog/2012/04/01/layers-architektura-warstwowa/</link>
		<comments>http://dembol.org/blog/2012/04/01/layers-architektura-warstwowa/#comments</comments>
		<pubDate>Sun, 01 Apr 2012 12:33:50 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[architektura systemów]]></category>
		<category><![CDATA[katalog wzorców architektonicznych]]></category>
		<category><![CDATA[Layers]]></category>

		<guid isPermaLink="false">http://sysdesign.pl/?p=944</guid>
		<description><![CDATA[Całkiem niedawno pisałem o wzorcach perspektywy alokacji i komponentów, przyszedł jednak czas na zabranie się za opis wzorców perspektywy modułów. Pierwszym wzorcem, który opisałem jest bardzo często wykorzystywany podczas projektowania struktury modułów aplikacji. Chodzi mianowicie o wzorzec layers, czyli wzorzec określający architekturę warstwową systemu. Wzorzec ten definiuje odpowiednią strukturę projektowanych przez nas modułów i zapewnia [...]]]></description>
			<content:encoded><![CDATA[<p>Całkiem niedawno pisałem o wzorcach perspektywy alokacji i komponentów, przyszedł jednak czas na zabranie się za opis wzorców perspektywy modułów. Pierwszym wzorcem, który opisałem jest bardzo często wykorzystywany podczas projektowania struktury modułów aplikacji. Chodzi mianowicie o wzorzec <a href="http://sysdesign.pl/projektowanie/katalog-wzorcow-architektonicznych/wzorce-perspektywy-modulow/layers/" title="layers">layers</a>, czyli wzorzec określający architekturę warstwową systemu. Wzorzec ten definiuje odpowiednią strukturę projektowanych przez nas modułów i zapewnia takie cechy jak modyfikowalność, łatwość odnajdywania konkretnych fragmentów modułów oraz śledzenia przepływu sterowania. Opisałem także typowy przykład architektury warstwowej aplikacji enterprise, może komuś się przyda <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/04/01/layers-architektura-warstwowa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Partycjonowanie usług i danych</title>
		<link>http://dembol.org/blog/2012/03/24/partycjonowanie-uslug-i-danych/</link>
		<comments>http://dembol.org/blog/2012/03/24/partycjonowanie-uslug-i-danych/#comments</comments>
		<pubDate>Sat, 24 Mar 2012 15:45:16 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[architektura systemów]]></category>
		<category><![CDATA[katalog wzorców architektonicznych]]></category>
		<category><![CDATA[partycjonowanie]]></category>
		<category><![CDATA[partycjonowanie danych]]></category>
		<category><![CDATA[partycjonowanie usług]]></category>
		<category><![CDATA[wzorce perspektywy rozlokowania]]></category>

		<guid isPermaLink="false">http://sysdesign.pl/?p=882</guid>
		<description><![CDATA[Dzisiaj dodałem opisy dwóch technik, które zostały przeze mnie zaklasyfikowane jako wzorce perspektywy alokacji &#8211; partycjonowanie usług i danych. Są to wzorce umożliwiające osiągnięcie większych wydajności przetwarzania zadań i danych, osiągnięcie lepszej skalowalności i dostępności usług systemu. Partycjonowanie usług jest często zaliczane do technik skalowania systemu, jednak osobiście preferuję rozdzielenie obu wzorców. Tym samym kończę [...]]]></description>
			<content:encoded><![CDATA[<p>Dzisiaj dodałem opisy dwóch technik, które zostały przeze mnie zaklasyfikowane jako wzorce perspektywy alokacji &#8211; <a href="http://sysdesign.pl/projektowanie/katalog-wzorcow-architektonicznych/wzorce-perspektywy-alokacji/partycjonowanie-uslug/" title="partycjonowanie usług">partycjonowanie usług</a> i <a href="http://sysdesign.pl/projektowanie/katalog-wzorcow-architektonicznych/wzorce-perspektywy-alokacji/partycjonowanie-danych/" title="partycjonowanie danych">danych</a>. Są to wzorce umożliwiające osiągnięcie większych wydajności przetwarzania zadań i danych, osiągnięcie lepszej skalowalności  i dostępności usług systemu. Partycjonowanie usług jest często zaliczane do technik skalowania systemu, jednak osobiście preferuję rozdzielenie obu wzorców.</p>
<p>Tym samym kończę powoli pracę nad wzorcami warstwy alokacji, może w niedługim czasie uda mi się skończyć także pozostałe działy <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/03/24/partycjonowanie-uslug-i-danych/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>4developers już niebawem</title>
		<link>http://dembol.org/blog/2012/03/22/4developers-juz-niebawem/</link>
		<comments>http://dembol.org/blog/2012/03/22/4developers-juz-niebawem/#comments</comments>
		<pubDate>Thu, 22 Mar 2012 21:24:08 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[konferencje]]></category>
		<category><![CDATA[4developers]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[konferencja]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[skalowanie]]></category>
		<category><![CDATA[wydajność]]></category>

		<guid isPermaLink="false">http://sysdesign.pl/?p=846</guid>
		<description><![CDATA[Z przyjemnością zapraszam wszystkich na konferencję 4developers, która odbędzie się w Poznaniu w dniach 17-18 kwietnia. Konferencja podzielona będzie na 4 sesje tematyczne &#8211; Skalowalność i wydajność, Java, PHP oraz zarządzanie projektami IT. Szczególnie ciekawie zapowiada się sesja poświęcona skalowalności. Prelegenci zaprezentują swoje doświadczenia przy rozbudowie systemów w celu osiągnięcia wysokich wydajności przetwarzania w środowiskach [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://4developers.org.pl/wp-content/themes/4Developers/images/header_logo.jpg" alt="4developers" style="float: left; margin-right: 5px" />Z przyjemnością zapraszam wszystkich na konferencję <a href="http://4developers.org.pl/" title="4developers">4developers</a>, która odbędzie się w Poznaniu w dniach 17-18 kwietnia. Konferencja podzielona będzie na 4 sesje tematyczne &#8211; Skalowalność i wydajność, Java, PHP oraz zarządzanie projektami IT. Szczególnie ciekawie zapowiada się sesja poświęcona skalowalności. Prelegenci zaprezentują swoje doświadczenia przy rozbudowie systemów w celu osiągnięcia wysokich wydajności przetwarzania w środowiskach rozproszonych.</p>
<p>Część poświęcona Java także wygląda ciekawie. Osobiście przypadł mi do gustu temat &#8222;Dekonstrukcja architektury w czasach kryzysu&#8221;. Jarek Pałka przedstawi przyczyny kryzysu architektury dzisiejszych systemów. A kryzys mamy, o tym mówią wszyscy, nawet architekci <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Być może uda się przekonać co niektórych, że nie samym językiem i technologią żyje system &#8230; <strong>system żyje architekturą</strong> <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Mam nadzieję, że uda mi się dotrzeć na konferencję. Wiem, że wybiera się tam kilku moich kolegów po fachu, także na pewno będzie okazja do odbycia paru ciekawych rozmów <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/03/22/4developers-juz-niebawem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Component-based architecture</title>
		<link>http://dembol.org/blog/2012/02/27/component-based-architecture/</link>
		<comments>http://dembol.org/blog/2012/02/27/component-based-architecture/#comments</comments>
		<pubDate>Mon, 27 Feb 2012 20:13:21 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[architektura systemów]]></category>
		<category><![CDATA[Component-Based Architecture]]></category>
		<category><![CDATA[katalog wzorców architektonicznych]]></category>
		<category><![CDATA[wzorce architektoniczne]]></category>

		<guid isPermaLink="false">http://sysdesign.pl/?p=736</guid>
		<description><![CDATA[Dzisiaj dodałem opis wzorca component-based architecture. Jest to właściwie podejście, które zostało sklasyfikowane przeze mnie jako wzorzec mający zastosowanie podczas tworzenia struktury komponentów i złącz.]]></description>
			<content:encoded><![CDATA[<p>Dzisiaj dodałem opis wzorca <a href="http://sysdesign.pl/projektowanie/katalog-wzorcow-architektonicznych/wzorce-perspektywy-komponentow/modele-przetwarzania/component-based-architecture/" title="component-based architecture">component-based architecture</a>. Jest to właściwie podejście, które zostało sklasyfikowane przeze mnie jako wzorzec mający zastosowanie podczas tworzenia struktury komponentów i złącz.</p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/02/27/component-based-architecture/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dostępność &#8211; atrybut jakościowy</title>
		<link>http://dembol.org/blog/2012/02/19/dostepnosc-atrybut-jakosciowy/</link>
		<comments>http://dembol.org/blog/2012/02/19/dostepnosc-atrybut-jakosciowy/#comments</comments>
		<pubDate>Sun, 19 Feb 2012 20:41:44 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[architektura systemów]]></category>
		<category><![CDATA[atrybuty jakościowe]]></category>
		<category><![CDATA[dostępność]]></category>

		<guid isPermaLink="false">http://sysdesign.pl/?p=704</guid>
		<description><![CDATA[Dzisiaj dodałem opis dostępności &#8211; jednego z kluczowych atrybutów jakościowych dzisiejszych systemów. Definicję sporządziłem na podstawie własnego doświadczenia oraz książki Software Architecture in Practice. Wkrótce opiszę także taktyki zwiększania dostępności systemów &#8211; taktyki wykrywania uszkodzeń, zapobiegania uszkodzeniom oraz przywracania systemu do poprawnego działania. Zapraszam już wkrótce]]></description>
			<content:encoded><![CDATA[<p>Dzisiaj dodałem opis <a href="http://sysdesign.pl/projektowanie/atrybuty-jakosciowe/dostepnosc/" title="dostępność">dostępności</a> &#8211; jednego z kluczowych <a href="http://sysdesign.pl/projektowanie/atrybuty-jakosciowe/" title="atrybuty jakościowe systemu">atrybutów jakościowych</a> dzisiejszych systemów. Definicję sporządziłem na podstawie własnego doświadczenia oraz książki <a href="http://www.sei.cmu.edu/library/abstracts/books/0321154959.cfm" target="_blank" title="Software Architecture in Practice">Software Architecture in Practice</a>. Wkrótce opiszę także taktyki zwiększania dostępności systemów &#8211; taktyki wykrywania uszkodzeń, zapobiegania uszkodzeniom oraz przywracania systemu do poprawnego działania. Zapraszam już wkrótce <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/02/19/dostepnosc-atrybut-jakosciowy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skalowanie &#8211; wzorzec architektoniczny</title>
		<link>http://dembol.org/blog/2012/02/18/skalowanie-systemow/</link>
		<comments>http://dembol.org/blog/2012/02/18/skalowanie-systemow/#comments</comments>
		<pubDate>Sat, 18 Feb 2012 20:13:04 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[architektura systemów]]></category>
		<category><![CDATA[katalog wzorców architektonicznych]]></category>
		<category><![CDATA[skalowanie]]></category>
		<category><![CDATA[wzorce architektoniczne]]></category>

		<guid isPermaLink="false">http://sysdesign.pl/?p=686</guid>
		<description><![CDATA[Dodałem opis ciekawego i często źle rozumianego wzorca perspektywy alokacji &#8211; skalowania. Jest to kolejny wzorzec, który udało mi się opisać i umieścić w katalogu wzorców architektonicznych. Zapraszam do zapoznania się i wydawania konstruktywnych opinii]]></description>
			<content:encoded><![CDATA[<p>Dodałem opis ciekawego i często źle rozumianego wzorca perspektywy alokacji &#8211; <a href="http://sysdesign.pl/projektowanie/katalog-wzorcow-architektonicznych/wzorce-perspektywy-alokacji/skalowanie/" title="skalowanie">skalowania</a>. Jest to kolejny wzorzec, który udało mi się opisać i umieścić w <a href="http://sysdesign.pl/projektowanie/katalog-wzorcow-architektonicznych/" title="katalog wzorców architektonicznych">katalogu wzorców architektonicznych</a>. Zapraszam do zapoznania się i wydawania konstruktywnych opinii <img src='http://dembol.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/02/18/skalowanie-systemow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Szkolenie &#8222;Obiektowość + Java SE&#8221;</title>
		<link>http://dembol.org/blog/2012/01/19/szkolenie-obiektowosc-java-se/</link>
		<comments>http://dembol.org/blog/2012/01/19/szkolenie-obiektowosc-java-se/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 19:03:23 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[pozostałe]]></category>

		<guid isPermaLink="false">http://javalabs.pl/?p=307</guid>
		<description><![CDATA[Zapraszam do zapoznania się z ofertą szkolenia &#8222;Obiektowość + Java SE&#8221;. Jesteśmy na etapie zbierania chętnych na pierwszą turę szkolenia. Osoby zainteresowane proszone są o kontakt mailowy &#8211; dembol &#124;at&#124; sysdesign.pl]]></description>
			<content:encoded><![CDATA[<p>Zapraszam do zapoznania się z ofertą szkolenia <a href="http://sysdesign.pl/szkolenia/" title="szkolenia">&#8222;Obiektowość + Java SE&#8221;</a>. Jesteśmy na etapie zbierania chętnych na pierwszą turę szkolenia. Osoby zainteresowane proszone są o kontakt mailowy &#8211; dembol |at| sysdesign.pl</p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2012/01/19/szkolenie-obiektowosc-java-se/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Witam</title>
		<link>http://dembol.org/blog/2011/10/19/witam/</link>
		<comments>http://dembol.org/blog/2011/10/19/witam/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 06:12:25 +0000</pubDate>
		<dc:creator>dembol</dc:creator>
				<category><![CDATA[pozostałe]]></category>

		<guid isPermaLink="false">http://dembol.org/home/?p=10</guid>
		<description><![CDATA[Witam w serwisie sysdesign. Serwis powstał po to aby usystematyzować wiedzę dotyczącą projektowania systemów rozproszonych i równoległych dużej skali. Zamierzam systematycznie przedstawiać własne spojrzenie na problem projektowania systemów w oparciu o istniejące już metodyki oraz własne doświadczenie i pomysły.]]></description>
			<content:encoded><![CDATA[<p>Witam w serwisie <strong>sysdesign</strong>.</p>
<p>Serwis powstał po to aby usystematyzować wiedzę dotyczącą <strong>projektowania systemów rozproszonych i równoległych dużej skali</strong>. Zamierzam systematycznie przedstawiać własne spojrzenie na problem projektowania systemów w oparciu o istniejące już metodyki oraz własne doświadczenie i pomysły. </p>
]]></content:encoded>
			<wfw:commentRss>http://dembol.org/blog/2011/10/19/witam/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

