Πίθος - Αρχιτεκτονική και τεχνολογίες .NET

download Πίθος - Αρχιτεκτονική και τεχνολογίες .NET

of 29

  • date post

    14-Jul-2015
  • Category

    Technology

  • view

    183
  • download

    2

Embed Size (px)

Transcript of Πίθος - Αρχιτεκτονική και τεχνολογίες .NET

PowerPoint Presentation

.NET

Object storage Amazon S3/Azure Blob storage Synnefo PythonClients Web, Windows, iOS, Android, Linux

Synnefo

Client APIREST OpenStack Object Storage APIAccounts, Containers FoldersGET data, object infoPUT, POST upload update dataExtensions APIBlock StoragePartial Upload/DownloadPermissions, VersionsMetadata QueriesUUIDs Object IDsObject updates (copy, move) API foldersPlaceholder directory object metadataBlock updates Merkle hashing block SHA256Merkle Hashing Download UploadPithos Client accounts folder account upload server download Merkle Hash . 4, Windows XPVisual Studio 2012 + Async Targeting PackUI - Caliburn.MicroConcurrency - TPL, Parallel, DataflowNetwork HttpClientHashing - OpenSSL - native provider hashingStorage - NHibernate, SQLite/SQL Server CompactLogging - log4net file eventsHashing / server Minimal UI Events Events (2) producer/consumer events ConcurrentQueue timeoutMerkle Hashing Game of Thrones blocks Hashing block OpenSSL SSE concurrency !Memory Leaks Managed Environment!4 Blocks? Large Memory 2GB 64 600 x KBs collection CPU/IO intensive processing Garbage Collector! Memory LeaksSystem.ServiceModel.Channels.BufferManager pool x Buffers y KBTakeBuffer buffer pool buffer ReturnBufferLeak BufferPool Ayende Exception Returnhttp://ayende.com/blog/4827/answer-stopping-the-leaks Hashing 100% CPU? multicore ! block hash ops: Throttling File Read Task REST calls account sharesTask.WhenAll System.Net.Http.HttpClient blocks cache orphans Retry Transactional NTFS Thanks MS for killing it! File.Replace agentsAsynchronous operations async/await .ConfigureAwait(false)! async void Minimal UI WPF, MVVM Progress UI .NET 4.5, 4To Shell Icon! WPF Notification Icon Data Binding menu SQLite Compact CE? SQLite -> (DUH !)Write Ahead logging, SQL Compact (duh ?) caching?Akavache? Document DB File Manager (DUH!) Unit Tests (Duh ?)Mock Server WebAPI? scriptcs? Yumm! Pithos libraryWindows RT, Windows Phone clients Links Pithos trialhttp://pithos.okeanos.ioSynnefo Documentationhttp://www.synnefo.org/docs/synnefo/latest/index.htmlPithos API Documentationhttp://www.synnefo.org/docs/pithos/latest/index.html Pithos Windows Clienthttps://code.grnet.gr/projects/pithos-ms-client LinksParallel FX Team bloghttp://blogs.msdn.com/b/pfxteamCaliburn.Microhttp://caliburnmicro.codeplex.com/Ayendes BufferPoolhttp://ayende.com/blog/4827/answer-stopping-the-leaks C# 5 in a Nutshell, ORileyParallel Programming with .NET, MicrosoftPro Parallel Programming with C#, WileyConcurrent Programming on Windows, PearsonThe Art of Concurrency, OReilly