086 Microsoft Application Platform 2009 2010

1,261 views

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,261
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
21
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

086 Microsoft Application Platform 2009 2010

  1. 1. Plataforma de aplicaciones.net 2009/2010<br />Ignacio Cattivelli (icattivelli@urudata.com)<br />Pablo García (pcgarcia@microsoft.com)<br />
  2. 2. AGENDA<br />.net Framework 4.0<br />Windows Server 2008 R2<br />Internet Information Server 7.5<br />«Dublin» Application Host<br />SQL Server 2008 R2<br />
  3. 3. Plataforma de Aplicaciones<br />Gartner AppInfrastructure for New<br />SOA Application Project<br />Gartner Back End App Integration (Dec 2008)<br />Gartner AppInfrastructure <br />
  4. 4. .net CLR<br />WPF<br />Win Forms<br />DLR<br />Dynamic Language Runtime<br />ASP. NET<br />WCF<br />And more!<br />LINQ<br />The CLR<br />Base Class Libraries<br />Profiling& Debugging APIs<br />JIT & NGEN<br />Garbage Collector<br />Security Model<br />Exception Handling<br />Loader & Binder<br />
  5. 5. In Process Side By Side<br />2.0 addin<br />3.0 addin<br />3.5 addin<br />4.0 addin<br /><ul><li>CLR 2.0 y 4.0 en el mismoproceso.
  6. 6. Componentesviejosusan el CLR viejo
  7. 7. Componentesnuevosusan el nuevo CLR</li></ul>3.5<br />.NET 4.0<br />3.0<br />.NET 2.0<br />Host Process (e.g. Outlook)<br />Los archivos de configuración y lasapis de hosting permiten un control de adecuadagranularidad<br />Para aplicaciones y componentes COM, el archivo de configuración describe queversiones del CRL se necesitaparaejecutar y cual se prefiere.<br />
  8. 8. Dynamic Language Runtime<br />Nuevoslenguajes: IronPython, IronRuby, F#<br /><ul><li>Tuples
  9. 9. BigInteger
  10. 10. Tail recursion</li></ul>Dynamically-Typed<br />Ruby<br />Python<br />Statically-Typed<br />VB<br />Dynamic Language Runtime<br />C#<br />Common Language Runtime<br />
  11. 11. Interoperando con lenguajesdinámicos<br /> Calculator calc = GetCalculator();<br />int sum = calc.Add(10, 20);<br />La interoperabilidad con lenguajesdinámicosescomplicada.<br />
  12. 12. Parallel & Threading<br />Parallel.For(0, n, i =&gt; work(i));<br />Parallel.ForEach(data, e =&gt; work(e));<br />var results = from item in shows.AsParallel()<br /> where item.Description.Contains(keyword) &&<br />item.Year &gt; startYear<br />orderbyitem.StartTime ascending<br /> select item;<br />
  13. 13. GC: Background GC vs. Concurrent GC<br />Concurrent GC<br />Raw latency in microseconds<br />Profiling samples of latency during application execution<br />Background GC<br />
  14. 14. Contratos<br />public void BuyMoreStuff(Item[] cart, ref Decimal totalCost, Item i)<br />{<br />CodeContract.Requires(totalCost &gt;=0);<br />CodeContract.Requires(cart != null);<br />CodeContract.Requires(CodeContract.ForAll(cart, s =&gt; s != i));<br />CodeContract.Ensures(CodeContract.Exists(cart, s =&gt; s == i);<br />CodeContract.Ensures(totalCost&gt;= CodeContract.OldValue(totalCost));<br />CodeContract.EnsuresOnThrow&lt;IOException&gt;(totalCost== CodeContract.OldValue(totalCost));<br /> // Do some stuff<br /> …<br />}<br />
  15. 15. Cliente .NET 4.0<br />3.5SP1 instalaciónpequeñapero la distribuciónocupa 230 MB<br />Incluyecompleta y cliente<br />Incluye MSU (Vista) y MSI (XP)<br />.NET 4, tamaño final &lt; 40MB<br />Nuevo en el CLR 4: NGEN corre en paralelo<br />Aumento de velocidadsustancial en NGEN<br />7% en un sistema de bajosrecuros (1 hyper-threaded core)<br />30% en un sistemaintermedio(1 CPU, 2 core)<br />50% en un sistema de altasprestaciones(2 CPU, 4 core)<br />
  16. 16. WPF para Windows 7 <br />Multi-Touch<br />Taskbar<br />Dwrite for text rendering<br />Ribbon<br />Common Dialogs<br />File Explorer Customization<br />More…<br />Use these with .NET and via XAML in WPF<br />
  17. 17. &lt;Application x:Class=“Fishbowl.App&quot;<br />xmlns=&quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&quot;<br />xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml<br />xmlns:shell=&quot;clr-namespace:System.Windows.Shell;assembly=System.Windows.Shell&quot;&gt;<br /> &lt;JumpList.JumpList&gt;<br /> &lt;JumpListShowRecentCategory=&quot;True&quot;&gt;<br /> &lt;JumpTask<br /> Title=“Slideshow&quot;<br /> Arguments=&quot;/Slideshow&quot; /&gt;<br /> &lt;JumpTask<br /> Title=“Latest News&quot;<br /> Arguments=&quot;/Newsfeed&quot; /&gt;<br /> &lt;JumpTask<br /> Title=&quot;Sync Now&quot;<br /> Arguments=&quot;/Synchronize&quot; /&gt;<br /> &lt;/JumpList&gt;<br /> &lt;/JumpList.JumpList&gt;<br />&lt;/Application&gt;<br />3.5 SP1<br />
  18. 18. WPF Taskbar Integration<br />Thumbnails toolbars <br />Icon overlays <br />Progress bars <br />Jumplists<br />With XAML Support<br />3.5 SP1<br />
  19. 19. WPF 4 Multitouch<br />UIElement<br />Eventos de manipulación<br />Eventos de gestos en el sistema touch.<br />Eventos touch básicos<br />Contorles Multi-touch:<br />ScrollVieweraceptagestos<br />Controles base soportanmultitouch<br />Soporte de capuramúltiple, para mas de un punto de contacto al mismotiempo.<br />Controlesespecíficos multi-touch (ScatterView)<br />Compatible con el Surface SDK 2.0<br />
  20. 20. ASP.NET Core / Runtime<br />Beta 1<br />Extensible Output Caching<br />Auto-start applications en IIS 7.5<br />Response.RedirectPermanent (301)<br />Out-Of-Proc Compressed Session State<br />Beta 2<br />Html / Url Encoding Extensibility<br />Request Validation Extensibility<br />Minified Web.Config<br />Perf Counters for CPU / Memory per AppDomain<br />
  21. 21. Minimized Web.Config<br />VS 2008 SP1 – 126 Líneas<br />VS 2010 Beta 2 – 6 Líneas<br />&lt;?xml version=&quot;1.0&quot;?&gt;<br />&lt;configuration&gt;<br />&lt;configSections&gt;<br /> &lt;sectionGroup name=&quot;system.web.extensions&quot; type=&quot;System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&quot;&gt;<br /> &lt;sectionGroup name=&quot;scripting&quot; type=&quot;System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&quot;&gt;<br /> &lt;section name=&quot;scriptResourceHandler&quot; type=&quot;System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&quot; requirePermission=&quot;false&quot; allowDefinition=&quot;MachineToApplication&quot;/&gt;<br /> &lt;sectionGroup name=&quot;webServices&quot; type=&quot;System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&quot;&gt;<br /> &lt;section name=&quot;jsonSerialization&quot; type=&quot;System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&quot; requirePermission=&quot;false&quot; allowDefinition=&quot;Everywhere&quot; /&gt;<br /> &lt;section name=&quot;profileService&quot; type=&quot;System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&quot; requirePermission=&quot;false&quot; allowDefinition=&quot;MachineToApplication&quot; /&gt;<br /> &lt;section name=&quot;authenticationService&quot; type=&quot;System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&quot; requirePermission=&quot;false&quot; allowDefinition=&quot;MachineToApplication&quot; /&gt;<br /> &lt;section name=&quot;roleService&quot; type=&quot;System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&quot; requirePermission=&quot;false&quot; allowDefinition=&quot;MachineToApplication&quot; /&gt;<br />… <br />&lt;?xml version=&quot;1.0&quot;?&gt;<br />&lt;configuration&gt;<br /> &lt;system.web&gt;<br /> &lt;compilation debug=&quot;true&quot; targetFramework=&quot;4.0&quot; /&gt;<br /> &lt;/system.web&gt;<br />&lt;/configuration&gt;<br />
  22. 22. Áreas de InversiónTecnológica<br />Administración<br />Web<br />Virtualización<br />IIS 7.5<br />ASP .NET on Server Core<br />Enhanced FTP and WebDAV<br />Administration Modules & Cmdlets<br />Hyper-V™ with Live Migration<br />Hot Add/Remove VM Storage<br />Remote Desktop Services<br />Power Management<br />Windows PowerShell<br />AD Administrative Center<br />Best Practices Analyzer<br />SoporteSólidoparaCargasEmpresariales<br />Junto con Windows 7<br />Escalabilidad y Confiabilidad<br />DirectAccess™<br />BranchCache™<br />Improved File Copy Performance over WANs<br />Enhanced Group Policies <br />RemoteApp & Desktop Connections<br />256 Core Support<br />Componentization<br />Boot from SAN or VHD<br />Support for Solid-state Devices<br />File Classification Infrastructure<br />
  23. 23. DirectAccess™<br />Dispositivo IPv4<br />Dispositivos IPv6<br />Soporte de IPv4 via 6to4 transition services<br />IT desktop management<br />DirectAccess provee acceso transparente y seguro a recursos de intranet sin VPN<br />IPv6 Nativo con IPSEC<br />Permite la administracióndirecta de desktops<br />AD Group Policy, NAP, software updates<br />IPv6 Transition Services<br />Conectividaddirecta con recursosinternos IPv6<br />DirectAccess<br />Server<br />Internet<br />Soportaunagranvariedad de protocolos de red remotos<br />Cifrado y autenticaciónmediante IPSEC<br />Cliente Windows 7<br />
  24. 24. BranchCache™ <br />Solución Windows 7<br />Cache del contenidodescargado de servidores web y de archivos<br />Usuarios de la sucursalaccedenrápidamente a archivos del cache<br />Menortráfico en la red por parte de otrosusuarios<br />DetallesTécnicos<br />Verifica el estado de los datos y los derechos de acceso del usuario contra el servidor<br />Soportapotocoles de usocomún: HTTP(S), SMB<br />Soportaprotocolos de seguridad de redes: (SSL, IPsec)<br />Requiere Windows Server 2008 R2 en el data center y en el cache<br />
  25. 25. Protección de Datos<br />Solución Windows Server 2008 R2 y Windows 7<br />Situación Actual<br />BitLockerToGo™<br />+<br />Worldwide Shipments (000s)<br />Protección de datos en dispositivosinternos y removibles<br />Exigencia del uso de cifradomediantedirectivas de grupo<br />Almacenamiento de información de recuperación en el AD<br />Setup y configuración de Bitlocker en el disco principal simplificado<br /><ul><li>Gartner “Forecast: USB Flash Drives, Worldwide, 2001-2011” 24 September 2007, Joseph Unsworth  
  26. 26. Gartner “Dataquest Insight: PC Forecast Analysis, Worldwide, 1H08”18 April 2008, Mikako Kitagawa, George Shiffler III </li></li></ul><li>Green IT - Core Parking<br />Generalidades<br />Consolidandoprocesos en un servidorúnicocuandolascondiciones de carga lo permiten.<br />Habilita a colocarprocesadores en estado “C”<br />Beneficios<br />Reduce el consumo de potencia de la CPU<br />
  27. 27. Live Migration<br />Virtual Machine <br />Virtual Machine <br />Configuration Data<br />Memory Content<br />Memory Sync<br />Cluster<br />Node 1<br />Cluster<br />Node 2<br />User<br />VHD<br />Network Storage <br />
  28. 28. Hyper-V 2.0 Features<br />Soporte de procesadores<br />64 procesadoreslógicos en el host<br />Hot Add/Remove Storage<br />Permiteagregar discos VHD sin necesidad de reiniciar la VM<br />Second Level Translation (SLAT)<br />Reduce la carga del hipervisorusandocaracterísiticas de los procesadoresmodernos<br />VM Chimney (TCP Offload Support)<br />Tráfico TCP/IP puedeserasignadodirectamente a unatarjetade red con accesodirecto a la VM.<br />Processor Compatibility Mode<br />Permitemigración en vivo entre diferentes CPUs(manteniendo la familiatecnológica).<br />
  29. 29. IIS 7.5<br />ASP.NET on Server Core<br />Web Deployment Tool<br />PowerShell Module & Cmdlets<br />Configuration Logging & Tracing<br />Integrated FTP and WebDAV <br />Best Practice Analyzer<br />SEO Toolkit<br />URL Rewriter<br />App Preloader<br />App Request Router<br />
  30. 30. Varied Fragment sized based on local conditions<br />Encoded Content<br />IIS Smooth Streaming Origin Server<br />Cache<br />Variable Bandwidth<br />Low Bandwidth<br />HTTP Caching Server<br />High Bandwidth<br />Smooth Streaming<br />
  31. 31. Windows Application Server (“Dublin”)<br />Challenges in the Mid-tier<br />“I want to get my WF and WCF services up and running easily - Why doesn’t it just work?”<br />“I want to easily monitor and control running WF and WCF services.”<br />“I really want better tooling and scripting.”<br />“I want enterprise-ready, reliable, scalable, manageable server for WF and WCF.”<br />Visual Studio<br />Windows Server<br />“Dublin”<br />IIS<br />Admin Tools<br />(IIS Manager)<br />Admin Tools (IIS Manager)<br />WCF and WF services<br />ASP.NET Web pages<br />System Center<br />WAS<br />.NET<br />ASP.NET<br />WCF<br />WF<br />COM+, DTC, MSMQ …<br />
  32. 32. Disponibilidad y escalabilidad<br />&quot;Dublin&quot;<br />Workflow Management Service<br />2<br />Workflow Service<br />Persistence Database<br />Network Load Balancer<br />1<br />&quot;Dublin&quot;<br />instance<br />3<br />6<br />Workflow Management Service<br />5<br />Monitoring Database<br />Workflow Service<br />7<br />4<br />
  33. 33. Retoma de instancias<br />&quot;Dublin&quot;<br />Workflow Management Service<br />3<br />Workflow Service<br />1<br />activity<br />2<br />persist<br />Persistence Database<br />6<br />5<br />activity<br />4<br />3<br />instance<br />
  34. 34. &quot;Dublin&quot;<br />Workflow Service Host<br />Persistencia de “timers”<br />Workflow Management Service<br />Workflow<br />4<br />1<br />Delay<br />SQL Instance Store<br />2<br />3<br />SQL <br />Persistence Database<br />
  35. 35. Servicio de ruteo<br />Customer Service Application<br />Front End<br />&quot;Dublin&quot;<br />Regular Customer Workflow Service<br />Customer<br />Routing Service<br />Billing Application<br />Database<br />Billing Service<br />app.config<br />&lt;?xml version=<br />&lt;configuration<br />&lt;appSettings<br />&quot;Dublin&quot;<br />Premium Customer Workflow Service <br />
  36. 36. Workflow Foundation 4.0<br />
  37. 37. Web Services<br />
  38. 38. Matríz de madurez y complejidad<br />Federated EDW<br />“Tightly Coupled”<br />Q2<br />Integrated Data Marts<br />Q4<br />Centralized EDW<br />Consolidated EDW<br />Data Warehousing<br />Federated DW<br />“Loosely Coupled”<br />Complexity<br />Q1<br />Distributed Data Marts<br />Q3<br /> Decision Engine<br />Maturity<br />
  39. 39. SQL Server Master data Services<br />MD – Slowly changing reference data shared across systems<br />MDM – An application for creating and maintaining an authoritative view of master data including policies and procedures for access, update, modification, viewing between systems across the enterprise<br />MDS – Microsoft’s Master Data Services platform shipping with KJ<br />35<br />
  40. 40. Hub & Spoke - Arquitectura<br />Base - Package<br />Presentation<br />Data Integration<br />Legacy<br />DBMS<br />ETL<br />Test/Dev<br />Source<br />Systems<br />
  41. 41. «Madison» – DW distribuída<br />
  42. 42. Arquitectura<br />20Gbs Infiniband<br />DMS Backbone<br />Database Servers<br />Storage Nodes<br />SQL<br />SQL<br />SQL<br />SQL<br />SQL<br />SQL<br />SQL<br />SQL<br />SQL<br />Control Nodes<br />Active / Passive<br />Client Drivers<br />Management Servers<br />Data Center<br /> Monitoring<br />Dual Fiber Channel<br />Dual Infiniband<br />Landing Zone<br />ETL Load Interface<br />Backup Node<br />8Gbs Fiber Channel<br />Local San<br />Corporate Backup <br />Solution<br />Spare Database Server<br />IPoIB<br />Dedicated LAN<br />Corporate Network<br />Private Network<br />
  43. 43. StreamInsight<br />
  44. 44. «Gemini» ServerDatawarehouse para todos<br />
  45. 45. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.<br />The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.<br />

×