SignalRPróbowałeś kiedyś napisać chat. Co ile sekund ma on wyciągać dane od serwera? Nie to z góry kiepski pomysł.

Lepszą techniką jest “long polling”. Otwieramy połączenie i utrzymujemy je otwarte zmuszając klienta (przeglądarkę) do czekania udając ,że dane połączenie rzeczywiście trwa długo.

Jeżeli połączenie jest zerwane wtedy połączenie jest otwierane ponownie po obu stronach(klient serwer). W przyszłość WebSockety  rozwiążą ten problem lepiej.

WCF AwaitPisząc ostatnio wpis o WCF zauważałem ,że Visual Studio 2012 domyślnie generuje klasy proxy dla usługi w stylu “Task”. Ten styl wymaga użycia słów kluczowych async i await. 

Pomyślałem dlaczego nie zrobić o tym wpisu i przy okazji same siebie przyzwyczaić do nowej składni języka C# 5.0.

StronicowanieW poprzednim wpisie udowodniłem ,że nawet na moim obecnym super sprzęcie i systemie 64 bitowym nie jestem wstanie przesłać 2.000.000 rekordów w WCF za jednym zamachem. W tym wpisie pokaże jak za pomocą “stronicowania” (paginacji) można rzeczywiście przesłać ,aż tyle informacji.

Oto drugi wpis z cyklu “WCF Big Large Data”.

Try Sending Wczoraj kolega zrzucił mi wyzwanie. Spytał mnie czy kiedyś przez WCF wysłałem 600.000 rekordów. Oczywiście tego nie robiłem ponieważ dlaczego usługa typu REST dla telefonu Android powinna przekazywać 600.000 rekordów.

Wyzwanie jest wyzwaniem. Udowodnię kto z nas jest lepszym programistą raz na zawsze.

WCF CirWczoraj mój najlepszy przyjaciel przedstawił mi problem związany referencją cykliczną i WCF.

Mój kolega wie ,że pisałem wcześniej aplikacje w WCF i spodziewał się ,że znam już odpowiedź na to pytanie. Oczywiście tak nie było ,ale ponieważ mam większe doświadczenie w tej technologii znalezienie odpowiedzi nie trwało długo.

MSMQ

Niezawodność to jedna z najbardziej wymagających cech, które musi posiadać dzisiejsze oprogramowanie. Ta cecha jest nawet punktem krytycznym dla rozproszonych biznesowych aplikacji. Jeśli jeden człon rozproszonego systemu przestanie działać  cały przepływ akcji  się zawala.

WCF

W dzisiejszych  czasach nie ma aplikacji, która działaby w kompletnej izolacji. Różne organizacje posiadają już programy, które wykonują  różne operacje biznesowe X i chcą aby  stare programy doskonale łączyły się z nowymi aplikacjami niezależnie od platformy, czy języka programowania.
 
Jednym słowem w dzisiejszych czasach programy wykonujące różne operacje powinny komunikować się ze sobą bez względu na to, w czym są napisane.
 
W erze internetu korporacje  często wybierają rozwiązania   pochodzące od osób trzecich. Na zasadzie po co mam pisać program, który już ktoś zrobił. Musimy tylko wykupić taką usługę i w ten sposób zaoszczędzimy “X” czasu.
 
Wyzywanie polega na tym, jak połączyć te elementy w taki sposób aby komunikowały się ze sobą oraz współpracowały.