CrossPlatform ASP.NET with Mono. Daniel López Ridruejo daniel@bitrock.com



Similar documents
.NET Overview. Andreas Schabus Academic Relations Microsoft Österreich GmbH

ASP &.NET. Microsoft's Solution for Dynamic Web Development. Mohammad Ali Choudhry Milad Armeen Husain Zeerapurwala Campbell Ma Seul Kee Yoon

Programming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB)

Cross-Platform Mobile Apps Solution

The Mono Development Platform. Simon Nattrass Strategic Partner Engineering Novell, Inc.

Dynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT

Introducing Micro Focus Net Express to Develop and Extend COBOL Applications within.net White Paper

Transition your MCPD Web Developer Skills to MCPD ASP.NET Developer 3.5 (VB)

GUI and Web Programming

Chapter 13 Computer Programs and Programming Languages. Discovering Computers Your Interactive Guide to the Digital World

IBM WebSphere ILOG Rules for.net

This module provides an overview of service and cloud technologies using the Microsoft.NET Framework and the Windows Azure cloud.

Integrating SharePoint Sites within WebSphere Portal


Ambientes de Desenvolvimento Avançados

Migration and Developer Productivity Solutions Retargeting IT for Emerging Business Needs

ASP.NET Using C# (VS2012)

Document Management. Document Management for the Agile Enterprise. AuraTech Pte Ltd

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology Fall 2007

ARM-BASED PERFORMANCE MONITORING FOR THE ECLIPSE PLATFORM

Developing Database Business Applications using VB.NET

Developing ASP.NET MVC 4 Web Applications

Cross Platform Applications with IBM Worklight

Evolution of the Major Programming Languages

Changing the embedded development model with Microsoft.NET Micro Framework

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications.

The Comparison of J2EE and.net for e-business

Considerations for Mobile Application Development

WHITE PAPER. TimeScape.NET. Increasing development productivity with TimeScape, Microsoft.NET and web services TIMESCAPE ENTERPRISE SOLUTIONS

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

<Insert Picture Here> Java, the language for the future

Deepak Patil (Technical Director) iasys Technologies Pvt. Ltd.

Braindumps.C questions

How To Develop A Web Development Software For A Business

MOC DEVELOPING WINDOWS AZURE AND WEB SERVICES

CATALOG OF CLASSES IT and Technical Courses

Programming in C# with Microsoft Visual Studio 2010

.NET and J2EE Intro to Software Engineering

Cross Platform Applications with IBM Worklight

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led

MS 20487A Developing Windows Azure and Web Services

Building native mobile apps for Digital Factory

How to use PDFlib products with PHP

How To Train Aspnet

PHP on IBM i: What s New with Zend Server 5 for IBM i

Track and Keynote/Session Title 9:00:00 AM Keynote 11g Database Development Java Track Database Apex Track.Net Track. 09:30:00 AM with Oracle and

A lap around Team Foundation Server 2015 en Visual Studio 2015

Transactions traditional rollback and recovery for component-based applications in the event of system failure.

Our Technology.NET Development services by Portweb Inc.

USE OF PYTHON AS A SATELLITE OPERATIONS AND TESTING AUTOMATION LANGUAGE

Developing ASP.NET MVC 4 Web Applications MOC 20486

Layering a computing infrastructure. Middleware. The new infrastructure: middleware. Spanning layer. Middleware objectives. The new infrastructure

Data Sheet VISUAL COBOL WHAT S NEW? COBOL JVM. Java Application Servers. Web Tools Platform PERFORMANCE. Web Services and JSP Tutorials

Apache Jakarta Tomcat

Functions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server

.NET Overview. David Smith. Today s s Topics. Why am I here? A tool. Microsoft s s Vision for.net

RayManageSoft. infinity. The new generation of Application Lifecycle Management

Developing Windows Azure and Web Services

Developing Windows Azure and Web Services

Moving Your COBOL Assets to Microsoft.NET: Fujitsu NetCOBOL for.net

,... Innovative Software in its Simplicity! Windows Linux Mac OS X ios

9/11/15. What is Programming? CSCI 209: Software Development. Discussion: What Is Good Software? Characteristics of Good Software?

Network operating systems typically are used to run computers that act as servers. They provide the capabilities required for network operation.

Modern Software Development Tools on OpenVMS

Latte Rapid Application Development. William Dunlap Product Manager Borland International

