• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    TENCOKACISTROMY: pokud vim, tak best practice SOA/WCF je posilat auth udaje v headeru kazdy zpravy.. jestli to dobre chapu, tak ty v podstate uchovavas "session" state mezi requestama (tu vazbu loginToken-Account.Id), coz neni uplne cisty reseni. sluzby by mely byt state-less.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    Mam WCF sluzbu hostovanou v IIS. Po overeni uzivatele (hash(username+password) nebo facebookid) vygeneruju jedinecnou hodnotu pro jeho identifikaci (loginToken).

    K tomuhle loginTokenu si priradim ID uzivatele (hodnota z tabulky "Account" v databazi). Tenhle loginToken mi ten uzivatel posila, kdyz vola WCF operace.

    Kam bych si mel ten loginToken ukladat, kdyz chci aby vydrzel i recyklaci procesu?
    Jako nejlepsi reseni se mi jevi to ukladat do databaze + mit v ty WCF sluzbe singleton, kterej ma tyhle hodnoty nacachovany + ma SqlDependency na db tabulku s tema loginTokenama.

    Nemam tam nejakou chybu v tomhle konceptu? Existuje lepsi reseni? Je uz neco takovyho hotovyho?
    NECROMAN
    NECROMAN --- ---
    LZe zmenit nastaveni podle tohoto navodu dole, aniz by clovek musel prepisovat sytemovy soubor machine.config? Kdyz dam primo do appconfigu sve aplikace treba toto:

    <processModel maxWorkerThreads="96" minWorkerThreads="8" maxIoThreads="96" minIoThreads="8" />

    tak mi to hlasi, ze nelze menit to, co lze nastavit jen v machine.config
    http://blog.stevensanderson.com/2010/01/25/measuring-the-performance-of-asynchronous-controllers/
    NECROMAN
    NECROMAN --- ---
    ze by?
    Contention, poor performance, and deadlocks when you make Web service requests from ASP.NET applications
    http://support.microsoft.com/kb/821268
    NECROMAN
    NECROMAN --- ---
    JACHYMKO: v Akci na stazeni obrazku vytvarim konekci na WCF sluzbu, ktera vraci onen soubor, coz je vlakno navic. Pokud mam jednu aktivni akci a dve cekajici na locku, tak mi to deadlockne, protoze to odmitne vytvorit ctvrte vlakno pro to WCF spojeni.
    NECROMAN
    NECROMAN --- ---
    NECROMAN: nebo jinak, jak nastavit seriove provadeni akci volanych z view v MVC 3 namisto paralelnio zpracovani, popripade jak zmenit max pocet paralelnich akci najednou?
    NECROMAN
    NECROMAN --- ---
    Potrebuju radu - v MVC 3 aplikaci je nekde limit na max zpracovani 3 vlaken najednou, i kdyz mam treba na strance ve view 10x "@Url.Action("Image", "Product", neco)
    Ted mi nastava deadlock, kdyz se mi vytvori 3x vlakno pro nacteni toho Image, ale kazde z techto vlakne potrebuje vytvorit jeste jedno vlakno navic. I kdyz to zamykam a volam seriove, tak se to zasekne na vytvoreni 4 vlakna a cela webova aplikace jde do haje. Dotaz tedy - kde lze zmenit nastaveni pocet vlaken pro webovou aplikaci?
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    NECROMAN: WCF streaming podporuje, ale ma to par omezeni. Kazdopadne musis u endpointu prenastavit TransferMode na Streamed. neco je o tom treba tady: http://blogs.msdn.com/b/drnick/archive/2006/03/31/565558.aspx
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    NECROMAN: Nevim, jestli na soubory nema WCF nejakej specialni funkcionalitu. Ale pokud nema, tak bych to posilal normalne po chunkach v byte[].
    NECROMAN
    NECROMAN --- ---
    Otazka - kdyz mam web a extra sluzbu, ktera tomu webu poskytuje ulozene soubory z jineho stroje - jak tyto soubory posilat pres WCF nejrozumnejsim zpusobem - tedka se uz den snazim o to rozchodit to rozumne pres Streamy, ale nejak se mi to deadlockuje kdyz se klient pokousi cist vice souboru najednou, nebo jeden soubor vicekrat ve stejny okamzik a nevim, co s tim. Jsou streamy dobre reseni, neob radeji posilat byte[], nebo jeste nejak uplne jinak?
    SLUPKA
    SLUPKA --- ---
    Zdravím,
    nemáte někdo funkční sample na použití pooling duplexu pro komunikaci ze silverlight klienta?
    NECROMAN
    NECROMAN --- ---
    jeste dotaz 0 lze nejak nastavit, aby se adresy generovali jenom s malymi pismenky i tehdy, kdyz mam nazvy views a controlleru s velkymi - mam ProductController a slozku Views/Product/
    rad bych, aby to generovalo adresy ve tvaru <web>/product/action/
    NECROMAN
    NECROMAN --- ---
    JACHYMKO: nakonec jsem to vyresil extra tabulkou v db, ktera mapuje usernames na unikatni int IDcka, ktera se pouzivaji i jako folder names - po strance vykonu to bude asi nejlepsi reseni, at tam nejsou selecty, kde porovnavam hashe useru.
    NECROMAN
    NECROMAN --- ---
    JACHYMKO: hash me take napadl. tim se ale docela snizi citelnost nazvu souboru - leda mit nazev-bez-specialnich-znaku_hash
    NECROMAN
    NECROMAN --- ---
    Dotaz - pouzivam v ASP.NET MVC 3 aplikaci defaultni SqlMembershipProvider, ktery se vygeneruje pro typ projektu Internetova aplikace - potreboval bych generovat z username unikatni nazvy slozek na disku - je tu ale problem, ze v username muze byt skoro cokoliv, tj i zakazane znakyu pro slozky - jde nejak omezit platne symboly, ktere muzou byt v username, nebo jak resit preklad username se zakazanymi symboly na unikatni nazvy slozek?
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    JACHYMKO: Vystacil bych si s ICollection a ICollection<T>, pripadne i s IEnumerable (ale tam se mi to moc nechce, pac prochazenim bych mohl zmenit stav).

    Pro Object by byl fajn jinaci visualizer, ale bez toho se tedka klidne obejdu. Ale ty kolekce by se mi ted dost hodily.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    Mam svuj DebuggerVisualizer, kterej chci pouzit na jakykoliv typy implementujici ICollection ci ICollection<T>. Problem je, ze kdyz v attributu"System.Diagnostics.DebuggerVisualizer" definuju "Target=typeof(ICollection)", tak ten visualizer vubec neni nabizenej. Nabizi se jen u trid (mozna i struktur, nezkousel jsem), ktere jsou presne daneho typu (cili, ani ty odvozene).

    Je na to nejaka obezlicka? Chci si v gridu zobrazovat kolekce ruznejch objektu, vypsani vsech typu trid (vcetne generickych) neni v mych moznostech.
    NECROMAN
    NECROMAN --- ---
    JACHYMKO: hlavne by me zajimalo, jak treba zaridit, aby se zobrazil stejny odkaz u obrazku, ktere odkazuji na to same, treba na nejaky "filenotfound.gif"
    tedka ma kazdy svuj link treba /Product/Image?group=4, /Product/Image?group=5, /Product/Image?group=6 a vsechny zobrazuji to same... to ale pres routovani asi uz moc nepujde vymyslet, leda tam ty obrazky davat primo a ne pres akce.
    NECROMAN
    NECROMAN --- ---
    JACHYMKO: ale i u FilePathResultu to bude porad mit requestUrl ve tvaru
    http://localhost:11753/Product/Image?group=4
    Nevim, co je etag, ale response header je stejn jak u FileStreamResult tak u FilePathResult
    MORMEGIL
    MORMEGIL --- ---
    NECROMAN: No tak hlavně doufám, žes to „nevyřešil“ doplněním toho chybějícího usingu (jakože ten tam patří, ne že ne)… Hlavně musíš ten soubor otvírat s takovým režimem sdílení, aby ho mohlo číst víc lidí naráz!
    Kliknutím sem můžete změnit nastavení reklam