Java in Mobile and Cloud Viewpoint Harish Kashyap M.M. BeyondSquare 16 th August 2010.
-
date post
20-Dec-2015 -
Category
Documents
-
view
215 -
download
0
Transcript of Java in Mobile and Cloud Viewpoint Harish Kashyap M.M. BeyondSquare 16 th August 2010.
Java in Mobile and CloudViewpoint
Harish Kashyap M.M.BeyondSquare16th August 2010
2
Java- Bit of History
Java in Mobile
Java in Cloud
3
Evolution of Java
J2SE1.2•Reflection•Swing and MVC•J2EE and J2ME
J2SE1.4•Assertion •XML and JAXP•JAAS
Java SE1.6•Performance•JavaFX•64 bit JVM
JDK1.0•Launched
J2SE1.5•Generics•Metadata
J2SE1.3•HotSpot JVM
JDK1.1•AWT retooling•JavaBeans •JDBC, RMI
Java SE1.7•Modules
1995/96 2010 +
Container - JVM
Language Features
Application Framework/ Libraries
IDE
HotSpot VM , Jrockit VM
Struts, Spring, Hibernate, iBatis etc
JDBC, JMS, JAXP, JAXB, JAAS, EJB etc
NetBeans, Eclipse etc
4
Where are we today?
9 million Java developers
840 million Java desktop installations
100+ different hardware platforms supported million Java desktop installations
5.5 billion Java cards
2.6 billion Java-enabled cell phones250 partner cell phone carriers
100,000+ Java ME applications
40 million TVs and Blu-ray players
100 Used by all of the Fortune 100 companies
Source: Oracle as on Jan 2010
5
Where are we today?
Enterprise Edition
Standard Edition
Micro Edition
• Java SE for the desktop• Java EE for server and enterprise solutions• Java ME for embedded and mobile devices• JavaFX to build rich Internet applications, with media
capabilities for desktop computers, mobile devices, and television (set-top boxes, Blu-ray players, and so on)
Java Fx
6
The Java ME platform covers everything from small limited devices with intermittent network connection to capable on-line mobile devices
• 16-bit or 32-bit CPU with a clock speed of 16 MHz or higher
• At least 160 KB ROM allocated for the CLDC libraries and virtual machine
• At least 192 KB total RAM available to the Java platform
• Low power consumption, often operating on battery power
• Connectivity to some kind of network, often with a wireless, intermittent connection and limited bandwidth
• Devices that support CDC typically include a 32-bit microprocessor/controller and make about 2 MB of RAM and 2.5 MB of ROM available to the Java application environment.
7
Smart phones are making inroads
Source:wikipedia
8
Top trends in IT
• Industries move between horizontal and vertical structures
Source:www.visionmobile.com
9
Network services are moving from vertical to horizontal while handset OEM is moving the other way around
• Players are at different stages towards verticalisation or horizontalisation
Source:www.visionmobile.com
10
How players stack up…
Components Apple Nokia RIM HTC Google Qualcomm Mediatek
Services
Service delivery
Service distribution
Device Design
UI Design
Core Apps
App envrnmnt
Operating System
Hardware Platform
Chipset IP
Manufacturing
Platforms Apple iOS
Symbian / Meego
RIM Android BREW
11
Too many platforms… space to watch out for
2nd party platforms
• designed for building phones• aimed at OEM• using legacy code• intended for core apps
3rd party platforms
• designed for building apps• aimed at any application developer• using modern platforms• intended for downloadable apps
12
Few key platforms
Brew:
•Used for deploying applications on CDMA devices •Little penetration in Europe.•Qualcomm•More advanced 3d capabilities than J2ME•Does not run on all devices. Need digital signature to be issued•Written in C, has Java API available
Symbian
•Most widely used, written specifically for mobile devices•Supported by Nokia, Sony Ericson, Samsung, NTT DOCOMO•Java API available•Relies on QT technology
Android
•Linux based•Can develop apps in Java but runs on C/C++ runtime. •Supported by HTC, Google, ChinaMobile and quite a few other players•Is not completely J2ME compliant
Apple iOS
Others•Samsung Bada•Nokia MEEGO•Blackberry OS
13
Other key trends
• Mobile advertising will surpass the traditional web based advertising
• Tablet devices will become the pretty much part of all our lives
• Many makers of smart phones. Diversity will continue to exist
• Everything and everybody join the network
• Service providers (with SIM) will find hard to survive. Quite a few phones will run without a SIM card.
• Content will be the king and mostly tied up with network. Network as a service
• Cool mobile apps for consumer and business
• Consolidation will happen based on OEM, Network provider and carrier strategy
• Consolidation of java platforms to Java SE and eventually Java ME may no longer need to be micro!
14
Gartner Technology prediction
Cloud computing at the Peak
Predicts
15
What is Cloud Computing?
“A pool of abstracted, highly scalable, and managed compute infrastructure
capable of hosting end-customer applications and billed by consumption”
DefinitionIn Simple Terms, Cloud offers…
Pay-per-use for computation power
Virtually infinite computation resources
Automatic on-demand scalability
An Analogy - Electricity
“Computation Power” is now available like Electricity
You pay for what you use.
You rely on a trusted third-party providers
Source: TorryHarris Business Solutions on slideshare.net
16
Three key pillars of Cloud
Infrastructure as a Service
Infrastructure as a Service
Platform as a Service
Platform as a Service
Software as a Service
Software as a Service
Source: TorryHarris Business Solutions on slideshare.net
17
Public vs Private Cloud
Cloud Choices
Exclusive environment
Limited on-demand capabilities
Private CloudPrivate Cloud
On-demand resources, scalability
Shared environment
Public CloudPublic Cloud
Requires Initial Capital Investment
Cloud setup within Org’s data center
Control on security and audit
Based on basic virtualization
Limited on-demand scaling
On-Premise Private CloudOn-Premise Private Cloud
Exclusive, but hosted by a third party
Limited on-demand scaling
Expensive than public cloud
Cheaper than on-premise private cloud
Possibility of co-location
Externally Hosted Private CloudExternally Hosted Private Cloud
Hybrid CloudHybrid Cloud
Public + Private cloud
Source: TorryHarris Business Solutions on slideshare.net
18
Inside a cloud…
The Cloud Platform
Metering, Billing and Rating System
Metering, Billing and Rating System
Identity Management
Identity Management
Self Service PortalSelf Service Portal
Dynamic Provisioning Engine
Dynamic Provisioning Engine
Monitoring and Management
Monitoring and Management
Network of Physical Servers controlled by the Cloud Operating System
Security Subsystem
Security Subsystem
Cloud Applications
Cloud Applications
Facilitates Pay-per-
use
Enforces Security
Statistics, Deployment,
Start/Stop
Replicates Application on
demand
Registration, Authentication and
Authorization
The heart of the “Cloud”
The face of the Cloud
Virtualized Runtime Environment (Infrastructure & Platform)Virtualized Runtime Environment (Infrastructure & Platform)
Source: TorryHarris Business Solutions on slideshare.net
19
Amazon Web Services offering
Create a virtual server instance
Concept of AMI – Amazon Machine Image
Choose your operating system and/or s/w
SSH and SFTP to your virtual server
Web Service interface for admin tasks
EC2 – Elastic Compute CloudEC2 – Elastic Compute Cloud
S3 – Simple Storage ServiceS3 – Simple Storage Service
File System Storage of Arbitrary Data
Each file can be 5 GB
Secure storage with ACLs
Used by SmugMug Photo Service
Message Queue Infrastructure
Reliable delivery`
SQS – Simple Queue ServiceSQS – Simple Queue Service
Core Database Functions
Fast Indexing, Querying and retrieval
Simple DBSimple DB
Infrastructure for data-intensive tasks
Web indexing, data mining, log file analysis
Elastic Map ReduceElastic Map Reduce
Infrastructure for content delivery
Based on closest geographical location
Elastic Cloud FrontElastic Cloud Front
Source: TorryHarris Business Solutions on slideshare.net
20
Google App Engine
• The Google App Engine Java environment provides – Java 6 JVM, – Java Servlets interface, – Supports standard interfaces for data store and services
like Java Data Objects, Java Persistence API, JavaMail, Jcache, etc.
– The App Engine uses the Java Servlet standard for web applications, whereby the user or developer provides the application's servlet classes, JSP pages and other files along with the deployment descriptor (web.xml) in a standard WAR directory structure.
• The applications are run in a secure 'sandbox' environment to isolate the application for service and security. This means that an application cannot spawn threads, or write data to local system files, thus ensuring that the application does not interfere with performance for other applications on the cloud infrastructure.
21
Java is a natural fit to cloud – as per Oracle Java developers!
• Elasticity: you can fire up new instances on demand
• Management and Monitoring: especially applications in the "cloud" have higher requirements regarding management and monitoring. You should be able to pro-actively monitor the current state of your application
• Vendor neutrality
• Standardized packaging and installation: you will have to package your application to install it to a "cloud". Standards are always good, otherwise you will end up in many negotiations and meetings.
• Failover capabilities
• Easy administration: you will need remote administration tools.
• Low resource consumption: computing time and resources cost a lot. It is important to build as lean applications as possible to save money.
22
Few PAAS offering
• BungeeConnect, proprietery platform• Aptana, more of an IDE than an run time engine. Runs on EC2• Force.com, collaboration of VMWare and Salesforce.com, runs on
salesforce.com IAAS• JBoss Cloud, runs on EC2• Stax, runs on EC2• Google App Engine• 10gen, supports multiple cloud
23
Thank You!