Programming. Languages & Frameworks. Hans- Pe(er Halvorsen, M.Sc. h(p://home.hit.no/~hansha/?page=sodware_development

Measurably reducing risk through collaboration, consensus & practical security management CIS Security Benchmarks 1

Advanced Web Application Development using Microsoft ASP.NET

Take full advantage of IBM s IDEs for end- to- end mobile development

Introduction. ASP to ASP.NET MIGRATION. Executive Summary

Web Development with the Eclipse Platform

Software. Programming Language. Software. Instructor Özgür ZEYDAN. Bülent Ecevit University Department of Environmental Engineering

An Oracle White Paper May Ready for Business: Oracle GlassFish Server

WHITE PAPER. Domo Advanced Architecture

JAVA WEB START OVERVIEW

EXAM PRO:Design & Develop Windows Apps Using MS.NET Frmwk 4. Buy Full Product.

4 Understanding. Web Applications IN THIS CHAPTER. 4.1 Understand Web page development. 4.2 Understand Microsoft ASP.NET Web application development

David Pilling Director of Applications and Development

GETTING STARTED GUIDE

Your guide to building great apps. Upgrade your skills and update your tools to create the next great app

A Performance Comparison of Web Development Technologies to Distribute Multimedia across an Intranet

Key Benefits of Microsoft Visual Studio 2008

An Easier Way for Cross-Platform Data Acquisition Application Development

QuickSpecs. QuickSpecs. Description. HP OpenVMS Application Modernization and Integration Infrastructure Package,Version 2.3

Next Generation Lab. A solution for remote characterization of analog integrated circuits

Evaluation of Load/Stress tools for Web Applications testing

Visual WebGui for ASP.NET Ajax (and other Ajax) Web Developers Learn what makes Visual WebGui not just another Ajax framework

Data Center Virtualization and Cloud QA Expertise

ASSOCIATE IN APPLIED SCIENCE DEGREES AND CERTIFICATES

NXTware Remote. Advanced Development and Maintenance Environment for OpenVMS and other Strategic Platforms

ORACLE DATA SHEET KEY FEATURES AND BENEFITS ORACLE WEBLOGIC SERVER STANDARD EDITION

Jitterbit Technical Overview : Microsoft Dynamics CRM

Transcription:

CrossPlatform ASP.NET with Mono Daniel López Ridruejo daniel@bitrock.com

About me Open source: Original author of mod_mono, Comanche, several Linux Howtos and the Teach Yourself Apache 2 book Company: founder of BitRock, multiplatform installers and management software

About this presentation The.NET framework An overview of Mono, a multiplatform implementation of the.net framework mod_mono : run ASP.NET on Linux using Apache and Mono

The Microsoft.Net initiative Many things to many people, we are interested in a subset: the.net framework Common Language Runtime execution environment Comprehensive set of class libraries As other technologies, greatly hyped. But is a solid technical foundation that stands on its own merits

The.NET Framework

.NET Highlights (1) Common Language Runtime : Provides garbage collection, resource management, threads, JIT support and so on. Somewhat similar to JVM Common Intermediate Language, multiple language support: C#, Java, Visual Basic, C++, JavaScript, Perl, Python, Eiffel, Fortran, Scheme, Pascal Cobol They can interoperate and have access to full.net capabilities. Similar to Java bytecode

.NET Highlights (2) Comprehensive Class Library: XML, ASP.NET, Windows Forms, Web Services, ADO.NET Microsoft wants.net to succeed in other platforms: standardization effort at ECMA, Rotor sample implementation. P/Invoke: Easy to incorporate and interoperate with existing code Attributes, delegates, XML everywhere

Mono Project Open Source.NET framework implementation. Covers ECMA standard plus additional technologies: Windows Forms, ASP.NET, ADO.NET Started by Ximian, looking for better development tools for Linux desktop Incredible progress in short amount of time, hundreds of contributors

What does Mono provide? C# compiler Runtime Class libraries Tools: debugger, documentation browser Supports Linux, FreeBSD, Windows, Mac OS X, IBM mainframes and many more on the works

Related Projects GUI development: System.Windows.Forms (Wine/GTK) Gtk# QT# SharpWT JScript, Visual Basic bundled with Mono, other third party, IKVM project MonoDevelop IDE

Why Mono for Linux development? Ease desktop development Reuse of existing code libraries, extend applications. Ease Windows migration. Develop on Visual Studio, deploy on Linux. Multiple language support and seamless interoperability

ASP.NET Server side development with.net languages, mainly C# and Visual Basic. Component based development xcopy deployment Data binding Two approaches: Traditional: code intermixed with HTML Code behind

Why ASP.NET? Unified approach to server side development Languages Tools Libraries Simplified development and deployment Event model Configuration Shadow copying

Http Pipeline Similar to Apache hook / filter system Create a handler or a module and register interest in events during the life of the request (BeginRequest, AuthenticateRequest, ResolveRequestCache, and so on) Important classes: HttpApplication, HttpWorkerRequest, HttpRequest

Caching Output Caching: caching full page, fragments Possible and easy to implement custom caching modules Data caching engine available to developers

State management Application Session : HttpSession In memory State server Database Cookie View

Demo Time!

mod_mono Allows running ASP.NET on Linux using Apache and Mono Apache handles the HTTP protocol, creates HttpWorkerRequest and passes it to the ASP.NET pipeline for processing ASP.NET processes the request and produces a result that Apache returns to the client

mod_mono features Supports Apache 2 and 1.3 versions Portable, should run on any platform that Apache and Mono support, including Windows. Current support Linux, FreeBSD, OSX Processing model, tradeoff reliability, session support, scalability, performance Multiple processes Purely threaded Out of process

Multiple processes Apache Parent process Child process Child process Child process mod_mono Mono runtime

Threaded Apache Apache Worker thread Worker thread Worker thread mod_mono Mono runtime

Out of process Apache Parent process Child process Child process Mono runtime

Mono Misconceptions Always playing catch up Patent enforcement C# / Java License issues

Advantages of Mono ASP.NET for Enterprise environments Reuse current Windows expertise, code Component based development Develop on Windows, deploy on Linux/Unix Windows have better development tools Linux regarded as more secure, scalable, reliable Avoid license fees Interoperate with other open source technologies Reduce costs and prevent vendor lock-in, providing a migration path

Related Projects mod_haydn Apache 1.3 Mono mod_aspdotnet Windows.NET

The future Mono Mono 1.2 Support for newer releases.net mod_mono ASP.NET 2.0 support Windows support Additional processing models Get involved!

Q&A Thanks for Attending! More info: http://www.go-mono.com http://www.apacheworld.org/modmono/ You can reach me at: daniel@bitrock.com