Performance

Dimensione di un oggetto managed

Recentemente stavo lavorando su un servizio che alloca un oggetto di grandi dimensioni. La domanda che mi son posto era, si ma quanto e' grande e dove posso ottimizzare? Ho aperto Visual Studio profiler ed ho fatto partire il servizio. Dato che l'applicazione, quando parte, deve deserializzare questo oggettone, ci stava mettendo una vita (ho fatto tempo a pranzare ed era ancora li a macinare). Abbandonato il profiler di Visual Studio ed ho usato CLR profiler, niente da fare, stesso problema! L'unica soluzione che mi e' rimasta in canna e' WindDbg con le estensioni SOS. Faccio partire il processo e carico...

posted @ Tuesday, April 22, 2008 11:16 PM | Feedback (1)

Edge caching

Il tema dell'edge caching e' un tema estremamente intrigante e sotto molti punti di vista complesso. Si parte dalla soluzione null cache, dove in pratica non si mette nulla in cache, per proseguire alla cache uniformemente distribuita, in stile ASP.NET per intenderci, fino ad arrivare alle collaborative edge cache networks. Qual'e' la soluzione ideale? Tutte e nessuna. Dipende totalmente dal contesto, ed in particolare dalla dinamicita' delle modifiche dei dati, dalla loro dimensione e quantita', dal modo di essere consumati, dal livello di sicurezza, dalla scalabilita', dalla topologia di rete del sistema di distribuzione, dall'uniformita' di distribuzione dei dati sull'edge,...

posted @ Tuesday, April 15, 2008 10:07 AM | Feedback (0)

String replace

Da 4 mesi a questa parte sto scrivendo un nuovo servizio che fa pesante uso di manipolazioni di stringhe. Parlo di replace, wrod braking, stemming, ecc. ecc. Questa mattina mi son letto un interessante post sulle prestazioni delle varie funzioni Replace disponibili nel framework: Comparing RegEx.Replace, String.Replace and StringBuilder.Replace – Which has better performance? Il post mi pare un pochetto incompleto in quanto non da riferimenti sull'uso delle risorse, in particolare della memoria. Nell'analisi delle prestazioni e' infatti fondamentale verificare sia il tempo che il consumo della memoria. Abbandonato il post torno ai miei compiti quotidiani. Una delle funzioni che maggiormente uso, e' il...

posted @ Wednesday, April 2, 2008 9:37 AM | Feedback (2)