Seria postów poświęconych dostępowi do danych w OPC przy pomocy kodu w C# na platformie .NET. Przedstawione przykłady zawierają gotowe do wykorzystania aplikacje i kod źródłowy. Artykuł został podzielony na części.
Programowanie rozproszone 5486 dni, 6 godzin, 12 minut temu 284 źrodło rozwiń
NServiceBus - przykład 1: request/response Dlaczego w ogóle omawiam ten przykład? Przecież wszystkie moje dotychczasowe notki dotyczące NServiceBus przekonywały Was, że ten schemat komunikacji jest zły. Otóż czasem jest on nieunikniony. Najlepszym przykładem zastosowania request/reposnse są wszelkiego rodzaju funkcje autoryzujące. Logiki związanej z autoryzacją (niezależnie od tego, co autoryzujemy — czy to użytkownika, czy transakcję, czy cokolwiek innego) nie chcielibyśmy rozpraszać w wielu elementach ...
Programowanie rozproszone 5493 dni, 3 godziny, 24 minuty temu 103 źrodło rozwiń
Jakiś czas temu zacząłem cykl poświęcony implementacji klienta OPC (Cz. 1. Przygotowania, Cz. 2. Implementacja), w tym post'cie chciałbym wrócić do tematu i przedstawić przykład gotowego programu, który realizuje opisywane możliwiści: Klient OPC z linii poleceń (OPC command-line client) Aplikacja ta ma za zadanie odczytywać dane serwera OPC i udostępniać je jako standardowa aplikacja pracująca w "linii poleceń" systemu Windows. zięki temu będziemy mogli za pomocą argumentów podawać co chcemy otrzymać, a ...
Programowanie rozproszone 5494 dni, 7 godzin, 52 minuty temu 79 źrodło rozwiń
OPC Foundation oficjalnie ogłasza, że włącza Xi do swojego portfolio jako OPC Xi. Xi według pomysłodawców ma być przeniesieniem usług klasycznego OPC na usługi oparte platformę .NET firmy Microsoftu, warstwą tranpostową ma być WCF.
Programowanie rozproszone 5515 dni, 17 godzin, 38 minut temu 20 źrodło rozwiń
NServiceBus W wielu moich dotychczasowych postach mieliście okazję poczytać o bibliotece NServiceBus. Jest nawet osobna kategoria o tej nazwie w chmurze tagów. Odnoszę jednak wrażenie, że nie poświęciłem wystarczająco dużo czasu, aby Wam przedstawić NSB. Dopiero teraz zdałem sobie sprawę, że nie jest to biblioteka powszechnego użytku, jak np. NUnit czy NHibernate.
Programowanie rozproszone 5521 dni, 4 godziny, 53 minuty temu 115 źrodło rozwiń
Windows Azure komercyjnie będzie dostępny od 1 stycznia. Pierwszy miesiąc rozrachunkowy zatem to luty. Infrastruktura będzie utrzymywana przez sześć Data Center umieszczonych w następujących lokalizacjach: Chicago, Saint Luis, Dublin, Amsterdam, Hong-Kong, Singapur.
Programowanie rozproszone 5525 dni, 9 godzin, 7 minut temu 26 źrodło rozwiń
Ostatnie dni sierpnia schodzą mi bardzo pracowicie nad projektem, jaki tworzę w C#. Jest to projekt aplikacji opartej na koncepcji distributed systems, czyli za polską Wikipedią system "obliczeń rozproszonych" (choć bardziej sensownie byłoby to chyba nazwą system rozproszony). Aplikację, jak i dok...
Programowanie rozproszone 5550 dni, 6 godzin, 12 minut temu 89 źrodło rozwiń
Po zainstalowaniu Beta 2 NET 4.0 przestało mi działać w Development Fabric (część SDK do Azure) hostowanie usług WCF. Przy próbie wejścia i podejrzenia metadanych dla usługi hostowanej za pośrednictwem plików .svc, pojawiał się błąd - albo 405 (niedozwolona metoda) albo 404.17.
Programowanie rozproszone 5551 dni, 15 godzin, 35 minut temu 22 źrodło rozwiń
Witam, Nazywam się Piotr Sowa i fascynuje mnie programowanie rozproszone. Przedstawiam program HopfieldSimpulator :). Symulator jest niedokończony w ramach trwającego konkursu. Postanowiłem podejść do sprawy tak, że zamieszczam projekt bez interfejsu graficznego. Nagrodą dla osoby, która ulepszy projekt będzie obserwowanie pracy sieci Hopfielda w ujęciu pamięci asocjacyjnej pracującej w czasie rzeczywistym :). Wszystkiego dobrego Piotr Sowa, MCAD
Programowanie rozproszone 5558 dni, 17 godzin, 34 minuty temu 119 źrodło rozwiń
Autor: Tytuł artykułu zdradza nieco temat jaki chciałbym podjąć. Może samo versus jest nieco przewrotne, gdyż bardziej odpowiednie byłoby “Spring.NET a WCF” czy też po prostu “Spring.NET i WCF”. Tak naprawdę to tytuł powinien brzmieć “Spring.NET a WCF versus programista” ;). Obserwując programistów zaczynających przygodę ze Spring.NET i próbujących zintegrować z tym framew...
Programowanie rozproszone 5560 dni, 17 godzin, 52 minuty temu 162 źrodło rozwiń
Task-based API w .NET 4.0 (część I) października 1, 2009 22:34 by Marek Kalinowski Pierwszą okazję do zetknięcia się ze zmianami w API dotyczącym wielowątkowości miałem przy okazji udostępnionej prezentacji Daniela Motha z konferencji PDC2008 (http://channel9.msdn.com/pdc2008/TL26/). Podstawowym argumentem mającym mówić za wprowadzeniem (i używaniem) nowego API jest konieczność dostosowania się deweloperów do zmian w architekturze procesorów – czasy "darmowego" przyrostu wydajności bezpowrotnie minęły, o...
Programowanie rozproszone 5565 dni, 18 godzin, 7 minut temu 77 źrodło rozwiń
Agregacja (a.) i kompozycja (k.) są jednymi z najczęściej wykorzystywanych relacji w UML-owych diagramach klas. Są to specjalizacje asocjacji. Obie oznaczają, iż obiekty jednej z klas ("całość") zawierają referencję do obiektów drugiej klasy ("część"). Kompozycja jest właściwie jedynie silniejszą formą agregacji, w której obiekt zawierający ma pełną kontrolę nad obiektami zawieranymi. W szczególności, czas życia obiekty zawieranych jest limitowany czasem życia obiektu zawierającego.
Programowanie rozproszone 5632 dni, 12 godzin, 56 minut temu 37 źrodło rozwiń
Pod tym enigmatycznym nieco tytułem kryje się notka na temat problemu wymuszania różnego rodzaju zachowania po drugiej stronie łącza między dwoma systemami. O co chodzi? Wyobraźmy sobie dwie aplikację. Pierwsza z nich, nazwana przeze mnie umownie Klientem, chce do drugiej aplikacji (nazywanej dalej Serwerem) przekazać zachowanie. Nie dane, ale zachowanie.
Programowanie rozproszone 5643 dni, 3 godziny, 34 minuty temu 79 źrodło rozwiń
Na Microsoft Worldwide Partner Conference 2009, Bob Muglia, szef Server and Tools Business w Microsoft, ogłosił, że firma chce wprowadzić Windows Azure do fazy produkcyjnej jeszcze w tym roku! Dodatkowo, na oficjalnej stronie Windows Azure, zostały ogłoszone cenniki korzystania z usługi. Ceny, w porównaniu z konkurencją, są średnie. Spodziewałem się czegoś bardziej rewolucyjnego ze strony Microsoft’u. Oprócz tradycyjnych marketingowych sloganów, pojawiła się również informacja o 5%-owej zniżce dla partne...
Programowanie rozproszone 5645 dni, 18 godzin, 17 minut temu 27 źrodło rozwiń
W jaki sposób pokonać ograniczenia standardowego protokołu inwentarza usług, nie łamiąc przy tym zgodności ze standardami? Wzorzec Canonical Protocol zaleca wykorzystania jednego, standardowego, protokołu do komunikacji między usługami w ramach jednego inwentarza. Domyślnie oczywiście, protokołem tym są jakiegoś rodzaju usługi webowe (Basic WS, WS-*, REST), jednak nie jest to twarde wymaganie. Niezależnie od wyboru standardowego protokołu, mogą zdarzyć się sytuacje, kiedy jest on z jakichś przyczyn ni...
Programowanie rozproszone 5646 dni, 9 godzin, 56 minut temu 28 źrodło rozwiń
Niejednokrotnie podczas pisania aplikacji napotyka się na sytuację gdy jedna metoda produkuje pewne dane, inna natomiast w pewien sposób je konsumuje. Czasem dobrym pomysłem jest, w przypadku gdy produkowane dane są w pewien sposób podzielne na części, wykonywać produkcję i konsumpcję w równoległych wątkach. Tutaj pojawia się istotny problem z zagadnienia wielowątkowości - synchronizacja. Oba (wszystkie) wątki współdzielące dany zasób muszą z niego korzystać w pewien ustalony sposób, tak aby w danej chwi...
Programowanie rozproszone 5647 dni, 1 godzinę, 40 minut temu 92 źrodło rozwiń
Konferencja WPC09 trwa w tej chwili w najlepsze, czego namacalnym dowodem jest ogłoszenie m.in. sposobu licencjonowania i cennika Windows Azure. Microsoftowe podejście do usług w chmurach ogłoszone ostatniej jesieni nabiera w związku z tym jak najbardziej konkretnego wymiaru. Jak można się było spodziewać, kwestia płatności w przypadku tak złożonej grupy produktów jest dość skomplikowana i uwzględnia takie czynniki, jak czas przetwarzania, transfer wejściowy i wyjściowy, przestrzeń dyskową, transakcje (w...
Programowanie rozproszone 5647 dni, 6 godzin, 50 minut temu 26 źrodło rozwiń
Przygotowanie serwisu dla systemu operacyjnego Windows jest przy użyciu Visual Studio (VS) bardzo proste. Wystarczy tylko utworzyć nowy projekt na podstawie szablonu "Windows Service" lub do istniejącego projektu dodać nowy element typu "Windows Service". Następnie należy zaimplementować metody...
Programowanie rozproszone 5647 dni, 11 godzin temu 180 źrodło rozwiń
W jaki sposób infrastruktura przechowująca stan usług może być skalowana i zabezpieczona przed awarią? Odpowiedzią na to pytania jest wzorzec Service Grid. Jego nazwa może być nieco myląca. Nie ma on bowiem nic wspólnego z gridami oraz raczej niewiele z usługami w klasycznym pojęciu SOA. Service Grid jest nazwą dla podejścia, w którym wiele instancji infrastruktury przechowującej stan usług jest równolegle aktywnych (zwykle na wilu fizycznych maszynach). Instancje te współdzielą między sobą informacje d...
Programowanie rozproszone 5655 dni, 6 godzin, 46 minut temu 36 źrodło rozwiń
Jest to wzorzec z grupy porządkujących logiczny warstwy inwentarza (?) [inventory] usług. Pozostałe dwa z tej grupy to Entity Abstraction i Process Abstraction. Wszystkie trzy wzorce pomagają zidentyfikować różne grupy odpowiedzialności w "kandydatach na usługi". Skutkuje to wydzieleniem współnych zakresów odpowiedzialności do nowych usług lub łączeniem usług odpowiadających za ten sam aspekt rozwiązania. Utility Abstraction zajmuje się konkretnie funkcjonalnością wykorzystywaną we wszystkich fragm...
Programowanie rozproszone 5655 dni, 13 godzin, 43 minuty temu 32 źrodło rozwiń