Archiwum kategorii: 'Serwer Side'

Flex + Java w jednym projekcie w Flex Builderze – część II

piątek, Lipiec 31st, 2009

Czas na stworzenie prostej aplikacji wykorzystującej Jave (BlazeDS) i Flex w jednym projekcie Flex Buildera. Będzie to klasyczne “Hello World” :)

Wymagane oprogramowanie:

  • Flex Builder 3.0.2 – dostępny do ściągnięcia w wersji trial ze stron Adobe lub w specjalnej wersji dla studentów lub bezrobotnych programistów ze strony Free RIA Tools,
  • BlazeDS 3.2.0.3978 – dostępny na stronach Adobe Open Source (jest to wersja z samymi binariami – dostępna jest także wersja z zintegrowanym Tomcatem) – rozpakowujemy w dowolne miejsce, np.: C:\Work\BlazeDS
  • Tomcat 6.0.20 – dostępny na stronach Apache Software Foundation – rozpakowujemy w dowolne miejsce, np.: C:\apache-tomcat-6.0.20
  • BlazeMonster – bardzo przydatne narzędzie do testowania świeżo stworzonych metod BlazeDS – do ściągnięcia z bloga Sujit Reddy G.

Do dzieła!

więcej…

Flex + Java w jednym projekcie w Flex Builderze – część I

sobota, Kwiecień 11th, 2009

Chciałbym przedstawić w jaki sposób można przygotować środowisko deweloperskie Flex Builder do kodowania Flex + Java. Chodzi oto, żeby móc tworzyć jednocześnie część aplikacji widoczną dla użytkownika (frontend) jak i backend, czyli kod Javy odpowiedzialny np.: za komunikację z bazami danych i obróbkę tych danych.

Uwaga! Poniższy sposób tworzenia aplikacji sprawdza się tylko w przypadku kodowania przez jedną osobę.

Kod Javy będzie docelowo wykorzystywał BlazeDS/LiveCycle Data Services – będzie to jednak zagadnieniem następnego tutoriala.

Wymagane oprogramowanie: Flex Builder 3.0.2 – dostępny do ściągnięcia w wersji trial ze stron Adobe lub w specjalnej wersji dla studentów lub bezrobotnych programistów ze strony Free RIA Tools.

więcej…

AMF remoting – co wybrać?

wtorek, Marzec 31st, 2009

Co wybrać? AMFPHP, ZendAmf, WebOrb for PHP czy może SabreAMF? A może wogóle język inny niż PHP? :)

Pytanie na które ciężko ostanim czasy znaleźć dobrą odpowiedź. Żeby choć trochę ułatwić sprawę polecam sprawne porównanie istniejących rozwiązań dla PHP opublikowane przez  Mihai Corlan’a.

Dodatkowo dodam, że w dniu dzisiejszym pojawił się update (do wersji 1.7.8) biblioteki ZendAMF – więcej info na blogu Wade’a Arnolda, a kod można ściągnąć ze stron Zend Frameworka.

Red5 ze wsparciem dla H.264

poniedziałek, Październik 6th, 2008

Dzięki staraniom panów Paul Gregoire’a i Stevena Gonga open-sourcowy serwer RTMP Red5 wzbogacił się właśnie o obsługę kodowania H.264 (gdyby ktoś nie wiedział o co chodzi polecam takie oto HD demo). Narazie wersja dostępna jest tylko z poziomu svn, ale zapewne wrzucona zostanie do release’a 0.9.

Niestety mój projekt, wykorzystujący jako część serwerową Red5, ostatnio mocno podupadł więc się tym za szybko zapewne nie pobawię :(

Źródła: Dominick Accattato’s Site oraz Paul Gregoire’s Blog

GAE SWF Project

środa, Maj 7th, 2008
GAE SWF Project

GAE SWF Project jest to opensource’owy projekt prowadzony przez Arala Balkana mający na celu łatwienie startu Flash/Flex developerom na platformie Google App Engine.

Pośród celów projektu są:

  • krzewienie dobrych praktyk kodowania,
  • komunikacja z serwerem oparta o PyAMF
  • wykorzystanie Google API: Mail API, Users API i Datastore API,
  • promocja prawidłowego umieszczania plików SWF za pomocą SWFObject,
  • głębokie linkowanie (deep linking) za pomocą SWFAddress.

Online demo: Flash 9 / Flex 3

Google App Engine to testowa i darmowa (na dzień dzisiejszy) oferta hostingowa udostępniona przez Google dająca możliwość umieszczania aplikacji pisanych w Pythonie i korzystających z tej samej infrastruktury co wyszukiwarka Google. Parametry to: max 3 aplikacje po maksimum 500MB trzymanych w bazie BigTable, 5 milionów odsłon i 10TB transferu miesięcznie. Umożliwiony jest dostęp do usług Google takich jak: GMail, Google Accounts i innych.

PyAMF to kompatybilna z Flash Playerem implementacja protokołu AMF (Action Message Format) stworzona w Pythonie. Jest to binarny protokół służący wymiany danych pomiędzy aplikacją Flash/Flex i serwerem za pomocą zdalnego wywoływania procedur (RPC).
Wywołania mogą być przesyłane poprzez protokół HTTP/HTTPS lub też poprzez RTMP/RTMPS. Dzięki serializacji obiektów do postaci binarnej zwiększa się wydajność wywołań co pozwala wczytywać dane 10 razy szybciej niż gdyby działo się to za pomocą tekstowych formatów takich jak XML czy SOAP. Porównanie wydajności można przeprowadzić na stronie Jamesa Warda.
Przykłady zastosowania PyAMF dostępne są na stronie projektu, a ja polecam jedno z ciekawszych rozwiązań, czyli PyAMF Python Shell Demo.